From 0e7550b8ac123c2cb8fae4ccf388cbfdafea1864 Mon Sep 17 00:00:00 2001 From: foreman Date: Tue, 25 Aug 2015 17:23:48 -0400 Subject: [PATCH] P4 to Git Change 1184494 by gandryey@gera-dev-w7 on 2015/08/25 17:04:02 ECR #304775 - Remove unused fields Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#294 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.cpp#225 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.hpp#133 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#136 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.h#54 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/backend.cpp#14 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/backend.h#10 edit [ROCm/clr commit: 03f7ac19ab3594aadc093bbf8ac4df1e263458ec] --- .../rocclr/runtime/device/gpu/gpukernel.cpp | 40 ++++++++--------- .../rocclr/runtime/device/gpu/gpuresource.cpp | 34 +++++--------- .../rocclr/runtime/device/gpu/gpuvirtual.hpp | 5 ++- .../device/gpu/gslbe/src/rt/GSLDevice.cpp | 44 ++----------------- .../device/gpu/gslbe/src/rt/GSLDevice.h | 6 +-- .../device/gpu/gslbe/src/rt/backend.cpp | 4 -- .../runtime/device/gpu/gslbe/src/rt/backend.h | 30 ------------- 7 files changed, 38 insertions(+), 125 deletions(-) diff --git a/projects/clr/rocclr/runtime/device/gpu/gpukernel.cpp b/projects/clr/rocclr/runtime/device/gpu/gpukernel.cpp index bf67766046..01b65d18c1 100644 --- a/projects/clr/rocclr/runtime/device/gpu/gpukernel.cpp +++ b/projects/clr/rocclr/runtime/device/gpu/gpukernel.cpp @@ -1279,7 +1279,7 @@ Kernel::setupProgramGrid( // Check for 64-bit metadata uint glbABIShift = (abi64Bit()) ? 1 : 0; - ProgramGrid* progGrid = &gpu.cal_.progGrid_; + VirtualGPU::CalVirtualDesc* progGrid = &gpu.cal_; // Finds local workgroup size findLocalWorkSize(workDim, gblWorkSize, lclWorkSize); @@ -1656,21 +1656,21 @@ Kernel::loadParameters( bool Kernel::run(VirtualGPU& gpu, GpuEvent* calEvent, bool lastRun) const { + const VirtualGPU::CalVirtualDesc* dispatch = gpu.cal(); // 8xx workaround for the number of groups limit in HW if (setBufferForNumGroup_) { - const ProgramGrid* programGrid = &gpu.cal()->progGrid_; ConstBuffer* cb = gpu.numGrpCb(); assert((cb != NULL) && "Runtime must have the constant buffer"); uint32_t* memPtr = reinterpret_cast(cb->sysMemCopy()); - memPtr[0] = programGrid->gridSize.width; - memPtr[1] = programGrid->gridSize.height; - memPtr[2] = programGrid->gridSize.depth; + memPtr[0] = dispatch->gridSize.width; + memPtr[1] = dispatch->gridSize.height; + memPtr[2] = dispatch->gridSize.depth; memPtr[3] = 0; - memPtr[4] = programGrid->gridBlock.width; - memPtr[5] = programGrid->gridBlock.height; - memPtr[6] = programGrid->gridBlock.depth; + memPtr[4] = dispatch->gridBlock.width; + memPtr[5] = dispatch->gridBlock.height; + memPtr[6] = dispatch->gridBlock.depth; memPtr[7] = 0; bool result = cb->uploadDataToHw(8 * sizeof(uint32_t)); @@ -1688,8 +1688,8 @@ Kernel::run(VirtualGPU& gpu, GpuEvent* calEvent, bool lastRun) const compProg->setWavesPerSH(waveLimiter_.getWavesPerSH(&gpu)); gpu.eventBegin(MainEngine); - gpu.rs()->Dispatch(gpu.cs(), &gpu.cal()->progGrid_.gridBlock, &gpu.cal()->progGrid_.partialGridBlock, - &gpu.cal()->progGrid_.gridSize, gpu.cal()->progGrid_.localSize, gpu.vmMems(), gpu.cal_.memCount_); + gpu.rs()->Dispatch(gpu.cs(), &dispatch->gridBlock, &dispatch->partialGridBlock, + &dispatch->gridSize, dispatch->localSize, gpu.vmMems(), dispatch->memCount_); gpu.eventEnd(MainEngine, *calEvent); // Unbind all resources @@ -2062,18 +2062,18 @@ Kernel::setArgument( case KernelArg::PointerHwLocal: { // Calculate current offset in the local ring - uint offset = gpu.cal_.progGrid_.localSize; + uint offset = gpu.cal_.localSize; uint extra = amd::alignUp(offset, arg->alignment_) - offset; offset = amd::alignUp(offset, arg->alignment_); size_t memSize = *static_cast(param); // Allocate new memory from the local ring - gpu.cal_.progGrid_.localSize += static_cast(memSize) + extra; + gpu.cal_.localSize += static_cast(memSize) + extra; // Copy current local argument's offset into the CB *(reinterpret_cast(memory + arg->cbPos_)) = offset; - CondLog((gpu.cal_.progGrid_.localSize > dev().info().localMemSize_), + CondLog((gpu.cal_.localSize > dev().info().localMemSize_), "Requested local size is bigger than reported!"); } break; @@ -2122,7 +2122,7 @@ bool Kernel::initLocalPrivateRanges(VirtualGPU& gpu) const { // Initialize HW local - gpu.cal_.progGrid_.localSize = hwLocalSize_; + gpu.cal_.localSize = hwLocalSize_; // Bind the global buffer if emulated local or private memory // was allocated by the kernel @@ -2158,13 +2158,13 @@ Kernel::setLocalPrivateRanges(VirtualGPU& gpu) const address cbBuf = gpu.cb(0)->sysMemCopy(); uint* data; uint gridSize = - gpu.cal()->progGrid_.gridSize.width * - gpu.cal()->progGrid_.gridSize.height * - gpu.cal()->progGrid_.gridSize.depth; + gpu.cal()->gridSize.width * + gpu.cal()->gridSize.height * + gpu.cal()->gridSize.depth; uint blockSize = - gpu.cal()->progGrid_.gridBlock.width * - gpu.cal()->progGrid_.gridBlock.height * - gpu.cal()->progGrid_.gridBlock.depth; + gpu.cal()->gridBlock.width * + gpu.cal()->gridBlock.height * + gpu.cal()->gridBlock.depth; //! \todo validate if the compiler still generates PrivateFixed if (flags() & PrivateFixed) { diff --git a/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp b/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp index 802525f20f..994d8df24f 100644 --- a/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp +++ b/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp @@ -340,7 +340,7 @@ Resource::create(MemoryType memType, CreateParams* params, bool heap) uint viewLevel = 0; uint viewFlags = 0; gslResource3D viewSize = {0}; - CALdomain viewOffset = {0}; + size_t viewOffset = 0; cmSurfFmt viewSurfFmt; gslChannelOrder viewChannelOrder = GSL_CHANNEL_ORDER_UNSPECIFIED; gslMemObjectAttribType viewResType; @@ -623,10 +623,7 @@ Resource::create(MemoryType memType, CreateParams* params, bool heap) viewSize.width = bytePitch / elementSize(); viewSize.height = 1; viewSize.depth = 1; - viewOffset.x = static_cast(offset() / elementSize()); - viewOffset.y = 0; - viewOffset.width = 0; - viewOffset.height = 0; + viewOffset = static_cast(offset() / elementSize()); gslResource = dev().resAllocView( view->resource_->gslResource(), viewSize, viewOffset, @@ -833,7 +830,7 @@ Resource::create(MemoryType memType, CreateParams* params, bool heap) viewSize.height = cal()->height_; viewSize.depth = 1; bytePitch = static_cast(gslResource->getPitch()); - viewOffset.x = 0; + viewOffset = 0; viewSurfFmt = cal()->format_; viewChannelOrder = cal()->channelOrder_; switch (d3dRes->layer_) { @@ -843,7 +840,7 @@ Resource::create(MemoryType memType, CreateParams* params, bool heap) break; case 1: // Y - plane size to the offset - viewOffset.x = bytePitch * viewSize.height * 2; + viewOffset = bytePitch * viewSize.height * 2; if (d3dRes->misc == 2) { // YV12 format U is 2 times smaller plane bytePitch /= 2; @@ -852,7 +849,7 @@ Resource::create(MemoryType memType, CreateParams* params, bool heap) case 2: // Y + U plane sizes to the offest. // U plane is 4 times smaller than Y => 5/2 - viewOffset.x = bytePitch * viewSize.height * 5 / 2; + viewOffset = bytePitch * viewSize.height * 5 / 2; // V is 2 times smaller plane bytePitch /= 2; break; @@ -900,10 +897,7 @@ Resource::create(MemoryType memType, CreateParams* params, bool heap) viewSize.width = cal()->width_ + (pinOffset() / elementSize()); viewSize.height = cal()->height_; viewSize.depth = cal()->depth_; - viewOffset.x = hostMemOffset / static_cast(elementSize()); - viewOffset.y = 0; - viewOffset.width = 0; - viewOffset.height = 0; + viewOffset = hostMemOffset / static_cast(elementSize()); viewSurfFmt = cal()->format_; viewChannelOrder = cal()->channelOrder_; } @@ -1669,7 +1663,7 @@ Resource::mapLayers(VirtualGPU* gpu, CALuint flags) // Loop through all layers for (uint i = startLayer_; i < layers; ++i) { gslResource3D gslSize; - CALdomain calOffset; + size_t calOffset; void* sliceAddr; size_t pitch; @@ -1677,11 +1671,7 @@ Resource::mapLayers(VirtualGPU* gpu, CALuint flags) gslSize.width = cal()->width_; gslSize.height = height; gslSize.depth = 1; - calOffset.x = 0; - calOffset.y = 0; - calOffset.width = 0; - calOffset.height = 0; - + calOffset = 0; sliceResource = dev().resAllocView( gslResource(), gslSize, calOffset, cal()->format_, cal()->channelOrder_, gslDim, @@ -1780,7 +1770,7 @@ Resource::unmapLayers(VirtualGPU* gpu) // Loop through all layers for (uint i = startLayer_; i < layers; ++i) { gslResource3D gslSize; - CALdomain calOffset; + size_t calOffset; void* sliceAddr; size_t pitch; @@ -1788,11 +1778,7 @@ Resource::unmapLayers(VirtualGPU* gpu) gslSize.width = cal()->width_; gslSize.height = height; gslSize.depth = 1; - calOffset.x = 0; - calOffset.y = 0; - calOffset.width = 0; - calOffset.height = 0; - + calOffset = 0; sliceResource = dev().resAllocView( gslResource(), gslSize, calOffset, cal()->format_, cal()->channelOrder_, gslDim, diff --git a/projects/clr/rocclr/runtime/device/gpu/gpuvirtual.hpp b/projects/clr/rocclr/runtime/device/gpu/gpuvirtual.hpp index e839b03ee6..0af47c19a9 100644 --- a/projects/clr/rocclr/runtime/device/gpu/gpuvirtual.hpp +++ b/projects/clr/rocclr/runtime/device/gpu/gpuvirtual.hpp @@ -73,7 +73,10 @@ public: //! CAL descriptor for the GPU virtual device struct CalVirtualDesc : public amd::EmbeddedObject { - ProgramGrid progGrid_; //!< CAL program grid + gslDomain3D gridBlock; //!< size of a block of data + gslDomain3D gridSize; //!< size of 'blocks' to execute + gslDomain3D partialGridBlock;//!< Partial grid block + CALuint localSize; //!< size of OpenCL Local Memory in bytes uint memCount_; //!< Memory objects count GpuEvent events_[AllEngines]; //!< Last known GPU events uint iterations_; //!< Number of iterations for the execution diff --git a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp index 2b943bf193..e8dc1da360 100644 --- a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp +++ b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp @@ -28,7 +28,6 @@ void CALGSLDevice::Initialize() m_textureResource = 0; m_textureSampler = 0; m_target = (CALtarget)0xffffffff; - m_vpucount = 1; m_srcDRMDMAMem = NULL ; m_dstDRMDMAMem = NULL ; @@ -87,7 +86,6 @@ CALGSLDevice::getAttribs_int(gsl::gsCtx* cs) m_attribs.struct_size = sizeof(CALdeviceattribs); m_attribs.target = m_target; - m_attribs.targetRevision = m_revision; gslMemInfo memInfo; cs->getMemInfo(&memInfo, GSL_MEMINFO_BASIC); @@ -109,36 +107,16 @@ CALGSLDevice::getAttribs_int(gsl::gsCtx* cs) m_attribs.numberOfCUsperShaderArray = cs->getNumCUsPerShaderArray(); m_attribs.wavefrontSize = cs->getWaveFrontSize(); m_attribs.doublePrecision = cs->getIsDoublePrecisionSupported(); - m_attribs.localDataShare = cs->getIsLocalDataShareSupported(); - m_attribs.globalDataShare = cs->getIsGlobalDataShareSupported(); - m_attribs.globalGPR = cs->getIsGlobalGPRSupported(); - m_attribs.computeShader = cs->getIsComputeShaderSupported(); - m_attribs.memExport = cs->getIsMemExportSupported(); m_attribs.memBusWidth = cs->getVramBitWidth(); m_attribs.numMemBanks = cs->getVramBanks(); m_attribs.isWorkstation = cs->getIsWorkstation(); - // Add this to HWL query - m_attribs.pitch_alignment = 256; -#ifdef ATI_OS_WIN - // 4KB aligned on Windows - m_attribs.surface_alignment = 4096; -#else - // 256B aligned on Linux - m_attribs.surface_alignment = 256; -#endif - - m_attribs.numberOfUAVs = cs->getNumUAVs(); - m_attribs.bUAVMemExport = cs->getIsUAVAsMemExport(); m_attribs.numberOfShaderEngines = cs->getNumShaderEngines(); m_attribs.pciTopologyInformation = m_adp->getLocationId(); - const uint8* boardName = cs->getString(GSL_GS_RENDERER); ::strncpy(m_attribs.boardName, (char*)boardName, CAL_ASIC_INFO_MAX_LEN * sizeof(char)); - m_attribs.vectorBufferInstructionAddr64 = cs->getVectorBufferInstructionAddr64Supported(); - m_attribs.memRandomAccessTargetInstructions = cs->getMemRandomAccessTargetInstructionsSupported(); m_attribs.counterFreq = cs->getCounterFreq(); m_attribs.nanoSecondsPerTick = 1000000000.0 / cs->getCounterFreq(); m_attribs.longIdleDetect = cs->getLongIdleDetect(); @@ -338,7 +316,6 @@ CALGSLDevice::SetupAdapter(int32 &asic_id) return false; } - m_vpucount = m_adp->getNumLinkedVPUs(); asic_id = m_adp->getAsicID(); if ((asic_id < GSL_ATIASIC_ID_TAHITI_P) || @@ -361,7 +338,7 @@ CALGSLDevice::SetupAdapter(int32 &asic_id) //Disable DRMDMA on CFX mode for linux on all GPUs. #ifdef ATI_OS_LINUX - if ((m_vpucount > 1) && !DRMDMA_FOR_LNX_CF) + if ((m_adp->getNumLinkedVPUs() > 1) && !DRMDMA_FOR_LNX_CF) { m_canDMA = ATIGL_FALSE; } @@ -415,7 +392,6 @@ CALGSLDevice::SetupContext(int32 &asic_id) m_canDMA ? GSL_ENGINEID_DRMDMA0 : GSL_ENGINEID_INVALID, true); temp_cs->getMainSubCtx()->setVPUMask(m_vpuMask); - m_revision = temp_cs->getChipRev(); m_maxtexturesize = temp_cs->getMaxTextureSize(); switch (asic_id) @@ -646,12 +622,6 @@ CALGSLDevice::PerformFullInitialization_int() } } -uint32 -CALGSLDevice::getVPUCount() -{ - return m_vpucount; -} - void Wait(gsl::gsCtx* cs, gslQueryTarget target, gslQueryObject object) { @@ -795,7 +765,7 @@ CALGSLDevice::resAlloc(const CALresourceDesc* desc) const } gslMemObject -CALGSLDevice::resAllocView(gslMemObject res, gslResource3D size, CALdomain offset, cmSurfFmt format, +CALGSLDevice::resAllocView(gslMemObject res, gslResource3D size, size_t offset, cmSurfFmt format, gslChannelOrder channelOrder, gslMemObjectAttribType resType, uint32 level, uint32 layer, uint32 flags, uint64 bytePitch) const { @@ -847,19 +817,11 @@ CALGSLDevice::resAllocView(gslMemObject res, gslResource3D size, CALdomain offse break; }; - // Don't handle offsets for tiled surfaces. - if (offset.x != 0 && - offset.y != 0 && - attribs.tiling == GSL_MOA_TILING_TILED) - { - return 0; - } - // Check any alignment restrictions. uint64 resPitch = res->getPitch(); cmSurfFmt baseFormat = res->getFormat(); uint32 elementSize = cmGetSurfElementSize(static_cast(baseFormat)); - uint64 offsetInBytes = (offset.y * (uint32)resPitch + offset.x) * elementSize; + uint64 offsetInBytes = static_cast(offset) * elementSize; if (offsetInBytes % alignment) { return 0; //offset doesn't match alignment requirements. diff --git a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.h b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.h index d47a762b56..c989a2416e 100644 --- a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.h +++ b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.h @@ -66,7 +66,7 @@ public: gslMemObject resGetHeap(size_t size) const; gslMemObject resAllocView(gslMemObject res, gslResource3D size, - CALdomain offset, cmSurfFmt format, gslChannelOrder channelOrder, + size_t offset, cmSurfFmt format, gslChannelOrder channelOrder, gslMemObjectAttribType resType, uint32 level, uint32 layer, uint32 flags, uint64 bytePitch = (uint64)-1) const; @@ -100,8 +100,6 @@ public: bool isVmMode() const { return m_vmMode; }; - uint32 getVPUCount(); - void setVPUMask(uint32 mask); uint32 getVPUMask() const { return m_vpuMask; } bool uavInCB() const { return m_uavInCB; } bool canDMA() const { return m_canDMA; } @@ -171,10 +169,8 @@ private: gslRenderState m_rs; CALtarget m_target; CALuint m_elfmachine; - uint32 m_revision; uint32 m_vpuMask; uint32 m_chainIndex; - int32 m_vpucount; int32 m_maxtexturesize; uint32 m_gpuIndex; void* m_nativeDisplayHandle; diff --git a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.cpp b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.cpp index 704598f468..031fcf4905 100644 --- a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.cpp +++ b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.cpp @@ -21,14 +21,12 @@ getFuncInfoFromImage(CALimage image, CALfuncInfo *pFuncInfo) pFuncInfo->maxScratchRegsNeeded = 0; pFuncInfo->numSharedGPRUser = 0; pFuncInfo->numSharedGPRTotal = 0; - pFuncInfo->eCsSetupMode = false; pFuncInfo->numThreadPerGroup = 0; pFuncInfo->numThreadPerGroupX = 0; pFuncInfo->numThreadPerGroupY = 0; pFuncInfo->numThreadPerGroupZ = 0; pFuncInfo->totalNumThreadGroup = 0; pFuncInfo->numWavefrontPerSIMD = 0; - pFuncInfo->isMaxNumWavePerSIMD = false; pFuncInfo->setBufferForNumGroup = false; pFuncInfo->wavefrontSize = 0; pFuncInfo->numGPRsAvailable = 0; @@ -101,7 +99,6 @@ getFuncInfoFromImage(CALimage image, CALfuncInfo *pFuncInfo) pFuncInfo->numSharedGPRTotal = pInfos[i].value; break; case AMU_ABI_ECS_SETUP_MODE: - pFuncInfo->eCsSetupMode = (0 != pInfos[i].value) ? true : false; break; case AMU_ABI_NUM_THREAD_PER_GROUP: pFuncInfo->numThreadPerGroup = pInfos[i].value; @@ -123,7 +120,6 @@ getFuncInfoFromImage(CALimage image, CALfuncInfo *pFuncInfo) pFuncInfo->numWavefrontPerSIMD = pInfos[i].value; break; case AMU_ABI_IS_MAX_NUM_WAVE_PER_SIMD: - pFuncInfo->isMaxNumWavePerSIMD = (0 != pInfos[i].value) ? true : false; break; case AMU_ABI_SET_BUFFER_FOR_NUM_GROUP: pFuncInfo->setBufferForNumGroup = (0 != pInfos[i].value) ? true : false; diff --git a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.h b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.h index 8e28228bb7..a8d7ab96bb 100644 --- a/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.h +++ b/projects/clr/rocclr/runtime/device/gpu/gslbe/src/rt/backend.h @@ -48,14 +48,6 @@ typedef struct CALimageRec* CALimage; #define CAL_ASIC_INFO_MAX_LEN 128 -/** CAL computational domain */ -typedef struct CALdomainRec { - CALuint x; /**< x origin of domain */ - CALuint y; /**< y origin of domain */ - CALuint width; /**< width of domain */ - CALuint height; /**< height of domain */ -} CALdomain; - /** CAL device attributes */ typedef struct CALdeviceattribsRec { CALuint struct_size; /**< Client filled out size of CALdeviceattribs struct */ @@ -69,17 +61,7 @@ typedef struct CALdeviceattribsRec { CALuint numberOfSIMD; /**< Number of SIMDs */ CALuint numberOfCUsperShaderArray; /**< Number of CUs per shader array */ bool doublePrecision; /**< double precision supported */ - bool localDataShare; /**< local data share supported */ - bool globalDataShare; /**< global data share supported */ - bool globalGPR; /**< global GPR supported */ - bool computeShader; /**< compute shader supported */ - bool memExport; /**< memexport supported */ - CALuint pitch_alignment; /**< Required alignment for calCreateRes allocations (in data elements) */ - CALuint surface_alignment; /**< Required start address alignment for calCreateRes allocations (in bytes) */ - CALuint numberOfUAVs; /**< Number of UAVs */ - bool bUAVMemExport; /**< Hw only supports mem export to simulate 1 UAV */ CALuint numberOfShaderEngines; /**< Number of shader engines */ - CALuint targetRevision; /**< Asic family revision */ CALuint totalVisibleHeap; /**< Amount of visible local GPU RAM in megabytes */ CALuint totalInvisibleHeap; /**< Amount of invisible local GPU RAM in megabytes */ CALuint totalDirectHeap; /**< Amount of direct GPU memory in megabytes */ @@ -89,8 +71,6 @@ typedef struct CALdeviceattribsRec { CALuint totalSDIHeap; /**< Amount of SDI memory allocated in CCC */ CALuint pciTopologyInformation; /**< PCI topology information contains: bus, device and function number. */ CALchar boardName[CAL_ASIC_INFO_MAX_LEN]; /**< Actual ASIC board name and not the internal name. */ - bool vectorBufferInstructionAddr64; /**< Vector buffer instructions support ADDR64 mode */ - bool memRandomAccessTargetInstructions; /**< hw/sc supports memory RAT (Random Access Target) instructions e.g. mem0.x_z_ supported */ CALuint memBusWidth; /**< Memory busw width */ CALuint numMemBanks; /**< Number of memory banks */ CALuint counterFreq; /**< Ref clock counter frequency */ @@ -119,14 +99,12 @@ typedef struct CALfuncInfoRec CALuint maxScratchRegsNeeded; /**< Maximum number of scratch regs needed */ CALuint numSharedGPRUser; /**< Number of shared GPRs */ CALuint numSharedGPRTotal; /**< Number of shared GPRs including ones used by SC */ - bool eCsSetupMode; /**< Slow mode */ CALuint numThreadPerGroup; /**< Flattend umber of threads per group */ CALuint numThreadPerGroupX; /**< x dimension of numThreadPerGroup */ CALuint numThreadPerGroupY; /**< y dimension of numThreadPerGroup */ CALuint numThreadPerGroupZ; /**< z dimension of numThreadPerGroup */ CALuint totalNumThreadGroup; /**< Total number of thread groups */ CALuint numWavefrontPerSIMD; /**< Number of wavefronts per SIMD */ - bool isMaxNumWavePerSIMD; /**< Is this the max num active wavefronts per SIMD */ bool setBufferForNumGroup; /**< Need to set up buffer for info on number of thread groups? */ CALuint wavefrontSize; /**< number of threads per wavefront. */ CALuint numGPRsAvailable; /**< number of GPRs available to the program */ @@ -141,14 +119,6 @@ typedef struct CALfuncInfoRec CALuint numVGPRsUsed; /**< number of VGPRs used by the program */ } CALfuncInfo; -typedef struct ProgramGridRec -{ - gslDomain3D gridBlock; /**< size of a block of data */ - gslDomain3D gridSize; /**< size of 'blocks' to execute. */ - gslDomain3D partialGridBlock;/** Partial grid block */ - CALuint localSize; /** size of OpenCL Local Memory in bytes */ -} ProgramGrid; - // flags for calCtxWaitForEvents typedef enum CALwaitTypeEnum {