Eigenvalue SoLvers for Petaflop-Applications (ELPA) 2021.11.001
Macros | Enumerations
elpa_constants.h File Reference

Go to the source code of this file.

Macros

#define ELPA_ENUM_ENTRY(name, value, ...)    name = value,
 
#define ELPA_ENUM_SUM(name, value, ...)   +1
 
#define ELPA_FOR_ALL_MATRIX_LAYOUTS(X)
 
#define ELPA_NUMBER_OF_MATRIX_LAYOUTS   (0 ELPA_FOR_ALL_MATRIX_LAYOUTS(ELPA_ENUM_SUM))
 
#define ELPA_FOR_ALL_SOLVERS(X)
 
#define ELPA_NUMBER_OF_SOLVERS   (0 ELPA_FOR_ALL_SOLVERS(ELPA_ENUM_SUM))
 
#define ELPA_FOR_ALL_2STAGE_REAL_KERNELS(X, ...)
 
#define ELPA_FOR_ALL_2STAGE_REAL_KERNELS_AND_DEFAULT(X)
 
#define ELPA_FOR_ALL_2STAGE_COMPLEX_KERNELS(X, ...)
 
#define ELPA_FOR_ALL_2STAGE_COMPLEX_KERNELS_AND_DEFAULT(X)
 
#define ELPA_FOR_ALL_ERRORS(X)
 
#define ELPA_FOR_ALL_AUTOTUNE_LEVELS(X, ...)
 
#define ELPA_NUMBER_OF_AUTOTUNE_LEVELS   (0 ELPA_FOR_ALL_AUTOTUNE_LEVELS(ELPA_ENUM_SUM))
 
#define ELPA_FOR_ALL_AUTOTUNE_DOMAINS(X, ...)
 
#define ELPA_FOR_ALL_AUTOTUNE_PARTS(X, ...)
 

Enumerations

enum  MATRIX_LAYOUTS { COLUMN_MAJOR_ORDER = 1 , ROW_MAJOR_ORDER = 2 }
 
enum  ELPA_SOLVERS { ELPA_SOLVER_1STAGE = 1 , ELPA_SOLVER_2STAGE = 2 }
 
enum  ELPA_REAL_KERNELS {
  ELPA_2STAGE_REAL_GENERIC = 1 , ELPA_2STAGE_REAL_GENERIC_SIMPLE = 2 , ELPA_2STAGE_REAL_BGP = 3 , ELPA_2STAGE_REAL_BGQ = 4 ,
  ELPA_2STAGE_REAL_SSE_ASSEMBLY = 5 , ELPA_2STAGE_REAL_SSE_BLOCK2 = 6 , ELPA_2STAGE_REAL_SSE_BLOCK4 = 7 , ELPA_2STAGE_REAL_SSE_BLOCK6 = 8 ,
  ELPA_2STAGE_REAL_AVX_BLOCK2 = 9 , ELPA_2STAGE_REAL_AVX_BLOCK4 = 10 , ELPA_2STAGE_REAL_AVX_BLOCK6 = 11 , ELPA_2STAGE_REAL_AVX2_BLOCK2 = 12 ,
  ELPA_2STAGE_REAL_AVX2_BLOCK4 = 13 , ELPA_2STAGE_REAL_AVX2_BLOCK6 = 14 , ELPA_2STAGE_REAL_AVX512_BLOCK2 = 15 , ELPA_2STAGE_REAL_AVX512_BLOCK4 = 16 ,
  ELPA_2STAGE_REAL_AVX512_BLOCK6 = 17 , ELPA_2STAGE_REAL_NVIDIA_GPU = 18 , ELPA_2STAGE_REAL_AMD_GPU = 19 , ELPA_2STAGE_REAL_INTEL_GPU = 20 ,
  ELPA_2STAGE_REAL_SPARC64_BLOCK2 = 21 , ELPA_2STAGE_REAL_SPARC64_BLOCK4 = 22 , ELPA_2STAGE_REAL_SPARC64_BLOCK6 = 23 , ELPA_2STAGE_REAL_NEON_ARCH64_BLOCK2 = 24 ,
  ELPA_2STAGE_REAL_NEON_ARCH64_BLOCK4 = 25 , ELPA_2STAGE_REAL_NEON_ARCH64_BLOCK6 = 26 , ELPA_2STAGE_REAL_VSX_BLOCK2 = 27 , ELPA_2STAGE_REAL_VSX_BLOCK4 = 28 ,
  ELPA_2STAGE_REAL_VSX_BLOCK6 = 29 , ELPA_2STAGE_REAL_SVE128_BLOCK2 = 30 , ELPA_2STAGE_REAL_SVE128_BLOCK4 = 31 , ELPA_2STAGE_REAL_SVE128_BLOCK6 = 32 ,
  ELPA_2STAGE_REAL_SVE256_BLOCK2 = 33 , ELPA_2STAGE_REAL_SVE256_BLOCK4 = 34 , ELPA_2STAGE_REAL_SVE256_BLOCK6 = 35 , ELPA_2STAGE_REAL_SVE512_BLOCK2 = 36 ,
  ELPA_2STAGE_REAL_SVE512_BLOCK4 = 37 , ELPA_2STAGE_REAL_SVE512_BLOCK6 = 38 , ELPA_2STAGE_REAL_GENERIC_SIMPLE_BLOCK4 = 39 , ELPA_2STAGE_REAL_GENERIC_SIMPLE_BLOCK6 = 40 ,
  ELPA_2STAGE_REAL_NVIDIA_SM80_GPU = 41 , ELPA_2STAGE_REAL_INVALID = -1 , ELPA_2STAGE_REAL_DEFAULT = 6
}
 
