constexpr int CPU_SCALAR = 0;
constexpr int CPU_SSE42 = 1;
constexpr int CPU_AVX2 = 2;
static pthread_once_t g_onceInstance = PTHREAD_ONCE_INIT;
static int g_cpuFlag;
static void SetCpuFlag_GCC()
{
g_cpuFlag = CPU_SCALAR;
__builtin_cpu_init();
if(__builtin_cpu_supports("avx2"))
g_cpuFlag = CPU_AVX2;
else if(__builtin_cpu_supports("sse4.2"))
g_cpuFlag = CPU_SSE42;
}
FORCE_INLINE static int GetCpuFlag()
{
pthread_once(&g_onceInstance, SetCpuFlag_GCC);
return g_cpuFlag;
}
존나 마음이 상쾌해지는것 같아 ㅋㅋ
댓글 0