DPC++ Runtime
Runtime libraries for oneAPI DPC++
sycl::_V1::detail::handler_impl Class Reference

#include <detail/handler_impl.hpp>

Collaboration diagram for sycl::_V1::detail::handler_impl:

Public Member Functions

 handler_impl (std::shared_ptr< queue_impl > SubmissionPrimaryQueue, std::shared_ptr< queue_impl > SubmissionSecondaryQueue, bool EventNeeded)
 
 handler_impl (std::shared_ptr< ext::oneapi::experimental::detail::graph_impl > Graph)
 
 handler_impl ()=default
 
void setStateExplicitKernelBundle ()
 
void setStateSpecConstSet ()
 
bool isStateExplicitKernelBundle () const
 

Public Attributes

HandlerSubmissionState MSubmissionState = HandlerSubmissionState::NO_STATE
 Registers mutually exclusive submission states. More...
 
std::shared_ptr< queue_implMSubmissionPrimaryQueue
 Shared pointer to the primary queue implementation. More...
 
std::shared_ptr< queue_implMSubmissionSecondaryQueue
 Shared pointer to the secondary queue implementation. More...
 
bool MEventNeeded = true
 Bool stores information about whether the event resulting from the corresponding work is required. More...
 
std::vector< std::shared_ptr< const void > > MAuxiliaryResources
 
std::shared_ptr< detail::kernel_bundle_implMKernelBundle
 
ur_usm_advice_flags_t MAdvice
 
size_t MSrcPitch
 
size_t MDstPitch
 
size_t MWidth
 
size_t MHeight
 
size_t MOffset = 0
 Offset into a device_global for copy operations. More...
 
bool MIsDeviceImageScoped = false
 Boolean flag for whether the device_global had the device_image_scope property. More...
 
std::string HostPipeName
 
void * HostPipePtr = nullptr
 
bool HostPipeBlocking = false
 
size_t HostPipeTypeSize = 0
 
bool HostPipeRead = true
 
ur_kernel_cache_config_t MKernelCacheConfig = UR_KERNEL_CACHE_CONFIG_DEFAULT
 
bool MKernelIsCooperative = false
 
bool MKernelUsesClusterLaunch = false
 
ur_image_desc_t MSrcImageDesc
 
ur_image_desc_t MDstImageDesc
 
ur_image_format_t MSrcImageFormat
 
ur_image_format_t MDstImageFormat
 
ur_exp_image_copy_flags_t MImageCopyFlags
 
ur_rect_offset_t MSrcOffset
 
ur_rect_offset_t MDestOffset
 
ur_rect_region_t MCopyExtent
 
ur_exp_interop_semaphore_handle_t MInteropSemaphoreHandle
 
std::optional< uint64_t > MWaitValue
 
std::optional< uint64_t > MSignalValue
 
sycl::ext::oneapi::experimental::node_type MUserFacingNodeType
 
std::vector< std::pair< ext::oneapi::experimental::detail::dynamic_parameter_impl *, int > > MDynamicParameters
 
bool MNDRangeUsed = false
 
detail::CG::StorageInitHelper CGData
 The storage for the arguments passed. More...
 
std::vector< detail::ArgDescMArgs
 The list of arguments for the kernel. More...
 
std::vector< detail::ArgDescMAssociatedAccesors
 The list of associated accessors with this handler. More...
 
detail::NDRDescT MNDRDesc
 Struct that encodes global size, local size, ... More...
 
detail::CGType MCGType = detail::CGType::None
 Type of the command group, e.g. More...
 
std::shared_ptr< ext::oneapi::experimental::detail::graph_implMGraph
 The graph that is associated with this handler. More...
 
std::shared_ptr< ext::oneapi::experimental::detail::exec_graph_implMExecGraph
 If we are submitting a graph using ext_oneapi_graph this will be the graph to be executed. More...
 
std::shared_ptr< ext::oneapi::experimental::detail::node_implMSubgraphNode
 Storage for a node created from a subgraph submission. More...
 
std::unique_ptr< detail::CGMGraphNodeCG
 Storage for the CG created when handling graph nodes added explicitly. More...
 
std::shared_ptr< detail::HostTaskMHostTask
 Storage for lambda/function when using HostTask. More...
 
std::vector< detail::EventImplPtrMEventsWaitWithBarrier
 The list of valid SYCL events that need to complete before barrier command can be executed. More...
 

Detailed Description

Definition at line 32 of file handler_impl.hpp.

Constructor & Destructor Documentation

◆ handler_impl() [1/3]

sycl::_V1::detail::handler_impl::handler_impl ( std::shared_ptr< queue_impl SubmissionPrimaryQueue,
std::shared_ptr< queue_impl SubmissionSecondaryQueue,
bool  EventNeeded 
)
inline

Definition at line 34 of file handler_impl.hpp.

◆ handler_impl() [2/3]

sycl::_V1::detail::handler_impl::handler_impl ( std::shared_ptr< ext::oneapi::experimental::detail::graph_impl Graph)
inline

Definition at line 41 of file handler_impl.hpp.

◆ handler_impl() [3/3]