enum  ELPA_COMPLEX_KERNELS {
  ELPA_2STAGE_COMPLEX_GENERIC = 1 , ELPA_2STAGE_COMPLEX_GENERIC_SIMPLE = 2 , ELPA_2STAGE_COMPLEX_BGP = 3 , ELPA_2STAGE_COMPLEX_BGQ = 4 ,
  ELPA_2STAGE_COMPLEX_SSE_ASSEMBLY = 5 , ELPA_2STAGE_COMPLEX_SSE_BLOCK1 = 6 , ELPA_2STAGE_COMPLEX_SSE_BLOCK2 = 7 , ELPA_2STAGE_COMPLEX_AVX_BLOCK1 = 8 ,
  ELPA_2STAGE_COMPLEX_AVX_BLOCK2 = 9 , ELPA_2STAGE_COMPLEX_AVX2_BLOCK1 = 10 , ELPA_2STAGE_COMPLEX_AVX2_BLOCK2 = 11 , ELPA_2STAGE_COMPLEX_AVX512_BLOCK1 = 12 ,
  ELPA_2STAGE_COMPLEX_AVX512_BLOCK2 = 13 , ELPA_2STAGE_COMPLEX_SVE128_BLOCK1 = 14 , ELPA_2STAGE_COMPLEX_SVE128_BLOCK2 = 15 , ELPA_2STAGE_COMPLEX_SVE256_BLOCK1 = 16 ,
  ELPA_2STAGE_COMPLEX_SVE256_BLOCK2 = 17 , ELPA_2STAGE_COMPLEX_SVE512_BLOCK1 = 18 , ELPA_2STAGE_COMPLEX_SVE512_BLOCK2 = 19 , ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK1 = 20 ,
  ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK2 = 21 , ELPA_2STAGE_COMPLEX_NVIDIA_GPU = 22 , ELPA_2STAGE_COMPLEX_AMD_GPU = 23 , ELPA_2STAGE_COMPLEX_INTEL_GPU = 24 ,
  ELPA_2STAGE_COMPLEX_NVIDIA_SM80_GPU = 25 , ELPA_2STAGE_COMPLEX_INVALID = -1 , ELPA_2STAGE_COMPLEX_DEFAULT = 6
}
 
