123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- /* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010-2015,2017 CNRS
- * Copyright (C) 2009-2011,2014,2016 Université de Bordeaux
- * Copyright (C) 2011-2012 Inria
- *
- * StarPU is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or (at
- * your option) any later version.
- *
- * StarPU is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- * See the GNU Lesser General Public License in COPYING.LGPL for more details.
- */
- /*! \defgroup API_Multiformat_Data_Interface Multiformat Data Interface
- \struct starpu_multiformat_data_interface_ops
- \ingroup API_Multiformat_Data_Interface
- The different fields are:
- \var size_t starpu_multiformat_data_interface_ops::cpu_elemsize
- the size of each element on CPUs
- \var size_t starpu_multiformat_data_interface_ops::opencl_elemsize
- the size of each element on OpenCL devices
- \var struct starpu_codelet *starpu_multiformat_data_interface_ops::cpu_to_opencl_cl
- pointer to a codelet which converts from CPU to OpenCL
- \var struct starpu_codelet *starpu_multiformat_data_interface_ops::opencl_to_cpu_cl
- pointer to a codelet which converts from OpenCL to CPU
- \var size_t starpu_multiformat_data_interface_ops::cuda_elemsize
- the size of each element on CUDA devices
- \var struct starpu_codelet *starpu_multiformat_data_interface_ops::cpu_to_cuda_cl
- pointer to a codelet which converts from CPU to CUDA
- \var struct starpu_codelet *starpu_multiformat_data_interface_ops::cuda_to_cpu_cl
- pointer to a codelet which converts from CUDA to CPU
- \var size_t starpu_multiformat_data_interface_ops::mic_elemsize
- the size of each element on MIC devices
- \var struct starpu_codelet *starpu_multiformat_data_interface_ops::cpu_to_mic_cl
- pointer to a codelet which converts from CPU to MIC
- \var struct starpu_codelet *starpu_multiformat_data_interface_ops::mic_to_cpu_cl
- pointer to a codelet which converts from MIC to CPU
- \struct starpu_multiformat_interface
- todo
- \ingroup API_Multiformat_Data_Interface
- \var enum starpu_data_interface_id starpu_multiformat_interface::id
- todo
- \var void *starpu_multiformat_interface::cpu_ptr
- todo
- \var void *starpu_multiformat_interface::cuda_ptr
- todo
- \var void *starpu_multiformat_interface::opencl_ptr
- todo
- \var void *starpu_multiformat_interface::mic_ptr
- todo
- \var uint32_t starpu_multiformat_interface::nx
- todo
- \var struct starpu_multiformat_data_interface_ops *starpu_multiformat_interface::ops
- todo
- \fn void starpu_multiformat_data_register(starpu_data_handle_t *handle, int home_node, void *ptr, uint32_t nobjects, struct starpu_multiformat_data_interface_ops *format_ops)
- \ingroup API_Multiformat_Data_Interface
- Register a piece of data that can be represented in different
- ways, depending upon the processing unit that manipulates it. It
- allows the programmer, for instance, to use an array of structures
- when working on a CPU, and a structure of arrays when working on a
- GPU. \p nobjects is the number of elements in the data. \p format_ops
- describes the format.
- \def STARPU_MULTIFORMAT_GET_CPU_PTR(interface)
- \ingroup API_Multiformat_Data_Interface
- Return the local pointer to the data with CPU format.
- \def STARPU_MULTIFORMAT_GET_CUDA_PTR(interface)
- \ingroup API_Multiformat_Data_Interface
- Return the local pointer to the data with CUDA format.
- \def STARPU_MULTIFORMAT_GET_OPENCL_PTR(interface)
- \ingroup API_Multiformat_Data_Interface
- Return the local pointer to the data with OpenCL format.
- \def STARPU_MULTIFORMAT_GET_MIC_PTR(interface)
- \ingroup API_Multiformat_Data_Interface
- Return the local pointer to the data with MIC format.
- \def STARPU_MULTIFORMAT_GET_NX(interface)
- \ingroup API_Multiformat_Data_Interface
- Return the number of elements in the data.
- */
|