DPC++ Runtime
Runtime libraries for oneAPI DPC++
commands.hpp File Reference
#include <atomic>
#include <cstdint>
#include <deque>
#include <memory>
#include <optional>
#include <set>
#include <unordered_set>
#include <vector>
#include <detail/accessor_impl.hpp>
#include <detail/event_impl.hpp>
#include <detail/program_manager/program_manager.hpp>
#include <sycl/access/access.hpp>
#include <sycl/detail/cg.hpp>
Include dependency graph for commands.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  sycl::_V1::detail::EnqueueResultT
 Result of command enqueueing. More...
 
struct  sycl::_V1::detail::DepDesc
 Dependency between two commands. More...
 
class  sycl::_V1::detail::Command
 The Command class represents some action that needs to be performed on one or more memory objects. More...
 
struct  sycl::_V1::detail::Command::Marks
 
class  sycl::_V1::detail::EmptyCommand
 The empty command does nothing during enqueue. More...
 
class  sycl::_V1::detail::ReleaseCommand
 The release command enqueues release of a memory object instance allocated on Host or underlying framework. More...
 
class  sycl::_V1::detail::AllocaCommandBase
 Base class for memory allocation commands. More...
 
class  sycl::_V1::detail::AllocaCommand
 The alloca command enqueues allocation of instance of memory object on Host or underlying framework. More...
 
class  sycl::_V1::detail::AllocaSubBufCommand
 The AllocaSubBuf command enqueues creation of sub-buffer of memory object. More...
 
class  sycl::_V1::detail::MapMemObject
 The map command enqueues mapping of device memory onto host memory. More...
 
class  sycl::_V1::detail::UnMapMemObject
 The unmap command removes mapping of host memory onto device memory. More...
 
class  sycl::_V1::detail::MemCpyCommand
 The mem copy command enqueues memory copy between two instances of memory object. More...
 
class  sycl::_V1::detail::MemCpyCommandHost
 The mem copy host command enqueues memory copy between two instances of memory object. More...
 
class  sycl::_V1::detail::ExecCGCommand
 The exec CG command enqueues execution of kernel or explicit memory operation. More...
 
class  sycl::_V1::detail::UpdateHostRequirementCommand
 
class  sycl::_V1::detail::KernelFusionCommand
 The KernelFusionCommand is placed in the execution graph together with the individual kernels of the fusion list to control kernel fusion. More...
 
class  sycl::_V1::detail::UpdateCommandBufferCommand
 

Namespaces

 sycl
 
 sycl::_V1
 
 sycl::_V1::ext
 
 sycl::_V1::ext::oneapi
 
 sycl::_V1::ext::oneapi::experimental
 
 sycl::_V1::ext::oneapi::experimental::detail
 
 sycl::_V1::detail
 

Typedefs

using sycl::_V1::detail::StreamImplPtr = std::shared_ptr< detail::stream_impl >
 

Enumerations

enum  sycl::_V1::detail::BlockingT { sycl::_V1::detail::NON_BLOCKING = 0 , sycl::_V1::detail::BLOCKING }
 

Functions

pi_int32 sycl::_V1::detail::enqueueReadWriteHostPipe (const QueueImplPtr &Queue, const std::string &PipeName, bool blocking, void *ptr, size_t size, std::vector< sycl::detail::pi::PiEvent > &RawEvents, const detail::EventImplPtr &OutEventImpl, bool read)
 
pi_int32 sycl::_V1::detail::enqueueImpKernel (const QueueImplPtr &Queue, NDRDescT &NDRDesc, std::vector< ArgDesc > &Args, const std::shared_ptr< detail::kernel_bundle_impl > &KernelBundleImplPtr, const std::shared_ptr< detail::kernel_impl > &MSyclKernel, const std::string &KernelName, std::vector< sycl::detail::pi::PiEvent > &RawEvents, const detail::EventImplPtr &OutEventImpl, const std::function< void *(Requirement *Req)> &getMemAllocationFunc, sycl::detail::pi::PiKernelCacheConfig KernelCacheConfig, const bool KernelIsCooperative)
 
pi_int32 sycl::_V1::detail::enqueueImpCommandBufferKernel (context Ctx, DeviceImplPtr DeviceImpl, sycl::detail::pi::PiExtCommandBuffer CommandBuffer, const CGExecKernel &CommandGroup, std::vector< sycl::detail::pi::PiExtSyncPoint > &SyncPoints, sycl::detail::pi::PiExtSyncPoint *OutSyncPoint, sycl::detail::pi::PiExtCommandBufferCommand *OutCommand, const std::function< void *(Requirement *Req)> &getMemAllocationFunc)
 
void sycl::_V1::detail::SetArgBasedOnType (const detail::plugin &Plugin, sycl::detail::pi::PiKernel Kernel, const std::shared_ptr< device_image_impl > &DeviceImageImpl, const std::function< void *(Requirement *Req)> &getMemAllocationFunc, const sycl::context &Context, bool IsHost, detail::ArgDesc &Arg, size_t NextTrueIndex)
 
void sycl::_V1::detail::applyFuncOnFilteredArgs (const KernelArgMask *EliminatedArgMask, std::vector< ArgDesc > &Args, std::function< void(detail::ArgDesc &Arg, int NextTrueIndex)> Func)
 
void sycl::_V1::detail::ReverseRangeDimensionsForKernel (NDRDescT &NDR)