diff --git a/rocclr/hip_device.cpp b/rocclr/hip_device.cpp index f36fde4680..b116819846 100644 --- a/rocclr/hip_device.cpp +++ b/rocclr/hip_device.cpp @@ -92,8 +92,8 @@ hipError_t hipDeviceComputeCapability(int *major, int *minor, hipDevice_t device auto* deviceHandle = g_devices[device]->devices()[0]; const auto& info = deviceHandle->info(); - *major = info.gfxipVersion_ / 100; - *minor = info.gfxipVersion_ % 100; + *major = info.gfxipMajor_; + *minor = info.gfxipMinor_; HIP_RETURN(hipSuccess); } @@ -177,8 +177,8 @@ hipError_t hipGetDeviceProperties ( hipDeviceProp_t* props, hipDevice_t device ) deviceProps.memoryClockRate = info.maxMemoryClockFrequency_ * 1000; deviceProps.memoryBusWidth = info.globalMemChannels_; deviceProps.totalConstMem = info.maxConstantBufferSize_; - deviceProps.major = info.gfxipVersion_ / 100; - deviceProps.minor = info.gfxipVersion_ % 100; + deviceProps.major = info.gfxipMajor_; + deviceProps.minor = info.gfxipMinor_; deviceProps.multiProcessorCount = info.maxComputeUnits_; deviceProps.l2CacheSize = info.l2CacheSize_; deviceProps.maxThreadsPerMultiProcessor = info.maxThreadsPerCU_; @@ -208,7 +208,7 @@ hipError_t hipGetDeviceProperties ( hipDeviceProp_t* props, hipDevice_t device ) deviceProps.maxSharedMemoryPerMultiProcessor = info.localMemSizePerCU_; //deviceProps.isMultiGpuBoard = info.; deviceProps.canMapHostMemory = 1; - deviceProps.gcnArch = info.gfxipVersion_; + deviceProps.gcnArch = info.gfxipMajor_ * 100 + info.gfxipMinor_ * 10 + info.gfxipStepping_; sprintf(deviceProps.gcnArchName, "gfx%d%d%x", info.gfxipMajor_, info.gfxipMinor_, info.gfxipStepping_); deviceProps.cooperativeLaunch = info.cooperativeGroups_; deviceProps.cooperativeMultiDeviceLaunch = info.cooperativeMultiDeviceGroups_; diff --git a/rocclr/hip_platform.cpp b/rocclr/hip_platform.cpp index e03753e77c..3935e4d5f8 100755 --- a/rocclr/hip_platform.cpp +++ b/rocclr/hip_platform.cpp @@ -351,10 +351,10 @@ hipError_t ihipOccupancyMaxActiveBlocksPerMultiprocessor( size_t GprWaves = VgprWaves; if (wrkGrpInfo->usedSGPRs_ > 0) { size_t maxSGPRs; - if (device.info().gfxipVersion_ < 800) { + if (device.info().gfxipMajor_ < 8) { maxSGPRs = 512; } - else if (device.info().gfxipVersion_ < 1000) { + else if (device.info().gfxipMajor_ < 10) { maxSGPRs = 800; } else { @@ -467,7 +467,7 @@ hipError_t hipModuleOccupancyMaxPotentialBlockSizeWithFlags(int* gridSize, int* HIP_RETURN(ret); } -hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, +hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk) { HIP_INIT_API(hipModuleOccupancyMaxActiveBlocksPerMultiprocessor, f, blockSize, dynSharedMemPerBlk); @@ -486,7 +486,7 @@ hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, } hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, - hipFunction_t f, int blockSize, + hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags) { HIP_INIT_API(hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags, f, blockSize, dynSharedMemPerBlk, flags); @@ -847,4 +847,3 @@ void PlatformState::popExec(ihipExec_t& exec) { exec = std::move(execStack_.top()); execStack_.pop(); } -