| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /*******************************************************************************
- * Copyright 2019-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)
- ! Discrete Fourier Transform Interface (DFTI) for OpenMP target (offload)
- !******************************************************************************/
- #ifndef MKL_DFTI_OMP_OFFLOAD_H_INCLUDED
- #define MKL_DFTI_OMP_OFFLOAD_H_INCLUDED
- #include "mkl_dfti.h"
- #include "mkl_service.h"
- #if (_OPENMP >= 202011)
- #include <omp.h>
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif // __cplusplus
- DFTI_EXTERN MKL_LONG mkl_DftiCommitDescriptor_omp_offload(DFTI_DESCRIPTOR_HANDLE,
- void *interop_obj);
- #if (_OPENMP >= 202011)
- #pragma omp declare variant(mkl_DftiCommitDescriptor_omp_offload) \
- match(construct={dispatch}, device={arch(gen)}) \
- append_args(interop(prefer_type("sycl","level_zero"),targetsync))
- #endif
- #pragma omp declare variant(mkl_DftiCommitDescriptor_omp_offload) \
- match(construct = {target variant dispatch}, device = {arch(gen)})
- DFTI_EXTERN MKL_LONG DftiCommitDescriptor(DFTI_DESCRIPTOR_HANDLE);
- DFTI_EXTERN MKL_LONG mkl_DftiComputeForward_omp_offload(DFTI_DESCRIPTOR_HANDLE,
- void *p1,
- void *interop_obj, ...);
- #if (_OPENMP >= 202011)
- #pragma omp declare variant(mkl_DftiComputeForward_omp_offload) \
- match(construct={dispatch}, device={arch(gen)}) \
- append_args(interop(prefer_type("sycl","level_zero"),targetsync)) \
- adjust_args(need_device_ptr:p1)
- #endif
- #pragma omp declare variant(mkl_DftiComputeForward_omp_offload) \
- match(construct = {target variant dispatch}, device = {arch(gen)})
- DFTI_EXTERN MKL_LONG DftiComputeForward(DFTI_DESCRIPTOR_HANDLE,
- void *p1, ...);
- DFTI_EXTERN MKL_LONG mkl_DftiComputeBackward_omp_offload(DFTI_DESCRIPTOR_HANDLE,
- void *p1,
- void *interop_obj, ...);
- #if (_OPENMP >= 202011)
- #pragma omp declare variant(mkl_DftiComputeBackward_omp_offload) \
- match(construct={dispatch}, device={arch(gen)}) \
- append_args(interop(prefer_type("sycl","level_zero"),targetsync)) \
- adjust_args(need_device_ptr:p1)
- #endif
- #pragma omp declare variant(mkl_DftiComputeBackward_omp_offload) \
- match(construct = {target variant dispatch}, device = {arch(gen)})
- DFTI_EXTERN MKL_LONG DftiComputeBackward(DFTI_DESCRIPTOR_HANDLE,
- void *p1, ...);
- #ifdef __cplusplus
- }
- #endif // __cplusplus
- #endif // MKL_DFTI_OMP_OFFLOAD_H_INCLUDED
|