P4 to Git Change 1536925 by vsytchen@vsytchen-ocl-win10 on 2018/04/04 17:20:38
SWDEV-79445 - OCL generic changes and code clean-up
1. This change replaces the use of std::map with std::unordered_map to improve lookup/insert time.
2. Replace the use of std::make_pair and std::pair constructor with uniform initialization for cleaner code.
3. Replace the use of std::Container::iterator type with the auto keyword for cleaner code.
4. Use range based for loops where needed.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/14517/diff/
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_context.cpp#58 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d10.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d10_amd.hpp#9 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d11.cpp#24 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d11_amd.hpp#13 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d9.cpp#34 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d9_amd.hpp#17 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_gl.cpp#57 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_pipe.cpp#7 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_program.cpp#46 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_svm.cpp#23 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/appprofile.hpp#14 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpuprogram.cpp#72 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpuvirtual.cpp#27 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#216 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#297 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuappprofile.cpp#13 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpubinary.cpp#59 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpucompiler.cpp#158 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#587 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#322 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprintf.cpp#46 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#237 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.hpp#70 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.cpp#242 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#415 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.hpp#143 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palappprofile.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcompiler.cpp#22 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#79 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprintf.cpp#9 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#59 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#60 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#84 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.hpp#46 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/CMakeLists.txt#11 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/pro/prodevice.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/pro/prodevice.hpp#5 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocbinary.hpp#6 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/roccompiler.cpp#42 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/roccounters.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprintf.cpp#10 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#81 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.cpp#81 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.hpp#89 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/commandqueue.cpp#24 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/context.cpp#49 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/context.hpp#29 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.cpp#129 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.hpp#102 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/perfctr.hpp#7 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#91 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.hpp#43 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/sampler.hpp#9 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.cpp#17 edit
[ROCm/clr commit: d09ca72f74]
This commit is contained in:
@@ -545,9 +545,9 @@ VirtualGPU::~VirtualGPU() {
|
||||
|
||||
uint i;
|
||||
// Destroy all kernels
|
||||
for (GslKernels::const_iterator it = gslKernels_.begin(); it != gslKernels_.end(); ++it) {
|
||||
if (it->first != 0) {
|
||||
freeKernelDesc(it->second);
|
||||
for (const auto& it : gslKernels_) {
|
||||
if (it.first != 0) {
|
||||
freeKernelDesc(it.second);
|
||||
}
|
||||
}
|
||||
gslKernels_.clear();
|
||||
@@ -1365,10 +1365,9 @@ void VirtualGPU::submitMigrateMemObjects(amd::MigrateMemObjectsCommand& vcmd) {
|
||||
|
||||
profilingBegin(vcmd, true);
|
||||
|
||||
std::vector<amd::Memory*>::const_iterator itr;
|
||||
for (itr = vcmd.memObjects().begin(); itr != vcmd.memObjects().end(); ++itr) {
|
||||
for (const auto& it : vcmd.memObjects()) {
|
||||
// Find device memory
|
||||
gpu::Memory* memory = dev().getGpuMemory(*itr);
|
||||
gpu::Memory* memory = dev().getGpuMemory(it);
|
||||
|
||||
if (vcmd.migrationFlags() & CL_MIGRATE_MEM_OBJECT_HOST) {
|
||||
memory->mgpuCacheWriteBack();
|
||||
@@ -2016,7 +2015,7 @@ void VirtualGPU::submitMarker(amd::Marker& vcmd) {
|
||||
|
||||
// Loop through all outstanding command batches
|
||||
while (!cbList_.empty()) {
|
||||
CommandBatchList::const_iterator it = cbList_.begin();
|
||||
const auto it = cbList_.cbegin();
|
||||
// Wait for completion
|
||||
foundEvent = awaitCompletion(*it, vcmd.waitingEvent());
|
||||
// Release a command batch
|
||||
@@ -2210,8 +2209,8 @@ void VirtualGPU::submitThreadTraceMemObjects(amd::ThreadTraceMemObjectsCommand&
|
||||
const size_t memObjSize = cmd.getMemoryObjectSize();
|
||||
const std::vector<amd::Memory*>& memObj = cmd.getMemList();
|
||||
size_t se = 0;
|
||||
for (std::vector<amd::Memory *>::const_iterator itMemObj = memObj.begin();
|
||||
itMemObj != memObj.end(); ++itMemObj, ++se) {
|
||||
for (auto itMemObj = memObj.cbegin();
|
||||
itMemObj != memObj.cend(); ++itMemObj, ++se) {
|
||||
// Find GSL Mem Object
|
||||
gslMemObject gslMemObj = dev().getGpuMemory(*itMemObj)->gslResource();
|
||||
|
||||
@@ -2297,15 +2296,14 @@ void VirtualGPU::submitAcquireExtObjects(amd::AcquireExtObjectsCommand& vcmd) {
|
||||
|
||||
profilingBegin(vcmd);
|
||||
|
||||
for (std::vector<amd::Memory*>::const_iterator it = vcmd.getMemList().begin();
|
||||
it != vcmd.getMemList().end(); ++it) {
|
||||
for (const auto& it : vcmd.getMemList()) {
|
||||
// amd::Memory object should never be NULL
|
||||
assert(*it && "Memory object for interop is NULL");
|
||||
gpu::Memory* memory = dev().getGpuMemory(*it);
|
||||
assert(it && "Memory object for interop is NULL");
|
||||
gpu::Memory* memory = dev().getGpuMemory(it);
|
||||
|
||||
// If resource is a shared copy of original resource, then
|
||||
// runtime needs to copy data from original resource
|
||||
(*it)->getInteropObj()->copyOrigToShared();
|
||||
it->getInteropObj()->copyOrigToShared();
|
||||
|
||||
// Check if OpenCL has direct access to the interop memory
|
||||
if (memory->interopType() == Memory::InteropDirectAccess) {
|
||||
@@ -2336,11 +2334,10 @@ void VirtualGPU::submitReleaseExtObjects(amd::ReleaseExtObjectsCommand& vcmd) {
|
||||
|
||||
profilingBegin(vcmd);
|
||||
|
||||
for (std::vector<amd::Memory*>::const_iterator it = vcmd.getMemList().begin();
|
||||
it != vcmd.getMemList().end(); ++it) {
|
||||
for (const auto& it : vcmd.getMemList()) {
|
||||
// amd::Memory object should never be NULL
|
||||
assert(*it && "Memory object for interop is NULL");
|
||||
gpu::Memory* memory = dev().getGpuMemory(*it);
|
||||
assert(it && "Memory object for interop is NULL");
|
||||
gpu::Memory* memory = dev().getGpuMemory(it);
|
||||
|
||||
// Check if we can use HW interop
|
||||
if (memory->interopType() == Memory::InteropHwEmulation) {
|
||||
@@ -2362,7 +2359,7 @@ void VirtualGPU::submitReleaseExtObjects(amd::ReleaseExtObjectsCommand& vcmd) {
|
||||
|
||||
// If resource is a shared copy of original resource, then
|
||||
// runtime needs to copy data back to original resource
|
||||
(*it)->getInteropObj()->copySharedToOrig();
|
||||
it->getInteropObj()->copySharedToOrig();
|
||||
}
|
||||
|
||||
profilingEnd(vcmd);
|
||||
@@ -2513,7 +2510,7 @@ void VirtualGPU::flush(amd::Command* list, bool wait) {
|
||||
wait |= state_.forceWait_;
|
||||
// Loop through all outstanding command batches
|
||||
while (!cbList_.empty()) {
|
||||
CommandBatchList::const_iterator it = cbList_.begin();
|
||||
const auto it = cbList_.cbegin();
|
||||
// Check if command batch finished without a wait
|
||||
bool finished = true;
|
||||
for (uint i = 0; i < AllEngines; ++i) {
|
||||
@@ -2537,8 +2534,8 @@ void VirtualGPU::flush(amd::Command* list, bool wait) {
|
||||
void VirtualGPU::enableSyncedBlit() const { return blitMgr_->enableSynchronization(); }
|
||||
|
||||
void VirtualGPU::releaseMemObjects(bool scratch) {
|
||||
for (GpuEvents::const_iterator it = gpuEvents_.begin(); it != gpuEvents_.end(); ++it) {
|
||||
GpuEvent event = it->second;
|
||||
for (const auto& it : gpuEvents_) {
|
||||
GpuEvent event = it.second;
|
||||
waitForEvent(&event);
|
||||
}
|
||||
// Unbind all resources.So the queue won't have any bound mem objects
|
||||
|
||||
Reference in New Issue
Block a user