#x86-64 #sse #avx #微架构

app x86featurelevels

x86featurelevels 确定您的 CPU 支持的 x86 微架构级别

1 个稳定版本

1.0.1 2024 年 4 月 29 日

#832命令行工具

MIT 许可证

7KB
66

x86 特性级别

此工具确定您的 CPU 支持的 x86 微架构级别。必须使用 x86-64 CPU。

用法

在 Linux 终端或 Windows 的命令提示符或 PowerShell 中运行可执行文件。如果您下载了 Linux 二进制文件,可能需要运行 ./chmod +x {文件名}

以下是示例输出

Testing x86-64 features
fxsr: ✅
sse: ✅
sse2: ✅

Testing x86-64-v2 features (Nehalem/Bulldozer/Silvermont/Jaguar)
cmpxchg16b = ✅
popcnt: ✅
sse3: ✅
ssse3: ✅
sse4.1: ✅
sse4.2: ✅

Testing x86-64-v3 features (Haswell level)
avx: ✅
avx2: ✅
bmi1: ✅
bmi2: ✅
f16c: ✅
fma: ✅
lzcnt: ✅
movbe: ✅
xsave: ✅

Testing x86-64-v4 features (AVX512 CPUs)
avx512bw: ❌
avx512cd: ❌
avx512dq: ❌
avx512f: ❌
avx512vl:

构建指南

您需要安装 Rust 工具链。例如,在 Linux 上,以下命令将安装 Rust 工具链

curl https://sh.rustup.rs -sSf | sh

然后,可以使用以下命令构建

git clone https://github.com/CKingX/x86-feature-test
cd ./x86-feature-test
cargo build --release

生成的二进制文件存储在 ./target/release/x86featuretest

可以使用以下命令安装

cargo install --path {path}

自 Rust 1.78(需要 Windows 10)以来,默认启用了包括 SSE3 在内的附加功能。这意味着工具将报告 SSE3 兼容性而无需测试。由于所有兼容 Windows 10 的 CPU 都支持此功能,因此这不应成问题。在 macOS 上情况类似(尽管是在 Rust 的早期版本中引入的)。但是,如果您想为 Windows 修改此设置,可以使用 Cargo 的 config.toml(如果您已有 rustflags,则可以附加到它)

rustflags = ["-C", "target-features=\"-sse3\""]

对于 Hackintosh 上的 macOS,config.toml 可以是

rustflags = ["-C", "target-cpu=x86-64"]

此外,GitHub 发布页面上的现有 Windows 二进制文件对这些指令进行了运行时检查,因此您可以放心使用。

许可证

此工具采用 MIT Expat 许可。

无运行时依赖