enum  ELPA_ERRORS {
  ELPA_OK = 0 , ELPA_ERROR = -1 , ELPA_ERROR_ENTRY_NOT_FOUND = -2 , ELPA_ERROR_ENTRY_INVALID_VALUE = -3 ,
  ELPA_ERROR_ENTRY_ALREADY_SET = -4 , ELPA_ERROR_ENTRY_NO_STRING_REPRESENTATION = -5 , ELPA_ERROR_SETUP = -6 , ELPA_ERROR_CRITICAL = -7 ,
  ELPA_ERROR_API_VERSION = -8 , ELPA_ERROR_AUTOTUNE_API_VERSION = -9 , ELPA_ERROR_AUTOTUNE_OBJECT_CHANGED = -10 , ELPA_ERROR_ENTRY_READONLY = -11 ,
  ELPA_ERROR_CANNOT_OPEN_FILE = -12
}
 
enum  ELPA_CONSTANTS { ELPA_2STAGE_NUMBER_OF_COMPLEX_KERNELS = (0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ) , ELPA_2STAGE_NUMBER_OF_REAL_KERNELS = (0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ) }
 
enum  ELPA_AUTOTUNE_LEVELS {
  ELPA_AUTOTUNE_NOT_TUNABLE = 0 , ELPA_AUTOTUNE_GPU = 1 , ELPA2_AUTOTUNE_KERNEL = 2 , ELPA_AUTOTUNE_OPENMP = 3 ,
  ELPA_AUTOTUNE_TRANSPOSE_VECTORS = 4 , ELPA2_AUTOTUNE_FULL_TO_BAND = 5 , ELPA2_AUTOTUNE_BAND_TO_TRIDI = 6 , ELPA_AUTOTUNE_SOLVE = 7 ,
  ELPA2_AUTOTUNE_TRIDI_TO_BAND = 8 , ELPA2_AUTOTUNE_BAND_TO_FULL = 9 , ELPA2_AUTOTUNE_MAIN = 10 , ELPA1_AUTOTUNE_FULL_TO_TRIDI = 11 ,
  ELPA1_AUTOTUNE_TRIDI_TO_FULL = 12 , ELPA_AUTOTUNE_MPI = 13 , ELPA_AUTOTUNE_FAST = 14 , ELPA_AUTOTUNE_MEDIUM = 15 ,
  ELPA2_AUTOTUNE_BAND_TO_FULL_BLOCKING = 16 , ELPA1_AUTOTUNE_MAX_STORED_ROWS = 17 , ELPA2_AUTOTUNE_TRIDI_TO_BAND_STRIPEWIDTH = 18 , ELPA_AUTOTUNE_EXTENSIVE = 19
}
 
enum  ELPA_AUTOTUNE_DOMAINS { ELPA_AUTOTUNE_DOMAIN_REAL = 1 , ELPA_AUTOTUNE_DOMAIN_COMPLEX = 2 , ELPA_AUTOTUNE_DOMAIN_ANY = 3 }
 
enum  ELPA_AUTOTUNE_PARTS {
  ELPA_AUTOTUNE_PART_NONE = 0 , ELPA_AUTOTUNE_PART_ANY = 1 , ELPA_AUTOTUNE_PART_GENERALIZED = 2 , ELPA_AUTOTUNE_PART_ELPA1 = 3 ,
  ELPA_AUTOTUNE_PART_ELPA2 = 4
}
 

Macro Definition Documentation

◆ ELPA_ENUM_ENTRY

#define ELPA_ENUM_ENTRY (   name,
  value,
  ... 
)     name = value,

◆ ELPA_ENUM_SUM

#define ELPA_ENUM_SUM (   name,
  value,
  ... 
)    +1

◆ ELPA_FOR_ALL_2STAGE_COMPLEX_KERNELS

