Procedure | Location | Procedure Type | Description |
---|---|---|---|
libxsmm_aligned | LIBXSMM | Function | Check if location is SIMD-aligned and optionally consider the next access as if reached by incrementing the location (in Bytes). Optionally calculates the alignment of the given location in Bytes. |
libxsmm_available | LIBXSMM | Interface | Check if a function is available (LIBXSMM_?MMFUNCTION). |
libxsmm_blas_dgemm | LIBXSMM | Interface | Overloaded BLAS GEMM routines (double-precision). |
libxsmm_blas_dgemm0 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(d)gemm. This overload belongs to libxsmm_blas_(d)gemm. |
libxsmm_blas_dgemm1 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(d)gemm. This overload belongs to libxsmm_blas_(d)gemm. |
libxsmm_blas_dgemm2 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(d)gemm. This overload belongs to libxsmm_blas_(d)gemm. |
libxsmm_blas_dgemm3 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(d)gemm. This overload belongs to libxsmm_blas_(d)gemm. |
libxsmm_blas_gemm | LIBXSMM | Interface | Overloaded BLAS GEMM routines (single/double-precision). |
libxsmm_blas_sgemm | LIBXSMM | Interface | Overloaded BLAS GEMM routines (single-precision). |
libxsmm_blas_sgemm0 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(s)gemm. This overload belongs to libxsmm_blas_(s)gemm. |
libxsmm_blas_sgemm1 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(s)gemm. This overload belongs to libxsmm_blas_(s)gemm. |
libxsmm_blas_sgemm2 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(s)gemm. This overload belongs to libxsmm_blas_(s)gemm. |
libxsmm_blas_sgemm3 | LIBXSMM | Subroutine | Re-exposes BLAS based GEMM routine with an interfaces similar to libxsmm_(s)gemm. This overload belongs to libxsmm_blas_(s)gemm. |
libxsmm_coprime2 | LIBXSMM | Function | Calculate co-prime number <= n/2 (except: libxsmm_coprime2(0|1) == 0). Implicit FORTRAN 77 interface: INTEGER(8) :: coprime (OUT), n (IN) |
libxsmm_dgemm | LIBXSMM | Interface | Overloaded GEMM routines (double-precision). |
libxsmm_dgemm0 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (double-precision). This overload belongs to libxsmm_(d)gemm. |
libxsmm_dgemm1 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (double-precision). This overload belongs to libxsmm_(d)gemm. |
libxsmm_dgemm2 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (double-precision). This overload belongs to libxsmm_(d)gemm. |
libxsmm_dgemm3 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (double-precision). This overload belongs to libxsmm_(d)gemm. |
libxsmm_diff | LIBXSMM | Interface | Calculate whether there is a difference between two series of items. Conceptually pure, but C_LOC may be (incorrectly) impure. |
libxsmm_diff_char | LIBXSMM | Function | Calculates if there is a difference between two arrays. FORTRAN 77: see libxsmm_xdiff |
libxsmm_diff_i32 | LIBXSMM | Function | Calculates if there is a difference between two arrays. FORTRAN 77: see libxsmm_xdiff |
libxsmm_diff_i64 | LIBXSMM | Function | Calculates if there is a difference between two arrays. FORTRAN 77: see libxsmm_xdiff |
libxsmm_diff_i8 | LIBXSMM | Function | Calculates if there is a difference between two arrays. FORTRAN 77: see libxsmm_xdiff |
libxsmm_dispatch | LIBXSMM | Interface | Construct JIT-code depending on given argument set. |
libxsmm_dmmavailable | LIBXSMM | Function | Checks if the given kernel was generated. JIT code is guaranteed to be generated if JIT support was enabled at build-time of the library (default). This overload belongs to libxsmm_(mm)available. |
libxsmm_dmmcall | LIBXSMM | Subroutine | See also libxsmm_dmmcall_abc and libxsmm_dmmcall_prf. |
libxsmm_dmmcall_abc | LIBXSMM | Subroutine | Calls the kernel with the given arguments. Alternatively, PROCPOINTER can be used as shown by the inner comments of this routine (LIBXSMM_FUNCTION3). The libxsmm_xmmcall routines can be used in FORTRAN77. |
libxsmm_dmmcall_prf | LIBXSMM | Subroutine | Calls the kernel with the given arguments. Alternatively, PROCPOINTER can be used as shown by the inner comments of this routine (LIBXSMM_FUNCTION6). The libxsmm_xmmcall routines can be used in FORTRAN77. |
libxsmm_dmmdispatch | LIBXSMM | Subroutine | Query or JIT-generate an SMM-kernel (double-precision). |
libxsmm_finalize | LIBXSMM | Interface | |
libxsmm_gemm | LIBXSMM | Interface | Overloaded GEMM routines. |
libxsmm_gemm_batch | LIBXSMM | Subroutine | Process a series of SMMs (batch). See also libxsmm_xgemm_batch_task. Implicit FORTRAN 77 interface: INTEGER(4) :: iprec, oprec, batchcheck CHAR :: transa, transb INTEGER(4|8) :: m, n, k, lda, ldb, ldc REAL(4|8) :: alpha, beta ARRAY :: a, b, c ARRAY/VALUE :: stride_a, stride_b, stride_c INTEGER(4|8) :: index_stride, index_base, batchsize |
libxsmm_gemm_batch_omp | LIBXSMM | Subroutine | Process a series of SMMs (batch) with OpenMP (libxsmmext). Implicit FORTRAN 77 interface: INTEGER(4) :: iprec, oprec, batchcheck CHAR :: transa, transb INTEGER(4|8) :: m, n, k, lda, ldb, ldc REAL(4|8) :: alpha, beta ARRAY :: a, b, c ARRAY/VALUE :: stride_a, stride_b, stride_c INTEGER(4|8) :: index_stride, index_base, batchsize |
libxsmm_get_target_arch | LIBXSMM | Function | Returns the name of the target architecture as determined by the CPUID flags, as set by the libxsmm_get_target_arch* functions, or as set by the LIBXSMM_TARGET environment variable. |
libxsmm_get_target_archid | LIBXSMM | Interface | |
libxsmm_get_verbosity | LIBXSMM | Interface | |
libxsmm_hash | LIBXSMM | Interface | Calculate a hash value for a given key value (binary blob). Conceptually pure, but C_LOC may be (incorrectly) impure. |
libxsmm_hash_char | LIBXSMM | Function | Calculates a hash value for the given array and seed. FORTRAN 77: see libxsmm_xhash |
libxsmm_hash_i32 | LIBXSMM | Function | Calculates a hash value for the given array and seed. FORTRAN 77: see libxsmm_xhash |
libxsmm_hash_i64 | LIBXSMM | Function | Calculates a hash value for the given array and seed. FORTRAN 77: see libxsmm_xhash |
libxsmm_hash_i8 | LIBXSMM | Function | Calculates a hash value for the given array and seed. FORTRAN 77: see libxsmm_xhash |
libxsmm_init | LIBXSMM | Interface | |
libxsmm_itrans | LIBXSMM | Interface | Overloaded TRANSPOSE routines (in-place form). |
libxsmm_itrans_d1 | LIBXSMM | Subroutine | Transpose a matrix (in-place form, DP/rank-1). |
libxsmm_itrans_d2 | LIBXSMM | Subroutine | Transpose a matrix (in-place form, DP/rank-2). |
libxsmm_itrans_p0 | LIBXSMM | Subroutine | Transpose a matrix (in-place form). |
libxsmm_itrans_s1 | LIBXSMM | Subroutine | Transpose a matrix (in-place form, SP/rank-1). |
libxsmm_itrans_s2 | LIBXSMM | Subroutine | Transpose a matrix (in-place form, SP/rank-2). |
libxsmm_matcopy | LIBXSMM | Interface | Overloaded MATCOPY routines (2d-copy). |
libxsmm_matcopy_d1 | LIBXSMM | Subroutine | Matrix-copy (2-dimensional copy) routine (DP/rank-1). |
libxsmm_matcopy_d2 | LIBXSMM | Subroutine | Matrix-copy (2-dimensional copy) routine (DP/rank-2). |
libxsmm_matcopy_omp | LIBXSMM | Interface | |
libxsmm_matcopy_p0 | LIBXSMM | Subroutine | Matrix-copy (2-dimensional copy) routine. If the input (optional) is not present, the routine is used to zero-fill the out-matrix. |
libxsmm_matcopy_s1 | LIBXSMM | Subroutine | Matrix-copy (2-dimensional copy) routine (SP/rank-1). |
libxsmm_matcopy_s2 | LIBXSMM | Subroutine | Matrix-copy (2-dimensional copy) routine (SP/rank-2). |
libxsmm_matdiff | LIBXSMM | Subroutine | Utility function to calculate a collection of scalar differences between two matrices (libxsmm_matdiff_info). The location (m, n) of the largest difference (linf_abs) is recorded (also if NaN). In case of NaN, differences are set to infinity. If no difference is discovered, the location (m, n) is negative (OOB). Implicit FORTRAN 77 interface: TYPE :: info INTEGER(4) :: datatype INTEGER(4|8) :: m, n, ldref, ldtst ARRAY :: ref, tst |
libxsmm_matdiff_clear | LIBXSMM | Interface | |
libxsmm_matdiff_reduce | LIBXSMM | Interface | |
libxsmm_mmavailable | LIBXSMM | Interface | Check if a function is available (LIBXSMM_?MMFUNCTION). |
libxsmm_mmdispatch | LIBXSMM | Interface | Construct JIT-code depending on given argument set. |
libxsmm_otrans | LIBXSMM | Interface | Overloaded TRANSPOSE routines (out-of-place form). |
libxsmm_otrans_d1 | LIBXSMM | Subroutine | Transpose a matrix (out-of-place form, DP/rank-1). |
libxsmm_otrans_d2 | LIBXSMM | Subroutine | Transpose a matrix (out-of-place form, DP/rank-2). |
libxsmm_otrans_omp | LIBXSMM | Interface | |
libxsmm_otrans_p0 | LIBXSMM | Subroutine | Transpose a matrix (out-of-place form). |
libxsmm_otrans_s1 | LIBXSMM | Subroutine | Transpose a matrix (out-of-place form, SP/rank-1). |
libxsmm_otrans_s2 | LIBXSMM | Subroutine | Transpose a matrix (out-of-place form, SP/rank-2). |
libxsmm_ptr | LIBXSMM | Interface | |
libxsmm_ptr0 | LIBXSMM | Interface | |
libxsmm_ptr1 | LIBXSMM | Interface | |
libxsmm_ptr2 | LIBXSMM | Interface | |
libxsmm_ptr_b0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_b1 | LIBXSMM | Function | |
libxsmm_ptr_b2 | LIBXSMM | Function | |
libxsmm_ptr_c0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_c1 | LIBXSMM | Function | |
libxsmm_ptr_c2 | LIBXSMM | Function | |
libxsmm_ptr_d0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_d1 | LIBXSMM | Function | |
libxsmm_ptr_d2 | LIBXSMM | Function | |
libxsmm_ptr_dmm | LIBXSMM | Function | |
libxsmm_ptr_i0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_i1 | LIBXSMM | Function | |
libxsmm_ptr_i2 | LIBXSMM | Function | |
libxsmm_ptr_j0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_j1 | LIBXSMM | Function | |
libxsmm_ptr_j2 | LIBXSMM | Function | |
libxsmm_ptr_l0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_l1 | LIBXSMM | Function | |
libxsmm_ptr_l2 | LIBXSMM | Function | |
libxsmm_ptr_null | LIBXSMM | Function | Returns C_NULL_PTR. |
libxsmm_ptr_s0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_s1 | LIBXSMM | Function | |
libxsmm_ptr_s2 | LIBXSMM | Function | |
libxsmm_ptr_smm | LIBXSMM | Function | |
libxsmm_ptr_w0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_w1 | LIBXSMM | Function | |
libxsmm_ptr_w2 | LIBXSMM | Function | |
libxsmm_ptr_z0 | LIBXSMM | Function | Determines the C-address of the given array. |
libxsmm_ptr_z1 | LIBXSMM | Function | |
libxsmm_ptr_z2 | LIBXSMM | Function | |
libxsmm_release_dmmkernel | LIBXSMM | Subroutine | Deallocate JIT'ted code created by libxsmm_create routines. To unregister code generated with libxsmm_dispatch is unnecessary. |
libxsmm_release_kernel | LIBXSMM | Interface | |
libxsmm_release_mmkernel | LIBXSMM | Interface | Deallocates JIT'ted code, or unregisters and releases code from registry. |
libxsmm_release_smmkernel | LIBXSMM | Subroutine | Deallocate JIT'ted code created by libxsmm_create routines. To unregister code generated with libxsmm_dispatch is unnecessary. |
libxsmm_set_target_arch | LIBXSMM | Interface | |
libxsmm_set_target_archid | LIBXSMM | Interface | |
libxsmm_set_verbosity | LIBXSMM | Interface | |
libxsmm_sgemm | LIBXSMM | Interface | Overloaded GEMM routines (single-precision). |
libxsmm_sgemm0 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (single-precision). This overload belongs to libxsmm_(s)gemm. |
libxsmm_sgemm1 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (single-precision). This overload belongs to libxsmm_(s)gemm. |
libxsmm_sgemm2 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (single-precision). This overload belongs to libxsmm_(s)gemm. |
libxsmm_sgemm3 | LIBXSMM | Subroutine | Auto-dispatched general dense MM (single-precision). This overload belongs to libxsmm_(s)gemm. |
libxsmm_smmavailable | LIBXSMM | Function | Checks if the given kernel was generated. JIT code is guaranteed to be generated if JIT support was enabled at build-time of the library (default). This overload belongs to libxsmm_(mm)available. |
libxsmm_smmcall | LIBXSMM | Subroutine | See also libxsmm_smmcall_abc and libxsmm_smmcall_prf. |
libxsmm_smmcall_abc | LIBXSMM | Subroutine | Calls the kernel with the given arguments. Alternatively, PROCPOINTER can be used as shown by the inner comments of this routine (LIBXSMM_FUNCTION3). The libxsmm_xmmcall routines can be used in FORTRAN77. |
libxsmm_smmcall_prf | LIBXSMM | Subroutine | Calls the kernel with the given arguments. Alternatively, PROCPOINTER can be used as shown by the inner comments of this routine (LIBXSMM_FUNCTION6). The libxsmm_xmmcall routines can be used in FORTRAN77. |
libxsmm_smmdispatch | LIBXSMM | Subroutine | Query or JIT-generate an SMM-kernel (single-precision). |
libxsmm_timer_duration | LIBXSMM | Interface | |
libxsmm_timer_ncycles | LIBXSMM | Function | Returns the difference between two timer ticks (cycles). Implicit FORTRAN 77 interface: subroutine available. |
libxsmm_timer_tick | LIBXSMM | Interface | |
libxsmm_xclear | LIBXSMM | Interface | |
libxsmm_xdiff | LIBXSMM | Interface | |
libxsmm_xdispatch | LIBXSMM | Function | Query user-defined value from LIBXSMM's code registry. |
libxsmm_xgemm_batch | LIBXSMM | Interface | |
libxsmm_xgemm_batch_omp | LIBXSMM | Interface | |
libxsmm_xgemm_batch_task | LIBXSMM | Interface | |
libxsmm_xhash | LIBXSMM | Interface | |
libxsmm_xitrans | LIBXSMM | Interface | |
libxsmm_xmatcopy | LIBXSMM | Interface | |
libxsmm_xmmcall_abc | LIBXSMM | Interface | |
libxsmm_xmmcall_prf | LIBXSMM | Interface | |
libxsmm_xmmdispatch | LIBXSMM | Interface | |
libxsmm_xmmdispatch2 | LIBXSMM | Interface | |
libxsmm_xotrans | LIBXSMM | Interface | |
libxsmm_xregister | LIBXSMM | Function | Register user-defined key-value; value can be queried (libxsmm_xdispatch). Since the key-type is unknown to LIBXSMM, the key must be binary reproducible, i.e., a structured type (can be padded) must be initialized like a binary blob (libxsmm_xclear) followed by an element-wise initialization. The size of the key is limited (see documentation). The given value is copied by LIBXSMM and can be initialized prior to registration or whenever queried. Registered data is released when the program terminates but can be also released if needed (libxsmm_xrelease), .e.g., in case of a larger value reusing the same key. |
libxsmm_xrelease | LIBXSMM | Interface |