Total number of cores per CPU.
Initialize basic CPU information including basic architecture. It is safe to call this function multiple times. It calls appropriate basic initialization for each module (cpuid_x86_any_init for X86 machines).
Total number of CPU packages. Note: not implemented
Data Caches
Data Translation Lookaside Buffers
Instruction Caches
Instruction Translation Lookaside Buffers
Total number of threads per CPU.
Unified Caches
Unified Translation Lookaside Buffers
Total number of cores per CPU.
Total number of CPU packages. Note: not implemented
Data Caches
Data Translation Lookaside Buffers
Instruction Caches
Instruction Translation Lookaside Buffers
Initialize basic CPU information including basic architecture. It is safe to call this function multiple times. It calls appropriate basic initialization for each module (cpuid_x86_any_init for X86 machines).
Total number of threads per CPU.
Unified Caches
Unified Translation Lookaside Buffers
void smallReport() { import cpuid.unified; import std.stdio: writefln; enum fmt = "%14s: %s"; fmt.writefln("cores", cores); fmt.writefln("threads", threads); fmt.writefln("data caches", dCache.length); fmt.writefln("code caches", iCache.length); fmt.writefln("unified caches", uCache.length); fmt.writefln("data TLBs", dTlb.length); fmt.writefln("code TLBs", iTlb.length); fmt.writefln("unified TLBs", uTlb.length); }
High level abstraction on top of all architectures.
$(GREEN This module is compatible with betterC compilation mode.)