| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382 |
- !===============================================================================
- ! Copyright 1999-2022 Intel Corporation.
- !
- ! This software and the related documents are Intel copyrighted materials, and
- ! your use of them is governed by the express license under which they were
- ! provided to you (License). Unless the License provides otherwise, you may not
- ! use, modify, copy, publish, distribute, disclose or transmit this software or
- ! the related documents without Intel's prior written permission.
- !
- ! This software and the related documents are provided as is, with no express
- ! or implied warranties, other than those that are expressly stated in the
- ! License.
- !===============================================================================
- ! Content:
- ! Intel(R) oneAPI Math Kernel Library (oneMKL) FORTRAN interface
- ! for service routines
- !*******************************************************************************
- INTEGER*4 MKL_DOMAIN_ALL
- INTEGER*4 MKL_DOMAIN_BLAS
- INTEGER*4 MKL_DOMAIN_FFT
- INTEGER*4 MKL_DOMAIN_VML
- INTEGER*4 MKL_DOMAIN_PARDISO
- INTEGER*4 MKL_DYNAMIC_TRUE
- INTEGER*4 MKL_DYNAMIC_FALSE
- INTEGER*4 MKL_ENABLE_SSE4_2
- INTEGER*4 MKL_ENABLE_AVX
- INTEGER*4 MKL_ENABLE_AVX2
- INTEGER*4 MKL_ENABLE_AVX512
- INTEGER*4 MKL_ENABLE_AVX512_MIC
- INTEGER*4 MKL_ENABLE_AVX512_MIC_E1
- INTEGER*4 MKL_ENABLE_AVX512_E1
- INTEGER*4 MKL_ENABLE_AVX512_E2
- INTEGER*4 MKL_ENABLE_AVX512_E3
- INTEGER*4 MKL_ENABLE_AVX512_E4
- INTEGER*4 MKL_INTERFACE_LP64
- INTEGER*4 MKL_INTERFACE_ILP64
- INTEGER*4 MKL_INTERFACE_GNU
- INTEGER*4 MKL_THREADING_INTEL
- INTEGER*4 MKL_THREADING_SEQUENTIAL
- INTEGER*4 MKL_THREADING_PGI
- INTEGER*4 MKL_THREADING_GNU
- INTEGER*4 MKL_THREADING_TBB
- INTEGER*4 MKL_CBWR_BRANCH
- INTEGER*4 MKL_CBWR_ALL
- INTEGER*4 MKL_CBWR_OFF
- INTEGER*4 MKL_CBWR_UNSET_ALL
- INTEGER*4 MKL_CBWR_BRANCH_OFF
- INTEGER*4 MKL_CBWR_AUTO
- INTEGER*4 MKL_CBWR_COMPATIBLE
- INTEGER*4 MKL_CBWR_SSE2
- INTEGER*4 MKL_CBWR_SSSE3
- INTEGER*4 MKL_CBWR_SSE4_1
- INTEGER*4 MKL_CBWR_SSE4_2
- INTEGER*4 MKL_CBWR_AVX
- INTEGER*4 MKL_CBWR_AVX2
- INTEGER*4 MKL_CBWR_AVX512_MIC
- INTEGER*4 MKL_CBWR_AVX512
- INTEGER*4 MKL_CBWR_AVX512_MIC_E1
- INTEGER*4 MKL_CBWR_AVX512_E1
- INTEGER*4 MKL_CBWR_STRICT
- INTEGER*4 MKL_CBWR_SUCCESS
- INTEGER*4 MKL_CBWR_ERR_INVALID_SETTINGS
- INTEGER*4 MKL_CBWR_ERR_INVALID_INPUT
- INTEGER*4 MKL_CBWR_ERR_UNSUPPORTED_BRANCH
- INTEGER*4 MKL_CBWR_ERR_UNKNOWN_BRANCH
- INTEGER*4 MKL_CBWR_ERR_MODE_CHANGE_FAILURE
- INTEGER*4 MKL_PEAK_MEM_ENABLE
- INTEGER*4 MKL_PEAK_MEM_RESET
- INTEGER*4 MKL_PEAK_MEM
- INTEGER*4 MKL_PEAK_MEM_DISABLE
- INTEGER*4 MKL_MEM_MCDRAM
- PARAMETER (MKL_DOMAIN_ALL = 0)
- PARAMETER (MKL_DOMAIN_BLAS = 1)
- PARAMETER (MKL_DOMAIN_FFT = 2)
- PARAMETER (MKL_DOMAIN_VML = 3)
- PARAMETER (MKL_DOMAIN_PARDISO = 4)
- PARAMETER (MKL_DYNAMIC_TRUE = 1)
- PARAMETER (MKL_DYNAMIC_FALSE = 0)
- PARAMETER (MKL_ENABLE_SSE4_2 = 0)
- PARAMETER (MKL_ENABLE_AVX = 1)
- PARAMETER (MKL_ENABLE_AVX2 = 2)
- PARAMETER (MKL_ENABLE_AVX512_MIC = 3)
- PARAMETER (MKL_ENABLE_AVX512 = 4)
- PARAMETER (MKL_ENABLE_AVX512_MIC_E1 = 5)
- PARAMETER (MKL_ENABLE_AVX512_E1 = 6)
- PARAMETER (MKL_ENABLE_AVX512_E2 = 7)
- PARAMETER (MKL_ENABLE_AVX512_E3 = 8)
- PARAMETER (MKL_ENABLE_AVX512_E4 = 9)
- PARAMETER (MKL_INTERFACE_LP64 = INT( Z"00000000" ))
- PARAMETER (MKL_INTERFACE_ILP64 = INT( Z"00000001" ))
- PARAMETER (MKL_INTERFACE_GNU = INT( Z"00000002" ))
- PARAMETER (MKL_THREADING_INTEL = 0)
- PARAMETER (MKL_THREADING_SEQUENTIAL = 1)
- PARAMETER (MKL_THREADING_PGI = 2)
- PARAMETER (MKL_THREADING_GNU = 3)
- PARAMETER (MKL_THREADING_TBB = 4)
- PARAMETER (MKL_CBWR_BRANCH = 1)
- PARAMETER (MKL_CBWR_ALL = -1)
- PARAMETER (MKL_CBWR_OFF = 0)
- PARAMETER (MKL_CBWR_UNSET_ALL = 0)
- PARAMETER (MKL_CBWR_BRANCH_OFF = 1)
- PARAMETER (MKL_CBWR_AUTO = 2)
- PARAMETER (MKL_CBWR_COMPATIBLE = 3)
- PARAMETER (MKL_CBWR_SSE2 = 4)
- PARAMETER (MKL_CBWR_SSSE3 = 6)
- PARAMETER (MKL_CBWR_SSE4_1 = 7)
- PARAMETER (MKL_CBWR_SSE4_2 = 8)
- PARAMETER (MKL_CBWR_AVX = 9)
- PARAMETER (MKL_CBWR_AVX2 = 10)
- PARAMETER (MKL_CBWR_AVX512_MIC = 11)
- PARAMETER (MKL_CBWR_AVX512 = 12)
- PARAMETER (MKL_CBWR_AVX512_MIC_E1 = 13)
- PARAMETER (MKL_CBWR_AVX512_E1 = 14)
- PARAMETER (MKL_CBWR_STRICT = 65536)
- PARAMETER (MKL_CBWR_SUCCESS = 0)
- PARAMETER (MKL_CBWR_ERR_INVALID_SETTINGS = -1)
- PARAMETER (MKL_CBWR_ERR_INVALID_INPUT = -2)
- PARAMETER (MKL_CBWR_ERR_UNSUPPORTED_BRANCH = -3)
- PARAMETER (MKL_CBWR_ERR_UNKNOWN_BRANCH = -4)
- PARAMETER (MKL_CBWR_ERR_MODE_CHANGE_FAILURE = -8)
- PARAMETER (MKL_PEAK_MEM_DISABLE = 0)
- PARAMETER (MKL_PEAK_MEM_ENABLE = 1)
- PARAMETER (MKL_PEAK_MEM_RESET = -1)
- PARAMETER (MKL_PEAK_MEM = 2)
- PARAMETER (MKL_MEM_MCDRAM = 1)
- INTERFACE
- SUBROUTINE MKL_GET_VERSION_STRING(BUF)
- CHARACTER*(*) BUF
- END SUBROUTINE
- END INTERFACE
- INTERFACE
- DOUBLE PRECISION FUNCTION MKL_GET_CPU_FREQUENCY()
- END FUNCTION
- END INTERFACE
- INTERFACE
- DOUBLE PRECISION FUNCTION MKL_GET_MAX_CPU_FREQUENCY()
- END FUNCTION
- END INTERFACE
- INTERFACE
- DOUBLE PRECISION FUNCTION MKL_GET_CLOCKS_FREQUENCY()
- END FUNCTION
- END INTERFACE
- INTERFACE
- SUBROUTINE MKL_GET_CPU_CLOCKS(CPU_CLOCKS)
- INTEGER*8 CPU_CLOCKS
- END SUBROUTINE
- END INTERFACE
- ! Threading control functions
- INTERFACE
- INTEGER*4 FUNCTION MKL_GET_MAX_THREADS()
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_GET_NUM_STRIPES()
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_DOMAIN_GET_MAX_THREADS(DOMAIN)
- INTEGER*4 DOMAIN
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_SET_NUM_THREADS_LOCAL(NTHRS)
- INTEGER*4 NTHRS
- END FUNCTION
- END INTERFACE
- INTERFACE
- SUBROUTINE MKL_SET_NUM_THREADS(NTHRS)
- INTEGER*4 NTHRS
- END SUBROUTINE
- END INTERFACE
- INTERFACE
- SUBROUTINE MKL_SET_NUM_STRIPES(NSTRP)
- INTEGER*4 NSTRP
- END SUBROUTINE
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_DOMAIN_SET_NUM_THREADS(NTHRS,DOMAIN)
- INTEGER*4 NTHRS
- INTEGER*4 DOMAIN
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_GET_DYNAMIC()
- END FUNCTION
- END INTERFACE
- INTERFACE
- SUBROUTINE MKL_SET_DYNAMIC(MKL_DYNAMIC)
- INTEGER*4 MKL_DYNAMIC
- END SUBROUTINE
- END INTERFACE
- ! Memory functions
- INTERFACE
- FUNCTION MKL_MALLOC(SIZE,ALIGN)
- USE ISO_C_BINDING
- INTEGER(KIND=C_INTPTR_T) MKL_MALLOC
- INTEGER(KIND=C_SIZE_T) SIZE
- INTEGER*4 ALIGN
- END FUNCTION MKL_MALLOC
- END INTERFACE
- INTERFACE
- FUNCTION MKL_CALLOC(NUM,SIZE,ALIGN)
- USE ISO_C_BINDING
- INTEGER(KIND=C_INTPTR_T) MKL_CALLOC
- INTEGER(KIND=C_SIZE_T) NUM,SIZE
- INTEGER*4 ALIGN
- END FUNCTION MKL_CALLOC
- END INTERFACE
- INTERFACE
- FUNCTION MKL_REALLOC(PTR,SIZE)
- USE ISO_C_BINDING
- INTEGER(KIND=C_INTPTR_T) MKL_REALLOC,PTR
- INTEGER(KIND=C_SIZE_T) SIZE
- END FUNCTION MKL_REALLOC
- END INTERFACE
- INTERFACE
- SUBROUTINE MKL_FREE(PTR)
- USE ISO_C_BINDING
- INTEGER(KIND=C_INTPTR_T) PTR
- END SUBROUTINE MKL_FREE
- END INTERFACE
- INTERFACE
- INTEGER*8 FUNCTION MKL_MEM_STAT(N_BUFF)
- INTEGER*4 N_BUFF
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*8 FUNCTION MKL_PEAK_MEM_USAGE(RESET)
- INTEGER*4 RESET
- END FUNCTION
- END INTERFACE
- INTERFACE
- SUBROUTINE MKL_FREE_BUFFERS()
- END SUBROUTINE
- END INTERFACE
- INTERFACE
- SUBROUTINE MKL_THREAD_FREE_BUFFERS()
- END SUBROUTINE
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_DISABLE_FAST_MM()
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_SET_MEMORY_LIMIT(MEM_TYPE,LIMIT)
- USE ISO_C_BINDING
- INTEGER*4 MEM_TYPE
- INTEGER(KIND=C_SIZE_T) LIMIT
- END FUNCTION
- END INTERFACE
- ! oneMKL Progress routine
- INTERFACE
- FUNCTION MKL_PROGRESS( THREAD, STEP, STAGE )
- INTEGER*4 THREAD,STEP
- CHARACTER*(*) STAGE
- INTEGER MKL_PROGRESS
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_ENABLE_INSTRUCTIONS(TYPE)
- INTEGER*4 TYPE
- END FUNCTION
- END INTERFACE
- ! oneMKL dynamic interface
- INTERFACE
- INTEGER*4 FUNCTION MKL_SET_INTERFACE_LAYER(MKL_INTERFACE)
- INTEGER*4 MKL_INTERFACE
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_SET_THREADING_LAYER(MKL_THREADING)
- INTEGER*4 MKL_THREADING
- END FUNCTION
- END INTERFACE
- ! oneMKL CBWR functions
- INTERFACE
- INTEGER*4 FUNCTION MKL_CBWR_GET(MKL_CBWR)
- INTEGER*4 MKL_CBWR
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_CBWR_SET(MKL_CBWR)
- INTEGER*4 MKL_CBWR
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_CBWR_GET_AUTO_BRANCH()
- END FUNCTION
- END INTERFACE
- ! oneMKL MPI routines
- INTEGER*4 MKL_BLACS_CUSTOM
- INTEGER*4 MKL_BLACS_MSMPI
- INTEGER*4 MKL_BLACS_INTELMPI
- INTEGER*4 MKL_BLACS_MPICH2
- PARAMETER (MKL_BLACS_CUSTOM = 0)
- PARAMETER (MKL_BLACS_MSMPI = 1)
- PARAMETER (MKL_BLACS_INTELMPI = 2)
- PARAMETER (MKL_BLACS_MPICH2 = 3)
- INTERFACE
- INTEGER*4 FUNCTION MKL_SET_MPI(VERBOSE, CUSTOM_LIBRARY_NAME)
- INTEGER*4 VERBOSE
- CHARACTER*(*) CUSTOM_LIBRARY_NAME
- END FUNCTION
- END INTERFACE
- ! oneMKL verbose function
- INTERFACE
- INTEGER*4 FUNCTION MKL_VERBOSE(ENABLE)
- INTEGER*4 ENABLE
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_VERBOSE_OUTPUT_FILE(FILE_PATH)
- CHARACTER*(*) FILE_PATH
- END FUNCTION
- END INTERFACE
- INTERFACE
- INTEGER*4 FUNCTION MKL_SET_ENV_MODE(MODE)
- INTEGER*4 MODE
- END FUNCTION
- END INTERFACE
- ! Obsolete names
- INTEGER*4 MKL_CBWR_SSE3
- PARAMETER (MKL_CBWR_SSE3 = 5)
- !*******************************************************************************
|