LIKWID
topology_types.h
1 /*
2  * =======================================================================================
3  *
4  * Filename: topology_types.h
5  *
6  * Description: Types file for topology module. External definitions are
7  * in likwid.h
8  *
9  * Version: <VERSION>
10  * Released: <DATE>
11  *
12  * Author: Jan Treibig (jt), jan.treibig@gmail.com,
13  * Thomas Roehl (tr), thomas.roehl@googlemail.com
14  * Project: likwid
15  *
16  * Copyright (C) 2016 RRZE, University Erlangen-Nuremberg
17  *
18  * This program is free software: you can redistribute it and/or modify it under
19  * the terms of the GNU General Public License as published by the Free Software
20  * Foundation, either version 3 of the License, or (at your option) any later
21  * version.
22  *
23  * This program is distributed in the hope that it will be useful, but WITHOUT ANY
24  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
25  * PARTICULAR PURPOSE. See the GNU General Public License for more details.
26  *
27  * You should have received a copy of the GNU General Public License along with
28  * this program. If not, see <http://www.gnu.org/licenses/>.
29  *
30  * =======================================================================================
31  */
32 #ifndef CPUID_TYPES_H
33 #define CPUID_TYPES_H
34 
46 typedef enum {
47  SSE3=0,
48  MMX,
49  SSE,
50  SSE2,
52  ACPI,
54  VMX,
55  EIST,
56  TM,
57  TM2,
58  AES,
63  AVX,
64  FMA,
65  AVX2,
66  RTM,
67  HLE,
68  HTT,
71  SWP,
72  VFP,
73  NEON,
74  EDSP,
77  TLS,
78 } FeatureBit;
80 #endif /*CPUID_TYPES_H*/
AES instruction set.
Definition: topology_types.h:58
Hardware Lock Elision.
Definition: topology_types.h:67
MONITOR and MWAIT instructions (part of SSE3)
Definition: topology_types.h:51
First generation SIMD Version 4.
Definition: topology_types.h:76
Advanced Vector Extensions.
Definition: topology_types.h:63
Non-deterministic random bit generator.
Definition: topology_types.h:69
Multi Media Extension.
Definition: topology_types.h:48
Supplemental Streaming SIMD Extensions 3.
Definition: topology_types.h:60
Thermal Monitor 2.
Definition: topology_types.h:57
Thermal Monitor.
Definition: topology_types.h:56
Streaming SIMD Extensions 4.2.
Definition: topology_types.h:62
Advanced Vector Extensions 2.
Definition: topology_types.h:65
Streaming SIMD Extensions.
Definition: topology_types.h:49
First generation SIMD Version 3.
Definition: topology_types.h:75
512-bit wide vector registers for Advanced Vector Extensions
Definition: topology_types.h:70
Random numbers from an on-chip hardware random number generator.
Definition: topology_types.h:59
DSP extensions.
Definition: topology_types.h:74
First generation SIMD.
Definition: topology_types.h:72
Streaming SIMD Extensions 2.
Definition: topology_types.h:50
Enhanced Intel SpeedStep.
Definition: topology_types.h:55
FeatureBit
Enum of possible CPU features.
Definition: topology_types.h:46
Atomic read-modify-write.
Definition: topology_types.h:71
Second generation SIMD.
Definition: topology_types.h:73
Streaming SIMD Extensions 3.
Definition: topology_types.h:47
Advanced Configuration and Power Interface.
Definition: topology_types.h:52
Hyper-Threading Technology.
Definition: topology_types.h:68
Virtual Machine eXtensions (VT-x)
Definition: topology_types.h:54
Streaming SIMD Extensions 4.1.
Definition: topology_types.h:61
Fused multiply-add (FMA3)
Definition: topology_types.h:64
Restricted Transactional Memory.
Definition: topology_types.h:66
Thread-local storage registers.
Definition: topology_types.h:77
Serializing Read of the Time Stamp Counter.
Definition: topology_types.h:53