флаги: FPU VME-де-псевдоэфедрин TSC MSR пае MCE CX8 APIC SEP MTRR PGE MCA CMOV погладить pse36 clflush MMX fxsr ссе sse2 ХТ системный вызов пх pdpe1gb rdtscp лм constant_tsc rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu ПНИ PCLMULQDQ SSSE3 FMA CX16 PCID sse4_1 sse4_2 x2APIC movbe POPCNT tsc_deadline_timer АЕС xsave avx f16c гипервизор rdrand lahf_lm abm 3dnowprefetch invpcid_single retpoline kaiser fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx xsaveopt
вителен ли следующий код для проверки, поддерживает ли ЦП набор команд SSE3?
С помощьюIsProcessorFeaturePresent()
функция видимо не работает на Windows XP (см.http://msdn.microsoft.com/en-us/library/ms724482(v=vs.85).aspx).
bool CheckSSE3()
{
int CPUInfo[4] = {-1};
//-- Get number of valid info ids
__cpuid(CPUInfo, 0);
int nIds = CPUInfo[0];
//-- Get info for id "1"
if (nIds >= 1)
{
__cpuid(CPUInfo, 1);
bool bSSE3NewInstructions = (CPUInfo[2] & 0x1) || false;
return bSSE3NewInstructions;
}
return false;
}