Implementation of PI Program on CUDA Module object. More...
#include <cuda/pi_cuda.hpp>
Classes | |
class | SpecConstantShim |
Public Types | |
enum | state { IL, Native, Object, Exe, Invalid } |
using | native_type = CUmodule |
using | native_type = hipModule_t |
Public Attributes | |
native_type | module_ |
const char * | binary_ |
size_t | binarySizeInBytes_ |
std::atomic_uint32_t | refCount_ |
_pi_context * | context_ |
std::unordered_map< std::string, std::tuple< uint32_t, uint32_t, uint32_t > > | kernelReqdWorkGroupSizeMD_ |
char | errorLog_ [MAX_LOG_SIZE] |
char | infoLog_ [MAX_LOG_SIZE] |
std::string | buildOptions_ |
pi_program_build_status | buildStatus_ = PI_PROGRAM_BUILD_STATUS_NONE |
pi_context | Context |
const pi_context | Context |
const bool | OwnZeModule |
const std::string | ErrorMessage |
state | State |
std::unique_ptr< uint8_t[]> | Code |
size_t | CodeLength |
std::unordered_map< uint32_t, const void * > | SpecConstants |
std::string | BuildFlags |
ze_module_handle_t | ZeModule |
ze_module_build_log_handle_t | ZeBuildLog |
Static Public Attributes | |
constexpr static size_t | MAX_LOG_SIZE = 8192u |
Implementation of PI Program on CUDA Module object.
Implementation of PI Program on HIP Module object.
Definition at line 569 of file pi_cuda.hpp.
using _pi_program::native_type = hipModule_t |
Definition at line 508 of file pi_hip.hpp.
using _pi_program::native_type = CUmodule |
Definition at line 570 of file pi_cuda.hpp.
enum _pi_program::state |
Enumerator | |
---|---|
IL | |
Native | |
Object | |
Exe | |
Invalid |
Definition at line 1272 of file pi_level_zero.hpp.
_pi_program::_pi_program | ( | pi_context | ctxt | ) |
Definition at line 557 of file pi_cuda.cpp.
_pi_program::~_pi_program | ( | ) |
Definition at line 563 of file pi_cuda.cpp.
References context_, and cuda_piContextRelease().
|
inline |
Definition at line 203 of file pi_esimd_emulator.hpp.
_pi_program::_pi_program | ( | pi_context | ctxt | ) |
_pi_program::~_pi_program | ( | ) |
|
inline |
Definition at line 1323 of file pi_level_zero.hpp.
References USMMemoryAllocBase::Context.
|
inline |
Definition at line 1331 of file pi_level_zero.hpp.
References USMMemoryAllocBase::Context.
|
inline |
Definition at line 1337 of file pi_level_zero.hpp.
References USMMemoryAllocBase::Context.
|
inline |
Definition at line 1343 of file pi_level_zero.hpp.
References USMMemoryAllocBase::Context.
_pi_program::~_pi_program | ( | ) |
Definition at line 613 of file pi_cuda.cpp.
References binary_, buildOptions_, buildStatus_, errorLog_, infoLog_, MAX_LOG_SIZE, module_, PI_BUILD_PROGRAM_FAILURE, PI_PROGRAM_BUILD_STATUS_ERROR, PI_PROGRAM_BUILD_STATUS_SUCCESS, and PI_SUCCESS.
Referenced by cuda_piProgramBuild(), cuda_piProgramCompile(), hip_piProgramBuild(), and hip_piProgramCompile().
|
inlinenoexcept |
Definition at line 534 of file pi_hip.hpp.
References refCount_.
|
inlinenoexcept |
Definition at line 603 of file pi_cuda.hpp.
References refCount_.
Referenced by cuda_piProgramRelease(), and hip_piProgramRelease().
|
inlinenoexcept |
Definition at line 530 of file pi_hip.hpp.
References module_.
|
inlinenoexcept |
Definition at line 599 of file pi_cuda.hpp.
References module_.
Referenced by cuda_piextGetDeviceFunctionPointer(), cuda_piextProgramGetNativeHandle(), cuda_piKernelCreate(), cuda_piProgramRelease(), hip_piextGetDeviceFunctionPointer(), hip_piextProgramGetNativeHandle(), hip_piKernelCreate(), and hip_piProgramRelease().
|
inline |
Definition at line 528 of file pi_hip.hpp.
References context_.
|
inline |
Definition at line 597 of file pi_cuda.hpp.
References context_.
Referenced by cuda_piextGetDeviceFunctionPointer(), cuda_piKernelCreate(), cuda_piProgramBuild(), cuda_piProgramCompile(), cuda_piProgramRelease(), hip_piextGetDeviceFunctionPointer(), hip_piKernelCreate(), hip_piProgramBuild(), hip_piProgramCompile(), and hip_piProgramRelease().
|
inlinenoexcept |
Definition at line 536 of file pi_hip.hpp.
References refCount_.
|
inlinenoexcept |
Definition at line 605 of file pi_cuda.hpp.
References refCount_.
Referenced by cuda_piProgramGetInfo(), cuda_piProgramRelease(), cuda_piProgramRetain(), hip_piProgramGetInfo(), hip_piProgramRelease(), and hip_piProgramRetain().
|
inlinenoexcept |
Definition at line 532 of file pi_hip.hpp.
References refCount_.
|
inlinenoexcept |
Definition at line 601 of file pi_cuda.hpp.
References refCount_.
Referenced by cuda_piProgramRetain(), and hip_piProgramRetain().
Definition at line 605 of file pi_cuda.cpp.
References binary_, binarySizeInBytes_, cl::sycl::length(), and PI_SUCCESS.
pi_result _pi_program::set_metadata | ( | const pi_device_binary_property * | metadata, |
size_t | length | ||
) |
Definition at line 578 of file pi_cuda.cpp.
References __SYCL_PI_PROGRAM_METADATA_TAG_REQD_WORK_GROUP_SIZE, get_kernel_metadata(), kernelReqdWorkGroupSizeMD_, cl::sycl::length(), cl::sycl::detail::make_tuple(), _pi_device_binary_property_struct::Name, PI_SUCCESS, _pi_device_binary_property_struct::ValAddr, and _pi_device_binary_property_struct::ValSize.
const char * _pi_program::binary_ |
Definition at line 572 of file pi_cuda.hpp.
Referenced by build_program(), cuda_piProgramGetInfo(), cuda_piProgramLink(), hip_piProgramGetInfo(), and set_binary().
size_t _pi_program::binarySizeInBytes_ |
Definition at line 573 of file pi_cuda.hpp.
Referenced by cuda_piProgramGetInfo(), cuda_piProgramLink(), hip_piProgramGetInfo(), and set_binary().
std::string _pi_program::BuildFlags |
Definition at line 1374 of file pi_level_zero.hpp.
Referenced by piProgramCompile(), and piProgramLink().
std::string _pi_program::buildOptions_ |
Definition at line 584 of file pi_cuda.hpp.
Referenced by build_program(), cuda_piProgramGetBuildInfo(), and hip_piProgramGetBuildInfo().
pi_program_build_status _pi_program::buildStatus_ = PI_PROGRAM_BUILD_STATUS_NONE |
Definition at line 585 of file pi_cuda.hpp.
Referenced by build_program(), cuda_piProgramGetBuildInfo(), and hip_piProgramGetBuildInfo().
std::unique_ptr<uint8_t[]> _pi_program::Code |
Definition at line 1363 of file pi_level_zero.hpp.
Referenced by piProgramBuild(), piProgramGetInfo(), and piProgramLink().
size_t _pi_program::CodeLength |
Definition at line 1364 of file pi_level_zero.hpp.
Referenced by piProgramBuild(), piProgramGetInfo(), and piProgramLink().
pi_context _pi_program::Context |
Definition at line 206 of file pi_esimd_emulator.hpp.
Referenced by _pi_kernel::initialize(), piKernelGetInfo(), piKernelRelease(), piProgramBuild(), and piProgramGetInfo().
const pi_context _pi_program::Context |
Definition at line 1349 of file pi_level_zero.hpp.
_pi_context * _pi_program::context_ |
Definition at line 575 of file pi_cuda.hpp.
Referenced by cuda_piProgramGetInfo(), get_context(), hip_piProgramGetInfo(), and ~_pi_program().
char _pi_program::errorLog_ |
Definition at line 583 of file pi_cuda.hpp.
Referenced by build_program().
const std::string _pi_program::ErrorMessage |
Definition at line 1357 of file pi_level_zero.hpp.
Referenced by piProgramGetBuildInfo().
char _pi_program::infoLog_ |
Definition at line 583 of file pi_cuda.hpp.
Referenced by build_program(), cuda_piProgramGetBuildInfo(), and hip_piProgramGetBuildInfo().
std::unordered_map<std::string, std::tuple<uint32_t, uint32_t, uint32_t> > _pi_program::kernelReqdWorkGroupSizeMD_ |
Definition at line 579 of file pi_cuda.hpp.
Referenced by set_metadata().
|
staticconstexpr |
Definition at line 581 of file pi_cuda.hpp.
Referenced by build_program(), cuda_piProgramGetBuildInfo(), and hip_piProgramGetBuildInfo().
native_type _pi_program::module_ |
Definition at line 571 of file pi_cuda.hpp.
Referenced by build_program(), and get().
const bool _pi_program::OwnZeModule |
Definition at line 1353 of file pi_level_zero.hpp.
std::atomic_uint32_t _pi_program::refCount_ |
Definition at line 574 of file pi_cuda.hpp.
Referenced by decrement_reference_count(), get_reference_count(), and increment_reference_count().
std::unordered_map<uint32_t, const void *> _pi_program::SpecConstants |
Definition at line 1370 of file pi_level_zero.hpp.
Referenced by piextProgramSetSpecializationConstant(), and _pi_program::SpecConstantShim::SpecConstantShim().
state _pi_program::State |
Definition at line 1359 of file pi_level_zero.hpp.
Referenced by piextGetDeviceFunctionPointer(), piextProgramGetNativeHandle(), piKernelCreate(), piProgramBuild(), piProgramCompile(), piProgramGetBuildInfo(), and piProgramGetInfo().
ze_module_build_log_handle_t _pi_program::ZeBuildLog |
Definition at line 1380 of file pi_level_zero.hpp.
Referenced by piProgramBuild(), and piProgramGetBuildInfo().
ze_module_handle_t _pi_program::ZeModule |
Definition at line 1377 of file pi_level_zero.hpp.
Referenced by piextGetDeviceFunctionPointer(), piextProgramGetNativeHandle(), piKernelCreate(), piProgramBuild(), and piProgramGetInfo().