Modules | |
Device selectors | |
Device selectors enable DPC++ runtime to choose the best devices based on heuristics specified by the user, or by one of the built-in selectors. | |
Accessors | |
Specify aquisition and release of buffer and image data structures. | |
Classes | |
class | sycl::_V1::buffer< T, dimensions, AllocatorT, __Enabled > |
Defines a shared array that can be used by kernels in queues. More... | |
class | sycl::_V1::context |
The context class represents a SYCL context on which kernel functions may be executed. More... | |
class | sycl::_V1::device |
The SYCL device class encapsulates a single SYCL device on which kernels may be executed. More... | |
class | sycl::_V1::device_event |
Encapsulates a single SYCL device event which is available only within SYCL kernel functions and can be used to wait for asynchronous operations within a kernel function to complete. More... | |
class | sycl::_V1::event |
An event object can be used to synchronize memory transfers, enqueues of kernels and signaling barriers. More... | |
class | sycl::_V1::exception |
class | sycl::_V1::exception_list |
A list of asynchronous exceptions. More... | |
class | sycl::_V1::h_item< dimensions > |
Identifies an instance of a group::parallel_for_work_item function object executing at each point in a local range passed to a parallel_for_work_item call or to the corresponding parallel_for_work_group call. More... | |
class | sycl::_V1::handler |
Command group handler class. More... | |
class | sycl::_V1::id< dimensions > |
A unique identifier of an item in an index space. More... | |
class | sycl::_V1::image< Dimensions, AllocatorT > |
Defines a shared image data. More... | |
class | sycl::_V1::item< dimensions, with_offset > |
Identifies an instance of the function object executing at each point in a range. More... | |
class | sycl::_V1::kernel |
Provides an abstraction of a SYCL kernel. More... | |
class | sycl::_V1::kernel_id |
Objects of the class identify kernel is some kernel_bundle related APIs. More... | |
class | sycl::_V1::kernel_bundle< State > |
The kernel_bundle class represents collection of device images in a particular state. More... | |
class | sycl::_V1::marray< Type, NumElements > |
Provides a cross-platform math array class template that works on SYCL devices as well as in host C++ code. More... | |
class | sycl::_V1::multi_ptr< ElementType, Space, DecorateAddress > |
Provides constructors for address space qualified and non address space qualified pointers to allow interoperability between plain C++ and OpenCL C. More... | |
class | sycl::_V1::nd_item< dimensions > |
Identifies an instance of the function object executing at each point in an nd_range. More... | |
class | sycl::_V1::nd_range< dimensions > |
Defines the iteration domain of both the work-groups and the overall dispatch. More... | |
class | sycl::_V1::platform |
Encapsulates a SYCL platform on which kernels may be executed. More... | |
class | sycl::_V1::property_list |
Objects of the property_list class are containers for the SYCL properties. More... | |
class | sycl::_V1::queue |
Encapsulates a single SYCL queue which schedules kernels on a SYCL device. More... | |
class | sycl::_V1::range< dimensions > |
Defines the iteration domain of either a single work-group in a parallel dispatch, or the overall dimensions of the dispatch. More... | |
class | sycl::_V1::vec< Type, NumElements > |
Provides a cross-patform vector class template that works efficiently on SYCL devices as well as in host C++ code. More... | |
Functions | |
template<int Dimensions = 1> | |
class | sycl::_V1::__SYCL_TYPE (group) group |
Encapsulates all functionality required to represent a particular work-group within a parallel execution. More... | |
class | sycl::_V1::__SYCL_TYPE (kernel_handler) kernel_handler |
Reading the value of a specialization constant. More... | |
class __SYCL_SPECIAL_CLASS | sycl::_V1::__SYCL_TYPE (sampler) sampler |
Encapsulates a configuration for sampling an image accessor. More... | |
template<typename T > | |
class | sycl::_V1::__SYCL_TYPE (specialization_id) specialization_id |
Declaring a specialization constant. More... | |
template<typename T > | |
class __SYCL_SPECIAL_CLASS __SYCL_TYPE(stream) stream std::enable_if_t< std::is_same< T, std::byte >::value, const stream & > | sycl::_V1::operator<< (const stream &, const T &) |
A buffered output stream that allows outputting the values of built-in, vector and SYCL types to the console. More... | |
A sample DPC++ application:
class sycl::_V1::__SYCL_TYPE | ( | group | ) |
Encapsulates all functionality required to represent a particular work-group within a parallel execution.
Executes a work-group mem-fence with memory ordering on the local address space, global address space or both based on the value of accessSpace
.
Asynchronously copies a number of elements specified by numElements
from the source pointed by src
to destination pointed by dest
with a source stride specified by srcStride
, and returns a SYCL device_event which can be used to wait on the completion of the copy. Permitted types for dataT are all scalar and vector types, except boolean.
Asynchronously copies a number of elements specified by numElements
from the source pointed by src
to destination pointed by dest
with the destination stride specified by destStride
, and returns a SYCL device_event which can be used to wait on the completion of the copy. Permitted types for dataT are all scalar and vector types, except boolean.
Specialization for scalar bool type. Asynchronously copies a number of elements specified by NumElements
from the source pointed by Src
to destination pointed by Dest
with a stride specified by Stride
, and returns a SYCL device_event which can be used to wait on the completion of the copy.
Specialization for vector bool type. Asynchronously copies a number of elements specified by NumElements
from the source pointed by Src
to destination pointed by Dest
with a stride specified by Stride
, and returns a SYCL device_event which can be used to wait on the completion of the copy.
Asynchronously copies a number of elements specified by numElements
from the source pointed by src
to destination pointed by dest
and returns a SYCL device_event which can be used to wait on the completion of the copy. Permitted types for dataT are all scalar and vector types.
Asynchronously copies a number of elements specified by numElements
from the source pointed by src
to destination pointed by dest
and returns a SYCL device_event which can be used to wait on the completion of the copy. Permitted types for dataT are all scalar and vector types.
Definition at line 94 of file group.hpp.
References __spirv_MemoryBarrier(), __SYCL_ASSERT, __SYCL_OpGroupAsyncCopyGlobalToLocal(), __SYCL_OpGroupAsyncCopyLocalToGlobal(), sycl::_V1::Dimensions, sycl::_V1::multi_ptr< ElementType, Space, DecorateAddress >::get(), sycl::_V1::detail::get_local_linear_id(), sycl::_V1::detail::get_local_linear_range(), sycl::_V1::detail::getSPIRVMemorySemanticsMask(), sycl::_V1::ext::intel::experimental::operator!=(), operator==(), sycl::_V1::ext::oneapi::experimental::operator[](), sycl::_V1::read_write, sycl::_V1::h_item< dimensions >::setLogicalLocalID(), sycl::_V1::device_event::wait(), __spv::Scope::Workgroup, sycl::_V1::detail::workGroupBarrier(), and sycl::_V1::detail::write().
class sycl::_V1::__SYCL_TYPE | ( | kernel_handler | ) |
Reading the value of a specialization constant.
Definition at line 22 of file kernel_handler.hpp.
References __SYCL_ALWAYS_INLINE.
class __SYCL_SPECIAL_CLASS sycl::_V1::__SYCL_TYPE | ( | sampler | ) |
Encapsulates a configuration for sampling an image accessor.
Checks if this sampler has a property of type propertyT.
Gets the specified property of this sampler.
Throws invalid_object_error if this sampler does not have a property of type propertyT.
Definition at line 66 of file sampler.hpp.
References sycl::_V1::AccessMode, sycl::_V1::Dimensions, sycl::_V1::ext::oneapi::experimental::get_property(), sycl::_V1::detail::getSyclObjImpl(), sycl::_V1::ext::oneapi::experimental::has_property(), sycl::_V1::IsPlaceholder, sycl::_V1::ext::intel::experimental::operator!=(), sycl::_V1::ext::oneapi::experimental::operator=(), and operator==().
class sycl::_V1::__SYCL_TYPE | ( | specialization_id | ) |
Declaring a specialization constant.
Definition at line 17 of file specialization_id.hpp.
References sycl::_V1::ext::oneapi::experimental::operator=().
|
inline |
A buffered output stream that allows outputting the values of built-in, vector and SYCL types to the console.
Definition at line 999 of file stream.hpp.