#define ELPA_FOR_ALL_2STAGE_COMPLEX_KERNELS (   X,
  ... 
)
Value:
X(ELPA_2STAGE_COMPLEX_GENERIC, 1, 1, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_GENERIC_SIMPLE, 2, 1, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_BGP, 3, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_BGQ, 4, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SSE_ASSEMBLY, 5, 1, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SSE_BLOCK1, 6, 1, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SSE_BLOCK2, 7, 1, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_AVX_BLOCK1, 8, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_AVX_BLOCK2, 9, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_AVX2_BLOCK1, 10, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_AVX2_BLOCK2, 11, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_AVX512_BLOCK1, 12, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_AVX512_BLOCK2, 13, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SVE128_BLOCK1, 14, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SVE128_BLOCK2, 15, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SVE256_BLOCK1, 16, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SVE256_BLOCK2, 17, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SVE512_BLOCK1, 18, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_SVE512_BLOCK2, 19, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK1, 20, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK2, 21, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_NVIDIA_GPU, 22, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_AMD_GPU, 23, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_INTEL_GPU, 24, 0, __VA_ARGS__) \
X(ELPA_2STAGE_COMPLEX_NVIDIA_SM80_GPU, 25, 0, __VA_ARGS__)
@ ELPA_2STAGE_COMPLEX_INTEL_GPU
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SSE_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_NVIDIA_SM80_GPU
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_GENERIC_SIMPLE
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_BGP
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_AVX_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SVE128_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_GENERIC
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_AVX512_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_NVIDIA_GPU
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SVE256_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_AMD_GPU
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SVE256_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_BGQ
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SSE_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_AVX_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SVE512_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SVE512_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_AVX512_BLOCK2
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SVE128_BLOCK1
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_SSE_ASSEMBLY
Definition: elpa_constants.h:118

◆ ELPA_FOR_ALL_2STAGE_COMPLEX_KERNELS_AND_DEFAULT

#define ELPA_FOR_ALL_2STAGE_COMPLEX_KERNELS_AND_DEFAULT (   X)
Value:
X(ELPA_2STAGE_COMPLEX_INVALID, -1, choke me) \
#define ELPA_FOR_ALL_2STAGE_COMPLEX_KERNELS(X,...)
Definition: elpa_constants.h:85
@ ELPA_2STAGE_COMPLEX_INVALID
Definition: elpa_constants.h:118
@ ELPA_2STAGE_COMPLEX_DEFAULT
Definition: elpa_constants.h:118

◆ ELPA_FOR_ALL_2STAGE_REAL_KERNELS

#define ELPA_FOR_ALL_2STAGE_REAL_KERNELS (   X,
  ... 
)

◆ ELPA_FOR_ALL_2STAGE_REAL_KERNELS_AND_DEFAULT

#define ELPA_FOR_ALL_2STAGE_REAL_KERNELS_AND_DEFAULT (   X)
Value:
X(ELPA_2STAGE_REAL_INVALID, -1, choke me) \
X(ELPA_2STAGE_REAL_DEFAULT, 6, choke me)
#define ELPA_FOR_ALL_2STAGE_REAL_KERNELS(X,...)
Definition: elpa_constants.h:33
@ ELPA_2STAGE_REAL_DEFAULT
Definition: elpa_constants.h:82
@ ELPA_2STAGE_REAL_INVALID
Definition: elpa_constants.h:82

◆ ELPA_FOR_ALL_AUTOTUNE_DOMAINS

#define ELPA_FOR_ALL_AUTOTUNE_DOMAINS (   X,
  ... 
)
Value:
@ ELPA_AUTOTUNE_DOMAIN_COMPLEX
Definition: elpa_constants.h:181
@ ELPA_AUTOTUNE_DOMAIN_REAL
Definition: elpa_constants.h:181
@ ELPA_AUTOTUNE_DOMAIN_ANY
Definition: elpa_constants.h:181

◆ ELPA_FOR_ALL_AUTOTUNE_LEVELS

#define ELPA_FOR_ALL_AUTOTUNE_LEVELS (   X,
  ... 
)
Value:
@ ELPA1_AUTOTUNE_TRIDI_TO_FULL
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_MAIN
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_FAST
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_BAND_TO_FULL
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_MEDIUM
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_BAND_TO_TRIDI
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_SOLVE
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_FULL_TO_BAND
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_TRIDI_TO_BAND_STRIPEWIDTH
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_EXTENSIVE
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_BAND_TO_FULL_BLOCKING
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_OPENMP
Definition: elpa_constants.h:171
@ ELPA1_AUTOTUNE_FULL_TO_TRIDI
Definition: elpa_constants.h:171
@ ELPA1_AUTOTUNE_MAX_STORED_ROWS
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_TRIDI_TO_BAND
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_NOT_TUNABLE
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_GPU
Definition: elpa_constants.h:171
@ ELPA2_AUTOTUNE_KERNEL
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_MPI
Definition: elpa_constants.h:171
@ ELPA_AUTOTUNE_TRANSPOSE_VECTORS
Definition: elpa_constants.h:171

