| Crates.io | lscpu |
| lib.rs | lscpu |
| version | 1.0.9 |
| created_at | 2025-03-09 14:55:17.262814+00 |
| updated_at | 2025-08-17 20:25:13.971131+00 |
| description | Implementation of lscpu in rust |
| homepage | |
| repository | https://github.com/mateolafalce/lscpu |
| max_upload_size | |
| id | 1585558 |
| size | 59,554 |
A Rust implementation of the lscpu command-line utility for displaying CPU architecture information.
no_std compatibleInstall the command-line tool directly from crates.io:
cargo install lscpu
After installation, you can run:
lscpu
Add this to your Cargo.toml:
cargo add lscpu
Simply run the installed binary to get CPU information:
$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 48 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Vendor ID: AuthenticAMD
Model name: AMD A4-4000 APU with Radeon(tm) HD Graphics
CPU family: 21
Model: 19
Is hybrid: no
Thread(s) per core: 2
Core(s) per socket: 1
Socket(s): 1
Stepping: 1
Frequency boost: enabled
use lscpu::Cpu;
fn main() {
let cpu = Cpu::new();
println!("Architecture: {}", cpu.architecture);
println!("Model name: {}", cpu.model_name);
println!("CPU count: {}", cpu.cpu_count);
println!("Vendor ID: {}", cpu.vendor_id);
}
git clone https://github.com/mateolafalce/lscpu.git
cd lscpu
cargo build --release
Run the standard example:
cargo run --example std
This demonstrates basic usage and can also be run in a no-std environment.
The main Cpu struct provides comprehensive CPU information:
pub struct Cpu {
pub architecture: &'static str,
pub cpu_op_modes: &'static str,
pub address_sizes: String,
pub byte_order: &'static str,
pub cpu_count: u32,
pub on_line_cpu: u32,
pub vendor_id: String,
pub model_name: String,
pub cpu_family: u32,
pub cpu_model: u32,
pub is_hybrid: &'static str,
pub threads_per_core: u32,
pub cores_per_socket: u32,
pub sockets: u32,
pub stepping: u32,
pub boost_enabled: &'static str,
}
Currently supports:
This project is licensed under the GPL-3.0 License - see the LICENSE file for details.
lscpu utility from util-linux