16 #ifndef IMPALA_UTIL_CPU_INFO_H
17 #define IMPALA_UTIL_CPU_INFO_H
20 #include <boost/cstdint.hpp>
32 static const int64_t
SSSE3 = (1 << 1);
33 static const int64_t
SSE4_1 = (1 << 2);
34 static const int64_t
SSE4_2 = (1 << 3);
35 static const int64_t
POPCNT = (1 << 4);
static void EnableFeature(long flag, bool enable)
static const int64_t SSSE3
static long cache_sizes_[L3_CACHE+1]
static int64_t hardware_flags()
Returns all the flags for this cpu.
CacheLevel
Cache enums for L1 (data), L2 and L3.
static void VerifyCpuRequirements()
static int64_t original_hardware_flags_
static long CacheSize(CacheLevel level)
Returns the size of the cache in KB at this cache level.
static int64_t hardware_flags_
static const int64_t POPCNT
static int64_t cycles_per_ms_
static std::string model_name()
Returns the model name of the cpu (e.g. Intel i7-2600)
static const int64_t SSE4_2
static std::string DebugString()
static int64_t cycles_per_ms()
Returns the number of cpu cycles per millisecond.
static const int64_t SSE4_1
static std::string model_name_
static void Init()
Initialize CpuInfo.
static int num_cores()
Returns the number of cores (including hyper-threaded) on this machine.
static bool IsSupported(long flag)
Returns whether of not the cpu supports this flag.