◆ ELPA_FOR_ALL_AUTOTUNE_PARTS

#define ELPA_FOR_ALL_AUTOTUNE_PARTS (   X,
  ... 
)
Value:
@ ELPA_AUTOTUNE_PART_NONE
Definition: elpa_constants.h:192
@ ELPA_AUTOTUNE_PART_ELPA1
Definition: elpa_constants.h:192
@ ELPA_AUTOTUNE_PART_ANY
Definition: elpa_constants.h:192
@ ELPA_AUTOTUNE_PART_GENERALIZED
Definition: elpa_constants.h:192
@ ELPA_AUTOTUNE_PART_ELPA2
Definition: elpa_constants.h:192

◆ ELPA_FOR_ALL_ERRORS

#define ELPA_FOR_ALL_ERRORS (   X)
Value:
X(ELPA_OK, 0) \
X(ELPA_ERROR, -1) \
@ ELPA_ERROR_ENTRY_READONLY
Definition: elpa_constants.h:139
@ ELPA_ERROR_SETUP
Definition: elpa_constants.h:139
@ ELPA_ERROR_ENTRY_ALREADY_SET
Definition: elpa_constants.h:139
@ ELPA_ERROR_AUTOTUNE_OBJECT_CHANGED
Definition: elpa_constants.h:139
@ ELPA_ERROR_CANNOT_OPEN_FILE
Definition: elpa_constants.h:139
@ ELPA_ERROR_ENTRY_NOT_FOUND
Definition: elpa_constants.h:139
@ ELPA_ERROR_API_VERSION
Definition: elpa_constants.h:139
@ ELPA_OK
Definition: elpa_constants.h:139
@ ELPA_ERROR
Definition: elpa_constants.h:139
@ ELPA_ERROR_CRITICAL
Definition: elpa_constants.h:139
@ ELPA_ERROR_ENTRY_INVALID_VALUE
Definition: elpa_constants.h:139
@ ELPA_ERROR_ENTRY_NO_STRING_REPRESENTATION
Definition: elpa_constants.h:139
@ ELPA_ERROR_AUTOTUNE_API_VERSION
Definition: elpa_constants.h:139

◆ ELPA_FOR_ALL_MATRIX_LAYOUTS

#define ELPA_FOR_ALL_MATRIX_LAYOUTS (   X)
Value:
@ ROW_MAJOR_ORDER
Definition: elpa_constants.h:18
@ COLUMN_MAJOR_ORDER
Definition: elpa_constants.h:18

◆ ELPA_FOR_ALL_SOLVERS

#define ELPA_FOR_ALL_SOLVERS (   X)
Value:
@ ELPA_SOLVER_1STAGE
Definition: elpa_constants.h:28
@ ELPA_SOLVER_2STAGE
Definition: elpa_constants.h:28

◆ ELPA_NUMBER_OF_AUTOTUNE_LEVELS

#define ELPA_NUMBER_OF_AUTOTUNE_LEVELS   (0 ELPA_FOR_ALL_AUTOTUNE_LEVELS(ELPA_ENUM_SUM))

◆ ELPA_NUMBER_OF_MATRIX_LAYOUTS

#define ELPA_NUMBER_OF_MATRIX_LAYOUTS   (0 ELPA_FOR_ALL_MATRIX_LAYOUTS(ELPA_ENUM_SUM))

◆ ELPA_NUMBER_OF_SOLVERS

#define ELPA_NUMBER_OF_SOLVERS   (0 ELPA_FOR_ALL_SOLVERS(ELPA_ENUM_SUM))

Enumeration Type Documentation

◆ ELPA_AUTOTUNE_DOMAINS

Enumerator
ELPA_AUTOTUNE_DOMAIN_REAL 
ELPA_AUTOTUNE_DOMAIN_COMPLEX 
ELPA_AUTOTUNE_DOMAIN_ANY 

