CLRX  1
An unofficial OpenCL extensions designed for Radeon GPUs
Public Member Functions | List of all members
CLRX::AmdMainGPUBinary64 Class Reference

AMD main binary for GPU for 64-bit mode. More...

#include <AmdBinaries.h>

Inheritance diagram for CLRX::AmdMainGPUBinary64:
CLRX::AmdMainGPUBinaryBase CLRX::AmdMainBinaryBase CLRX::NonCopyableAndNonMovable

Public Member Functions

 AmdMainGPUBinary64 (size_t binaryCodeSize, cxbyte *binaryCode, Flags creationFlags=AMDBIN_CREATE_ALL)
 
GPUDeviceType determineGPUDeviceType () const
 
bool hasKernelInfo () const
 returns true if binary has kernel informations
 
bool hasKernelInfoMap () const
 returns true if binary has kernel informations map
 
bool hasInnerBinaryMap () const
 returns true if binary has inner binary map
 
bool hasInfoStrings () const
 returns true if binary has info strings
 
bool hasKernelHeaders () const
 return true if binary has kernel headers
 
bool hasKernelHeaderMap () const
 return true if binary has kernel header map
 
- Public Member Functions inherited from CLRX::AmdMainGPUBinaryBase
size_t getInnerBinariesNum () const
 get number of inner binaries
 
AmdInnerGPUBinary32getInnerBinary (size_t index)
 get inner binary with specified index
 
const AmdInnerGPUBinary32getInnerBinary (size_t index) const
 get inner binary with specified index
 
const AmdInnerGPUBinary32getInnerBinary (const char *name) const
 get inner binary with specified name (requires inner binary map)
 
size_t getMetadataSize (size_t index) const
 get metadata size for specified inner binary
 
const char * getMetadata (size_t index) const
 get metadata for specified inner binary
 
char * getMetadata (size_t index)
 get metadata for specified inner binary
 
size_t getGlobalDataSize () const
 get global data size
 
const cxbyte * getGlobalData () const
 get global data
 
cxbyte * getGlobalData ()
 get global data
 
size_t getKernelHeadersNum () const
 get kernel header number
 
const AmdGPUKernelHeadergetKernelHeaderEntry (size_t index) const
 get kernel header entry for specified index
 
const AmdGPUKernelHeadergetKernelHeaderEntry (const char *name) const
 get kernel header entry for specified index
 
AmdGPUKernelHeadergetKernelHeaderEntry (size_t index)
 get kernel header entry for specified index
 
size_t getKernelHeaderSize (size_t index) const
 get kernel header size for specified index
 
const cxbyte * getKernelHeader (size_t index) const
 get kernel header for specified index
 
cxbyte * getKernelHeader (size_t index)
 get kernel header for specified index
 
- Public Member Functions inherited from CLRX::AmdMainBinaryBase
AmdMainType getType () const
 get binary type
 
size_t getKernelInfosNum () const
 get kernel informations number
 
const KernelInfogetKernelInfos () const
 get kernel informations array
 
const KernelInfogetKernelInfo (size_t index) const
 get kernel information with specified index
 
const KernelInfogetKernelInfo (const char *name) const
 get kernel information with specified kernel name (requires kernel info map)
 
const CStringgetDriverInfo () const
 get driver info string
 
const CStringgetCompileOptions () const
 get compile options string
 
- Public Member Functions inherited from CLRX::NonCopyableAndNonMovable
 NonCopyableAndNonMovable ()
 constructor
 
 NonCopyableAndNonMovable (const NonCopyableAndNonMovable &)=delete
 copy-constructor
 
 NonCopyableAndNonMovable (NonCopyableAndNonMovable &&)=delete
 move-constructor
 
NonCopyableAndNonMovableoperator= (const NonCopyableAndNonMovable &)=delete
 copy-assignment
 
NonCopyableAndNonMovableoperator= (NonCopyableAndNonMovable &&)=delete
 move-asignment
 

Additional Inherited Members

- Public Types inherited from CLRX::AmdMainGPUBinaryBase
typedef Array< std::pair< CString, size_t > > InnerBinaryMap
 inner binary map type
 
typedef Array< std::pair< CString, size_t > > KernelHeaderMap
 kernel header map type
 
- Public Types inherited from CLRX::AmdMainBinaryBase
typedef Array< std::pair< CString, size_t > > KernelInfoMap
 Kernel info map.
 
- Protected Member Functions inherited from CLRX::AmdMainGPUBinaryBase
 AmdMainGPUBinaryBase (AmdMainType type)
 constructor
 
template<typename Types >
void initMainGPUBinary (typename Types::ElfBinary &binary)
 initialize main gpu binary (internal use only)
 
- Protected Member Functions inherited from CLRX::AmdMainBinaryBase
 AmdMainBinaryBase (AmdMainType type)
 constructor
 
- Protected Attributes inherited from CLRX::AmdMainGPUBinaryBase
Array< AmdInnerGPUBinary32innerBinaries
 inner binaries
 
InnerBinaryMap innerBinaryMap
 inner binary map
 
std::unique_ptr< AmdGPUKernelMetadata[]> metadatas
 AMD metadatas.
 
Array< AmdGPUKernelHeaderkernelHeaders
 kernel headers
 
KernelHeaderMap kernelHeaderMap
 kernel header map
 
size_t globalDataSize
 global data size
 
cxbyte * globalData
 global data content
 
- Protected Attributes inherited from CLRX::AmdMainBinaryBase
AmdMainType type
 type of binaries
 
Array< KernelInfokernelInfos
 kernel informations
 
KernelInfoMap kernelInfosMap
 kernel informations map
 
CString driverInfo
 driver info string
 
CString compileOptions
 compiler options string
 

Detailed Description

AMD main binary for GPU for 64-bit mode.

This object doesn't copy binary code content. Only it takes and uses a binary code.

Constructor & Destructor Documentation

CLRX::AmdMainGPUBinary64::AmdMainGPUBinary64 ( size_t  binaryCodeSize,
cxbyte *  binaryCode,
Flags  creationFlags = AMDBIN_CREATE_ALL 
)

constructor

Parameters
binaryCodeSizebinary code size
binaryCodepointer to binary code
creationFlagsflags that specified what will be created during creation

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