D Programming Language 2.0

Last update Wed Apr 11 21:24:26 2012


Scheduled for deprecation. Please use core.cpuid instead.

Identify the characteristics of the host CPU.

Implemented according to:

- AP-485 Intel(C) Processor Identification and the CPUID Instruction http://www.intel.com/design/xeon/applnots/241618.htm

- Intel(R) 64 and IA-32 Architectures Software Developer's Manual, Volume 2A: Instruction Set Reference, A-M http://developer.intel.com/design/pentium4/manuals/index_new.htm

- AMD CPUID Specification Publication # 25481 http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/25481.pdf

import std.cpuid;
import std.stdio;

void main()

Only works on x86 CPUs

Boost License 1.0.

Tomas Lindquist Olsen <tomas@famolsen.dk>


string toString();
Returns everything as a printable string

alias vendor;
Returns vendor string

alias processor;
Returns processor string

alias mmx;
Is MMX supported?

alias fxsr;
Is FXSR supported?

alias sse;
Is SSE supported?

alias sse2;
Is SSE2 supported?

alias sse3;
Is SSE3 supported?

alias ssse3;
Is SSSE3 supported?

alias amd3dnow;
Is AMD 3DNOW supported?

alias amd3dnowExt;
Is AMD 3DNOW Ext supported?

alias amdMmx;
Is AMD MMX supported?

alias ia64;
Is this an Intel Architecture IA64?

alias amd64;
Is this an AMD 64?

alias hyperThreading;
Is hyperthreading supported?

alias threadsPerCPU;
Returns number of threads per CPU

alias coresPerCPU;
Returns number of cores in CPU

@property bool intel();
Is this an Intel processor?

@property bool amd();
Is this an AMD processor?

@property uint stepping();
Returns stepping

@property uint model();
Returns model

@property uint family();
Returns family