◆ ELPA_AUTOTUNE_LEVELS

Enumerator
ELPA_AUTOTUNE_NOT_TUNABLE 
ELPA_AUTOTUNE_GPU 
ELPA2_AUTOTUNE_KERNEL 
ELPA_AUTOTUNE_OPENMP 
ELPA_AUTOTUNE_TRANSPOSE_VECTORS 
ELPA2_AUTOTUNE_FULL_TO_BAND 
ELPA2_AUTOTUNE_BAND_TO_TRIDI 
ELPA_AUTOTUNE_SOLVE 
ELPA2_AUTOTUNE_TRIDI_TO_BAND 
ELPA2_AUTOTUNE_BAND_TO_FULL 
ELPA2_AUTOTUNE_MAIN 
ELPA1_AUTOTUNE_FULL_TO_TRIDI 
ELPA1_AUTOTUNE_TRIDI_TO_FULL 
ELPA_AUTOTUNE_MPI 
ELPA_AUTOTUNE_FAST 
ELPA_AUTOTUNE_MEDIUM 
ELPA2_AUTOTUNE_BAND_TO_FULL_BLOCKING 
ELPA1_AUTOTUNE_MAX_STORED_ROWS 
ELPA2_AUTOTUNE_TRIDI_TO_BAND_STRIPEWIDTH 
ELPA_AUTOTUNE_EXTENSIVE 

◆ ELPA_AUTOTUNE_PARTS

Enumerator
ELPA_AUTOTUNE_PART_NONE 
ELPA_AUTOTUNE_PART_ANY 
ELPA_AUTOTUNE_PART_GENERALIZED 
ELPA_AUTOTUNE_PART_ELPA1 
ELPA_AUTOTUNE_PART_ELPA2 

◆ ELPA_COMPLEX_KERNELS

Enumerator
ELPA_2STAGE_COMPLEX_GENERIC 
ELPA_2STAGE_COMPLEX_GENERIC_SIMPLE 
ELPA_2STAGE_COMPLEX_BGP 
ELPA_2STAGE_COMPLEX_BGQ 
ELPA_2STAGE_COMPLEX_SSE_ASSEMBLY 
ELPA_2STAGE_COMPLEX_SSE_BLOCK1 
ELPA_2STAGE_COMPLEX_SSE_BLOCK2 
ELPA_2STAGE_COMPLEX_AVX_BLOCK1 
ELPA_2STAGE_COMPLEX_AVX_BLOCK2 
ELPA_2STAGE_COMPLEX_AVX2_BLOCK1 
ELPA_2STAGE_COMPLEX_AVX2_BLOCK2 
ELPA_2STAGE_COMPLEX_AVX512_BLOCK1 
ELPA_2STAGE_COMPLEX_AVX512_BLOCK2 
ELPA_2STAGE_COMPLEX_SVE128_BLOCK1 
ELPA_2STAGE_COMPLEX_SVE128_BLOCK2 
ELPA_2STAGE_COMPLEX_SVE256_BLOCK1 
ELPA_2STAGE_COMPLEX_SVE256_BLOCK2 
ELPA_2STAGE_COMPLEX_SVE512_BLOCK1 
ELPA_2STAGE_COMPLEX_SVE512_BLOCK2 
ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK1 
ELPA_2STAGE_COMPLEX_NEON_ARCH64_BLOCK2 
ELPA_2STAGE_COMPLEX_NVIDIA_GPU 
ELPA_2STAGE_COMPLEX_AMD_GPU 
ELPA_2STAGE_COMPLEX_INTEL_GPU 
ELPA_2STAGE_COMPLEX_NVIDIA_SM80_GPU 
ELPA_2STAGE_COMPLEX_INVALID 
ELPA_2STAGE_COMPLEX_DEFAULT 

◆ ELPA_CONSTANTS

Enumerator
ELPA_2STAGE_NUMBER_OF_COMPLEX_KERNELS 
ELPA_2STAGE_NUMBER_OF_REAL_KERNELS 

◆ ELPA_ERRORS

