cpuid 0.0.3

Rust bindings for libpcuid CPU detection and feature extraction library.
docs.rs failed to build cpuid-0.0.3
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: cpuid-0.1.1

rust-cpuid

Build Status

Rust bindings for libpcuid CPU detection and feature extraction library.

Usage

First - download, and build libcpuid as described in the readme. Install it by running make install (you may want to run ldconfig afterwards).

Add to your Cargo.toml:

[dependencies]
cpuid = "*"

Add extern crate cpuid to your crate root and you're good to go! For example:

extern crate cpuid;

fn main () {
    match cpuid::identify() {
        Ok(info) => {
            println!("Found: {} CPU, model: {}", info.vendor, info.codename);
            println!("The full brand string is: {}", info.brand);
            println!("Hardware AES support: {}", if info.has_feature(cpuid::CpuFeature::AES) { "yes" } else { "no" });
        },
        Err(err) => println!("cpuid error: {}", err),
    };
    match cpuid::clock_frequency() {
        Some(frequency) => println!("CPU speed: {} MHz", frequency),
        None => println!("Couldn't get CPU speed."),
    };
}

Resources

Author

  • Zbigniew Siciarz (zbigniew at siciarz dot net)

License

This work is released under the MIT license. A copy of the license is provided in the LICENSE file.