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

"Execute kernel" command group class. More...

#include <sycl/detail/cg.hpp>

Inheritance diagram for sycl::_V1::detail::CGExecKernel:
Collaboration diagram for sycl::_V1::detail::CGExecKernel:

Public Member Functions

 CGExecKernel (NDRDescT NDRDesc, std::unique_ptr< HostKernelBase > HKernel, std::shared_ptr< detail::kernel_impl > SyclKernel, std::shared_ptr< detail::kernel_bundle_impl > KernelBundle, CG::StorageInitHelper CGData, std::vector< ArgDesc > Args, std::string KernelName, detail::OSModuleHandle OSModuleHandle, std::vector< std::shared_ptr< detail::stream_impl >> Streams, std::vector< std::shared_ptr< const void >> AuxiliaryResources, CGTYPE Type, RT::PiKernelCacheConfig KernelCacheConfig, detail::code_location loc={})
 
std::vector< ArgDescgetArguments () const
 
std::string getKernelName () const
 
std::vector< std::shared_ptr< detail::stream_impl > > getStreams () const
 
std::vector< std::shared_ptr< const void > > getAuxiliaryResources () const
 
std::shared_ptr< detail::kernel_bundle_implgetKernelBundle ()
 
void clearStreams ()
 
bool hasStreams ()
 
void clearAuxiliaryResources ()
 
bool hasAuxiliaryResources ()
 
- Public Member Functions inherited from sycl::_V1::detail::CG
 CG (CGTYPE Type, StorageInitHelper D, detail::code_location loc={})
 
 CG (CG &&CommandGroup)=default
 
CGTYPE getType ()
 
std::vector< std::vector< char > > & getArgsStorage ()
 
std::vector< detail::AccessorImplPtr > & getAccStorage ()
 
std::vector< std::shared_ptr< const void > > & getSharedPtrStorage ()
 
std::vector< AccessorImplHost * > & getRequirements ()
 
std::vector< detail::EventImplPtr > & getEvents ()
 
virtual ~CG ()=default
 

Public Attributes

NDRDescT MNDRDesc
 Stores ND-range description. More...
 
std::unique_ptr< HostKernelBaseMHostKernel
 
std::shared_ptr< detail::kernel_implMSyclKernel
 
std::shared_ptr< detail::kernel_bundle_implMKernelBundle
 
std::vector< ArgDescMArgs
 
std::string MKernelName
 
detail::OSModuleHandle MOSModuleHandle
 
std::vector< std::shared_ptr< detail::stream_impl > > MStreams
 
std::vector< std::shared_ptr< const void > > MAuxiliaryResources
 
RT::PiKernelCacheConfig MKernelCacheConfig
 
- Public Attributes inherited from sycl::_V1::detail::CG
std::string MFunctionName
 
std::string MFileName
 
int32_t MLine
 
int32_t MColumn
 

Additional Inherited Members

- Public Types inherited from sycl::_V1::detail::CG
enum  CGTYPE : unsigned int {
  None = 0, Kernel = 1, CopyAccToPtr = 2, CopyPtrToAcc = 3,
  CopyAccToAcc = 4, Barrier = 5, BarrierWaitlist = 6, Fill = 7,
  UpdateHost = 8, RunOnHostIntel = 9, CopyUSM = 10, FillUSM = 11,
  PrefetchUSM = 12, CodeplayInteropTask = 13, CodeplayHostTask = 14, AdviseUSM = 15,
  Copy2DUSM = 16, Fill2DUSM = 17, Memset2DUSM = 18, CopyToDeviceGlobal = 19,
  CopyFromDeviceGlobal = 20, ReadWriteHostPipe = 21
}
 Type of the command group. More...
 

Detailed Description

"Execute kernel" command group class.

Definition at line 150 of file cg.hpp.

Constructor & Destructor Documentation

◆ CGExecKernel()