sycl::_V1::detail::handler_impl::handler_impl ( )
default

Member Function Documentation

◆ isStateExplicitKernelBundle()

bool sycl::_V1::detail::handler_impl::isStateExplicitKernelBundle ( ) const
inline

◆ setStateExplicitKernelBundle()

void sycl::_V1::detail::handler_impl::setStateExplicitKernelBundle ( )
inline

◆ setStateSpecConstSet()

void sycl::_V1::detail::handler_impl::setStateSpecConstSet ( )
inline

Member Data Documentation

◆ CGData

detail::CG::StorageInitHelper sycl::_V1::detail::handler_impl::CGData

The storage for the arguments passed.

We need to store a copy of values that are passed explicitly through set_arg, require and so on, because we need them to be alive after we exit the method they are passed in.

Definition at line 163 of file handler_impl.hpp.

◆ HostPipeBlocking

bool sycl::_V1::detail::handler_impl::HostPipeBlocking = false

Definition at line 114 of file handler_impl.hpp.

◆ HostPipeName

std::string sycl::_V1::detail::handler_impl::HostPipeName

Definition at line 110 of file handler_impl.hpp.

◆ HostPipePtr

void* sycl::_V1::detail::handler_impl::HostPipePtr = nullptr

Definition at line 112 of file handler_impl.hpp.

◆ HostPipeRead

bool sycl::_V1::detail::handler_impl::HostPipeRead = true

Definition at line 118 of file handler_impl.hpp.

◆ HostPipeTypeSize

size_t sycl::_V1::detail::handler_impl::HostPipeTypeSize = 0

Definition at line 116 of file handler_impl.hpp.

◆ MAdvice

ur_usm_advice_flags_t sycl::_V1::detail::handler_impl::MAdvice

Definition at line 93 of file handler_impl.hpp.

◆ MArgs

std::vector<detail::ArgDesc> sycl::_V1::detail::handler_impl::MArgs

The list of arguments for the kernel.

Definition at line 166 of file handler_impl.hpp.

◆ MAssociatedAccesors

std::vector<detail::ArgDesc> sycl::_V1::detail::handler_impl::MAssociatedAccesors

The list of associated accessors with this handler.

These accessors were created with this handler as argument or have become required for this handler via require method.

Definition at line 171 of file handler_impl.hpp.

◆ MAuxiliaryResources

std::vector<std::shared_ptr<const void> > sycl::_V1::detail::handler_impl::MAuxiliaryResources

Definition at line 89 of file handler_impl.hpp.

◆ MCGType

detail::CGType sycl::_V1::detail::handler_impl::MCGType = detail::CGType::None

Type of the command group, e.g.

kernel, fill. Can also encode version. Use getType and setType methods to access this variable unless manipulations with version are required

Definition at line 179 of file handler_impl.hpp.

◆ MCopyExtent

ur_rect_region_t sycl::_V1::detail::handler_impl::MCopyExtent

Definition at line 134 of file handler_impl.hpp.

◆ MDestOffset

ur_rect_offset_t sycl::_V1::detail::handler_impl::MDestOffset

Definition at line 133 of file handler_impl.hpp.

◆ MDstImageDesc

ur_image_desc_t sycl::_V1::detail::handler_impl::MDstImageDesc

Definition at line 127 of file handler_impl.hpp.

◆ MDstImageFormat

ur_image_format_t sycl::_V1::detail::handler_impl::MDstImageFormat

Definition at line 129 of file handler_impl.hpp.

◆ MDstPitch

size_t sycl::_V1::detail::handler_impl::MDstPitch

Definition at line 97 of file handler_impl.hpp.

◆ MDynamicParameters

std::vector<std::pair< ext::oneapi::experimental::detail::dynamic_parameter_impl *, int> > sycl::_V1::detail::handler_impl::MDynamicParameters

Definition at line 153 of file handler_impl.hpp.

◆ MEventNeeded

bool sycl::_V1::detail::handler_impl::MEventNeeded = true

Bool stores information about whether the event resulting from the corresponding work is required.

Definition at line 86 of file handler_impl.hpp.

◆ MEventsWaitWithBarrier

std::vector<detail::EventImplPtr> sycl::_V1::detail::handler_impl::MEventsWaitWithBarrier

The list of valid SYCL events that need to complete before barrier command can be executed.

Definition at line 196 of file handler_impl.hpp.

◆ MExecGraph

std::shared_ptr<ext::oneapi::experimental::detail::exec_graph_impl> sycl::_V1::detail::handler_impl::MExecGraph

If we are submitting a graph using ext_oneapi_graph this will be the graph to be executed.

Definition at line 186 of file handler_impl.hpp.

◆ MGraph

std::shared_ptr<ext::oneapi::experimental::detail::graph_impl> sycl::_V1::detail::handler_impl::MGraph

The graph that is associated with this handler.

Definition at line 182 of file handler_impl.hpp.

◆ MGraphNodeCG

std::unique_ptr<detail::CG> sycl::_V1::detail::handler_impl::MGraphNodeCG

Storage for the CG created when handling graph nodes added explicitly.

Definition at line 190 of file handler_impl.hpp.