Enumerator
ELPA_OK 
ELPA_ERROR 
ELPA_ERROR_ENTRY_NOT_FOUND 
ELPA_ERROR_ENTRY_INVALID_VALUE 
ELPA_ERROR_ENTRY_ALREADY_SET 
ELPA_ERROR_ENTRY_NO_STRING_REPRESENTATION 
ELPA_ERROR_SETUP 
ELPA_ERROR_CRITICAL 
ELPA_ERROR_API_VERSION 
ELPA_ERROR_AUTOTUNE_API_VERSION 
ELPA_ERROR_AUTOTUNE_OBJECT_CHANGED 
ELPA_ERROR_ENTRY_READONLY 
ELPA_ERROR_CANNOT_OPEN_FILE 

◆ ELPA_REAL_KERNELS

Enumerator
ELPA_2STAGE_REAL_GENERIC 
ELPA_2STAGE_REAL_GENERIC_SIMPLE 
ELPA_2STAGE_REAL_BGP 
ELPA_2STAGE_REAL_BGQ 
ELPA_2STAGE_REAL_SSE_ASSEMBLY 
ELPA_2STAGE_REAL_SSE_BLOCK2 
ELPA_2STAGE_REAL_SSE_BLOCK4 
ELPA_2STAGE_REAL_SSE_BLOCK6 
ELPA_2STAGE_REAL_AVX_BLOCK2 
ELPA_2STAGE_REAL_AVX_BLOCK4 
ELPA_2STAGE_REAL_AVX_BLOCK6 
ELPA_2STAGE_REAL_AVX2_BLOCK2 
ELPA_2STAGE_REAL_AVX2_BLOCK4 
ELPA_2STAGE_REAL_AVX2_BLOCK6 
ELPA_2STAGE_REAL_AVX512_BLOCK2 
ELPA_2STAGE_REAL_AVX512_BLOCK4 
ELPA_2STAGE_REAL_AVX512_BLOCK6 
ELPA_2STAGE_REAL_NVIDIA_GPU 
ELPA_2STAGE_REAL_AMD_GPU 
ELPA_2STAGE_REAL_INTEL_GPU 
ELPA_2STAGE_REAL_SPARC64_BLOCK2 
ELPA_2STAGE_REAL_SPARC64_BLOCK4 
ELPA_2STAGE_REAL_SPARC64_BLOCK6 
ELPA_2STAGE_REAL_NEON_ARCH64_BLOCK2 
ELPA_2STAGE_REAL_NEON_ARCH64_BLOCK4 
ELPA_2STAGE_REAL_NEON_ARCH64_BLOCK6 
ELPA_2STAGE_REAL_VSX_BLOCK2 
ELPA_2STAGE_REAL_VSX_BLOCK4 
ELPA_2STAGE_REAL_VSX_BLOCK6 
ELPA_2STAGE_REAL_SVE128_BLOCK2 
ELPA_2STAGE_REAL_SVE128_BLOCK4 
ELPA_2STAGE_REAL_SVE128_BLOCK6 
ELPA_2STAGE_REAL_SVE256_BLOCK2 
ELPA_2STAGE_REAL_SVE256_BLOCK4 
ELPA_2STAGE_REAL_SVE256_BLOCK6 
ELPA_2STAGE_REAL_SVE512_BLOCK2 
ELPA_2STAGE_REAL_SVE512_BLOCK4 
ELPA_2STAGE_REAL_SVE512_BLOCK6 
ELPA_2STAGE_REAL_GENERIC_SIMPLE_BLOCK4 
ELPA_2STAGE_REAL_GENERIC_SIMPLE_BLOCK6 
ELPA_2STAGE_REAL_NVIDIA_SM80_GPU 
ELPA_2STAGE_REAL_INVALID 
ELPA_2STAGE_REAL_DEFAULT 

◆ ELPA_SOLVERS

Enumerator
ELPA_SOLVER_1STAGE 
ELPA_SOLVER_2STAGE 

◆ MATRIX_LAYOUTS

Enumerator
COLUMN_MAJOR_ORDER 
ROW_MAJOR_ORDER