sycl::_V1::detail::CGExecKernel::CGExecKernel ( NDRDescT  NDRDesc,
std::unique_ptr< HostKernelBase HKernel,
std::shared_ptr< detail::kernel_impl SyclKernel,
std::shared_ptr< detail::kernel_bundle_impl KernelBundle,
CG::StorageInitHelper  CGData,
std::vector< ArgDesc Args,
std::string  KernelName,
detail::OSModuleHandle  OSModuleHandle,
std::vector< std::shared_ptr< detail::stream_impl >>  Streams,
std::vector< std::shared_ptr< const void >>  AuxiliaryResources,
CGTYPE  Type,
RT::PiKernelCacheConfig  KernelCacheConfig,
detail::code_location  loc = {} 
)
inline

Definition at line 164 of file cg.hpp.

Member Function Documentation

◆ clearAuxiliaryResources()

void sycl::_V1::detail::CGExecKernel::clearAuxiliaryResources ( )
inline

Definition at line 202 of file cg.hpp.

◆ clearStreams()

void sycl::_V1::detail::CGExecKernel::clearStreams ( )
inline

Definition at line 199 of file cg.hpp.

◆ getArguments()

std::vector<ArgDesc> sycl::_V1::detail::CGExecKernel::getArguments ( ) const
inline

Definition at line 185 of file cg.hpp.

◆ getAuxiliaryResources()

std::vector<std::shared_ptr<const void> > sycl::_V1::detail::CGExecKernel::getAuxiliaryResources ( ) const
inline

Definition at line 191 of file cg.hpp.

◆ getKernelBundle()

std::shared_ptr<detail::kernel_bundle_impl> sycl::_V1::detail::CGExecKernel::getKernelBundle ( )
inline

Definition at line 195 of file cg.hpp.

◆ getKernelName()

std::string sycl::_V1::detail::CGExecKernel::getKernelName ( ) const
inline

Definition at line 186 of file cg.hpp.

◆ getStreams()

std::vector<std::shared_ptr<detail::stream_impl> > sycl::_V1::detail::CGExecKernel::getStreams ( ) const
inline

Definition at line 187 of file cg.hpp.

Referenced by sycl::_V1::detail::Scheduler::addCG().

◆ hasAuxiliaryResources()

bool sycl::_V1::detail::CGExecKernel::hasAuxiliaryResources ( )
inline

Definition at line 203 of file cg.hpp.

◆ hasStreams()

bool sycl::_V1::detail::CGExecKernel::hasStreams ( )
inline

Definition at line 200 of file cg.hpp.

Member Data Documentation

◆ MArgs

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

Definition at line 157 of file cg.hpp.

◆ MAuxiliaryResources

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

Definition at line 161 of file cg.hpp.

◆ MHostKernel

std::unique_ptr<HostKernelBase> sycl::_V1::detail::CGExecKernel::MHostKernel

Definition at line 154 of file cg.hpp.

◆ MKernelBundle

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

Definition at line 156 of file cg.hpp.

◆ MKernelCacheConfig

RT::PiKernelCacheConfig sycl::_V1::detail::CGExecKernel::MKernelCacheConfig

Definition at line 162 of file cg.hpp.

◆ MKernelName

std::string sycl::_V1::detail::CGExecKernel::MKernelName

Definition at line 158 of file cg.hpp.

◆ MNDRDesc

NDRDescT sycl::_V1::detail::CGExecKernel::MNDRDesc

Stores ND-range description.

Definition at line 153 of file cg.hpp.

◆ MOSModuleHandle

detail::OSModuleHandle sycl::_V1::detail::CGExecKernel::MOSModuleHandle

Definition at line 159 of file cg.hpp.

◆ MStreams

std::vector<std::shared_ptr<detail::stream_impl> > sycl::_V1::detail::CGExecKernel::MStreams

Definition at line 160 of file cg.hpp.

◆ MSyclKernel

std::shared_ptr<detail::kernel_impl> sycl::_V1::detail::CGExecKernel::MSyclKernel

Definition at line 155 of file cg.hpp.


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