◆ MHeight

size_t sycl::_V1::detail::handler_impl::MHeight

Definition at line 99 of file handler_impl.hpp.

◆ MHostTask

std::shared_ptr<detail::HostTask> sycl::_V1::detail::handler_impl::MHostTask

Storage for lambda/function when using HostTask.

Definition at line 193 of file handler_impl.hpp.

◆ MImageCopyFlags

ur_exp_image_copy_flags_t sycl::_V1::detail::handler_impl::MImageCopyFlags

Definition at line 130 of file handler_impl.hpp.

◆ MInteropSemaphoreHandle

ur_exp_interop_semaphore_handle_t sycl::_V1::detail::handler_impl::MInteropSemaphoreHandle

Definition at line 137 of file handler_impl.hpp.

◆ MIsDeviceImageScoped

bool sycl::_V1::detail::handler_impl::MIsDeviceImageScoped = false

Boolean flag for whether the device_global had the device_image_scope property.

Definition at line 105 of file handler_impl.hpp.

◆ MKernelBundle

std::shared_ptr<detail::kernel_bundle_impl> sycl::_V1::detail::handler_impl::MKernelBundle

Definition at line 91 of file handler_impl.hpp.

◆ MKernelCacheConfig

ur_kernel_cache_config_t sycl::_V1::detail::handler_impl::MKernelCacheConfig = UR_KERNEL_CACHE_CONFIG_DEFAULT

Definition at line 120 of file handler_impl.hpp.

◆ MKernelIsCooperative

bool sycl::_V1::detail::handler_impl::MKernelIsCooperative = false

Definition at line 122 of file handler_impl.hpp.

◆ MKernelUsesClusterLaunch

bool sycl::_V1::detail::handler_impl::MKernelUsesClusterLaunch = false

Definition at line 123 of file handler_impl.hpp.

◆ MNDRangeUsed

bool sycl::_V1::detail::handler_impl::MNDRangeUsed = false

Definition at line 157 of file handler_impl.hpp.

◆ MNDRDesc

detail::NDRDescT sycl::_V1::detail::handler_impl::MNDRDesc

Struct that encodes global size, local size, ...

Definition at line 174 of file handler_impl.hpp.

◆ MOffset

size_t sycl::_V1::detail::handler_impl::MOffset = 0

Offset into a device_global for copy operations.

Definition at line 102 of file handler_impl.hpp.

◆ MSignalValue

std::optional<uint64_t> sycl::_V1::detail::handler_impl::MSignalValue

Definition at line 139 of file handler_impl.hpp.

◆ MSrcImageDesc

ur_image_desc_t sycl::_V1::detail::handler_impl::MSrcImageDesc

Definition at line 126 of file handler_impl.hpp.

◆ MSrcImageFormat

ur_image_format_t sycl::_V1::detail::handler_impl::MSrcImageFormat

Definition at line 128 of file handler_impl.hpp.

◆ MSrcOffset

ur_rect_offset_t sycl::_V1::detail::handler_impl::MSrcOffset

Definition at line 132 of file handler_impl.hpp.

◆ MSrcPitch

size_t sycl::_V1::detail::handler_impl::MSrcPitch

Definition at line 96 of file handler_impl.hpp.

◆ MSubgraphNode

std::shared_ptr<ext::oneapi::experimental::detail::node_impl> sycl::_V1::detail::handler_impl::MSubgraphNode

Storage for a node created from a subgraph submission.

Definition at line 188 of file handler_impl.hpp.

◆ MSubmissionPrimaryQueue

std::shared_ptr<queue_impl> sycl::_V1::detail::handler_impl::MSubmissionPrimaryQueue

Shared pointer to the primary queue implementation.

This is different from the queue associated with the handler if the corresponding submission is a fallback from a previous submission.

Definition at line 76 of file handler_impl.hpp.

◆ MSubmissionSecondaryQueue

std::shared_ptr<queue_impl> sycl::_V1::detail::handler_impl::MSubmissionSecondaryQueue

Shared pointer to the secondary queue implementation.

Nullptr if no secondary queue fallback was given in the associated submission. This is equal to the queue associated with the handler if the corresponding submission is a fallback from a previous submission.

Definition at line 82 of file handler_impl.hpp.

◆ MSubmissionState

HandlerSubmissionState sycl::_V1::detail::handler_impl::MSubmissionState = HandlerSubmissionState::NO_STATE

Registers mutually exclusive submission states.

Definition at line 71 of file handler_impl.hpp.

Referenced by isStateExplicitKernelBundle(), setStateExplicitKernelBundle(), and setStateSpecConstSet().

◆ MUserFacingNodeType

sycl::ext::oneapi::experimental::node_type sycl::_V1::detail::handler_impl::MUserFacingNodeType

◆ MWaitValue

std::optional<uint64_t> sycl::_V1::detail::handler_impl::MWaitValue

Definition at line 138 of file handler_impl.hpp.

◆ MWidth

size_t sycl::_V1::detail::handler_impl::MWidth

Definition at line 98 of file handler_impl.hpp.


The documentation for this class was generated from the following file: