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

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

#include <CL/sycl/detail/cg.hpp>

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

Public Member Functions

 CGExecKernel (NDRDescT NDRDesc, std::unique_ptr< HostKernelBase > HKernel, std::shared_ptr< detail::kernel_impl > SyclKernel, std::vector< std::vector< char >> ArgsStorage, std::vector< detail::AccessorImplPtr > AccStorage, std::vector< std::shared_ptr< const void >> SharedPtrStorage, std::vector< Requirement * > Requirements, std::vector< detail::EventImplPtr > Events, 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, 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 cl::sycl::detail::CG
 CG (CGTYPE Type, std::vector< std::vector< char >> ArgsStorage, std::vector< detail::AccessorImplPtr > AccStorage, std::vector< std::shared_ptr< const void >> SharedPtrStorage, std::vector< Requirement * > Requirements, std::vector< detail::EventImplPtr > Events, detail::code_location loc={})
 
 CG (CG &&CommandGroup)=default
 
CGTYPE getType ()
 
CG_VERSION getVersion ()
 
std::shared_ptr< std::vector< ExtendedMemberT > > getExtendedMembers ()
 
virtual ~CG ()=default
 

Public Attributes

NDRDescT MNDRDesc
 Stores ND-range description. More...
 
std::unique_ptr< HostKernelBaseMHostKernel
 
std::shared_ptr< detail::kernel_implMSyclKernel
 
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
 
- Public Attributes inherited from cl::sycl::detail::CG
std::vector< Requirement * > MRequirements
 List of requirements that specify which memory is needed for the command group to be executed. More...
 
std::vector< detail::EventImplPtrMEvents
 List of events that order the execution of this CG. More...
 
std::string MFunctionName
 
std::string MFileName
 
int32_t MLine
 
int32_t MColumn
 

Additional Inherited Members

- Public Types inherited from cl::sycl::detail::CG
enum  CG_VERSION : unsigned char { CG_VERSION::V0 = 0, CG_VERSION::V1 = 1 }
 
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
}
 Type of the command group. More...
 

Detailed Description

"Execute kernel" command group class.

Definition at line 241 of file cg.hpp.

Constructor & Destructor Documentation

◆ CGExecKernel()

cl::sycl::detail::CGExecKernel::CGExecKernel ( NDRDescT  NDRDesc,
std::unique_ptr< HostKernelBase HKernel,
std::shared_ptr< detail::kernel_impl SyclKernel,
std::vector< std::vector< char >>  ArgsStorage,
std::vector< detail::AccessorImplPtr AccStorage,
std::vector< std::shared_ptr< const void >>  SharedPtrStorage,
std::vector< Requirement * >  Requirements,
std::vector< detail::EventImplPtr Events,
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,
detail::code_location  loc = {} 
)
inline

Definition at line 253 of file cg.hpp.

Member Function Documentation

◆ clearAuxiliaryResources()

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

Definition at line 302 of file cg.hpp.

◆ clearStreams()

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

Definition at line 299 of file cg.hpp.

◆ getArguments()

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

Definition at line 277 of file cg.hpp.

◆ getAuxiliaryResources()

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

Definition at line 283 of file cg.hpp.

◆ getKernelBundle()

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

Definition at line 287 of file cg.hpp.

◆ getKernelName()

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

Definition at line 278 of file cg.hpp.

◆ getStreams()

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

Definition at line 279 of file cg.hpp.

◆ hasAuxiliaryResources()

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

Definition at line 303 of file cg.hpp.

◆ hasStreams()

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

Definition at line 300 of file cg.hpp.

Member Data Documentation

◆ MArgs

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

Definition at line 247 of file cg.hpp.

◆ MAuxiliaryResources

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

Definition at line 251 of file cg.hpp.

◆ MHostKernel

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

Definition at line 245 of file cg.hpp.

◆ MKernelName

std::string cl::sycl::detail::CGExecKernel::MKernelName

Definition at line 248 of file cg.hpp.

◆ MNDRDesc

NDRDescT cl::sycl::detail::CGExecKernel::MNDRDesc

Stores ND-range description.

Definition at line 244 of file cg.hpp.

Referenced by cl::sycl::detail::ExecCGCommand::emitInstrumentationData().

◆ MOSModuleHandle

detail::OSModuleHandle cl::sycl::detail::CGExecKernel::MOSModuleHandle

Definition at line 249 of file cg.hpp.

◆ MStreams

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

Definition at line 250 of file cg.hpp.

◆ MSyclKernel

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

Definition at line 246 of file cg.hpp.


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