1pub const KML_DEFAULT_ALLOCATE_ALIGN: u32 = 128;
10pub const L1_CACHELINE_SIZE: u32 = 64;
11pub const L2_CACHELINE_SIZE: u32 = 64;
12pub const L3_CACHELINE_SIZE: u32 = 128;
13pub const KML_VERSION_PART_LEN: u32 = 100;
14#[repr(C)]
15#[derive(Debug, Copy, Clone)]
16pub struct KMLVersion {
17 pub componentName: [::core::ffi::c_char; 100usize],
18 pub componentVersion: [::core::ffi::c_char; 100usize],
19 pub softwareName: [::core::ffi::c_char; 100usize],
20 pub softwareVersion: [::core::ffi::c_char; 100usize],
21 pub productName: [::core::ffi::c_char; 100usize],
22 pub productVersion: [::core::ffi::c_char; 100usize],
23 pub componentAppendInfo: [::core::ffi::c_char; 100usize],
24}
25pub type KSERVICEVersion = KMLVersion;
26#[repr(u32)]
27#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
28pub enum KmlSetting {
29 KML_VERBOSE = 0,
30 KML_NUM_THREADS = 1,
31 KML_THREAD_USING_POLICY = 2,
32 KML_CFMA_ACCELERATION = 3,
33 KML_CFMA_DRIVER_LOADED = 4,
34 KML_SKIP_ZEROS = 5,
35 KML_GEMM_TO_GEMM3M = 6,
36 KML_BITWISE_COMPATIBILITY = 7,
37 KML_FAST_IGNORE_DENORMS = 8,
38 KML_ALLOCATE_POLICY = 9,
39 KML_ALLOCATE_HUGEPAGE_SIZE = 10,
40 KML_PXGETRF_FORCE_CALU = 11,
41 KML_FAST_EIGENSOLVER = 12,
42 KML_TSQR_CHECK = 13,
43 KML_MPI_USE_SHARED_MEMORY = 14,
44 SETTINGS_FLAG_COUNT = 15,
45}
46#[repr(u32)]
47#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
48pub enum SettingsStates {
49 SETTINGS_ENTRY_NOT_INITED = 0,
50 SETTINGS_ENTRY_INITED = 1,
51}
52#[repr(C)]
53#[derive(Copy, Clone)]
54pub union KmlSettingValue {
55 pub sizetValue: usize,
56 pub intValue: ::core::ffi::c_int,
57}
58#[repr(C)]
59#[derive(Copy, Clone)]
60pub struct KmlSettingEntry {
61 pub value: KmlSettingValue,
62 pub entryState: SettingsStates,
63}
64#[repr(u32)]
65#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
66pub enum KmlCfmaAccelerationOption {
67 KML_CFMA_DISABLED = 0,
68 KML_CFMA_ENABLED = 1,
69 KML_CFMA_FORCE_ENABLED = 2,
70}
71#[repr(u32)]
72#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
73pub enum KmlPxgetrfPivotingOption {
74 KML_PXGETRF_FULLPIVOTING = 0,
75 KML_PXGETRF_LOCALPIVOTING = 1,
76 KML_PXGETRF_BLOCKPIVOTING = 2,
77}
78#[repr(u32)]
79#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
80pub enum KmlEigensolverOption {
81 KML_EIGENSOLVER_EXACT = 0,
82 KML_EIGENSOLVER_FAST = 1,
83}
84#[repr(u32)]
85#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
86pub enum KmlTsqrCheckOption {
87 KML_TSQR_CHECK_DEFAULT = 0,
88 KML_TSQR_CHECK_WEAK = 1,
89 KML_TSQR_CHECK_OFF = 2,
90}
91#[repr(u32)]
92#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
93pub enum KmlThreadUsingPolicyOption {
94 KML_USE_ALL_THREADS = 0,
95 KML_THRESHOLD_ENABLED = 1,
96 KML_CROSSPOINTS_ENABLED = 2,
97}
98#[repr(u32)]
99#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
100pub enum KmlSkipZerosOption {
101 KML_BLAS_NO_ZERO_SKIP = 0,
102 KML_BLAS_NO_INTRUSIVE_ZERO_SKIP = 1,
103 KML_BLAS_ENFORCED_ZERO_SKIP = 2,
104}
105#[repr(u32)]
106#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
107pub enum KmlGemmToGemM3MOption {
108 KML_GEMM_TO_GEMM_3M_NEVER = 0,
109 KML_GEMM_TO_GEMM_3M_OPTIMIZED = 1,
110 KML_GEMM_TO_GEMM_3M_ALWAYS = 2,
111}
112#[repr(u32)]
113#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
114pub enum KmlMpiUseSharedMemoryOption {
115 KML_MPI_SHARED_MEMORY_DISABLED = 0,
116 KML_MPI_SHARED_MEMORY_ENABLED = 1,
117 KML_MPI_SHARED_MEMORY_FORCE_ENABLED = 2,
118}
119#[repr(u32)]
120#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
121pub enum KmlAllocatePolicy {
122 KML_HUGEPAGES_NEVER = 0,
123 KML_HUGEPAGES_ALWAYS = 1,
124 KML_HUGEPAGES_AS_HEAP = 2,
125 KML_COVERAGE_ALLOCATOR = 4,
126}
127#[repr(i32)]
128#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
129pub enum KmlErrorT {
130 KML_INTERNAL_ERROR = -413,
131 KML_WORK_MEM_ERROR = -1313,
132 KML_NULL_PTR_ERROR = 100000,
133}