P4 to Git Change 1195141 by gandryey@gera-dev-w7 on 2015/09/28 15:09:34
SWDEV-77522 - Remove direct references to the Resource object - In non-VM mode Resource was used as a memory object outside of SW heap Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpublit.cpp#119 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpublit.hpp#39 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuconstbuf.cpp#9 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuconstbuf.hpp#6 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#528 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.hpp#153 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#298 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.hpp#117 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpumemory.hpp#49 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprintf.cpp#38 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprintf.hpp#14 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#208 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.hpp#60 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.cpp#228 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.hpp#84 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#383 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.hpp#135 edit
This commit is contained in:
@@ -218,7 +218,7 @@ VirtualGPU::gslDestroy()
|
||||
}
|
||||
|
||||
void
|
||||
VirtualGPU::addXferWrite(Resource& resource)
|
||||
VirtualGPU::addXferWrite(Memory& memory)
|
||||
{
|
||||
if (xferWriteBuffers_.size() > 7) {
|
||||
dev().xferWrite().release(*this, *xferWriteBuffers_.front());
|
||||
@@ -226,14 +226,14 @@ VirtualGPU::addXferWrite(Resource& resource)
|
||||
}
|
||||
|
||||
// Delay destruction
|
||||
xferWriteBuffers_.push_back(&resource);
|
||||
xferWriteBuffers_.push_back(&memory);
|
||||
}
|
||||
|
||||
void
|
||||
VirtualGPU::releaseXferWrite()
|
||||
{
|
||||
for (auto& resource : xferWriteBuffers_) {
|
||||
dev().xferWrite().release(*this, *resource);
|
||||
for (auto& memory : xferWriteBuffers_) {
|
||||
dev().xferWrite().release(*this, *memory);
|
||||
}
|
||||
xferWriteBuffers_.clear();
|
||||
}
|
||||
@@ -248,7 +248,7 @@ VirtualGPU::addPinnedMem(amd::Memory* mem)
|
||||
}
|
||||
|
||||
// Start operation, since we should release mem object
|
||||
flushDMA(getGpuEvent(dev().getGpuMemory(mem))->engineId_);
|
||||
flushDMA(getGpuEvent(dev().getGpuMemory(mem)->gslResource())->engineId_);
|
||||
|
||||
// Delay destruction
|
||||
pinnedMems_.push_back(mem);
|
||||
@@ -560,14 +560,14 @@ bool
|
||||
VirtualGPU::allocHsaQueueMem()
|
||||
{
|
||||
// Allocate a dummy HSA queue
|
||||
hsaQueueMem_ = new gpu::Memory(dev(), sizeof(amd_queue_t));
|
||||
hsaQueueMem_ = new Memory(dev(), sizeof(amd_queue_t));
|
||||
if ((hsaQueueMem_ == NULL) ||
|
||||
(!hsaQueueMem_->create(gpu::Resource::Local))) {
|
||||
(!hsaQueueMem_->create(Resource::Local))) {
|
||||
delete hsaQueueMem_;
|
||||
return false;
|
||||
}
|
||||
amd_queue_t* queue = reinterpret_cast<amd_queue_t*>
|
||||
(hsaQueueMem_->map(NULL, gpu::Resource::WriteOnly));
|
||||
(hsaQueueMem_->map(NULL, Resource::WriteOnly));
|
||||
if (NULL == queue) {
|
||||
delete hsaQueueMem_;
|
||||
return false;
|
||||
@@ -1662,7 +1662,7 @@ VirtualGPU::submitKernelInternalHSA(
|
||||
// Get the HSA kernel object
|
||||
const HSAILKernel& hsaKernel =
|
||||
static_cast<const HSAILKernel&>(*(kernel.getDeviceKernel(dev())));
|
||||
std::vector<const Resource*> memList;
|
||||
std::vector<const Memory*> memList;
|
||||
|
||||
bool printfEnabled = (hsaKernel.printfInfo().size() > 0) ? true:false;
|
||||
if (!printfDbgHSA().init(*this, printfEnabled )){
|
||||
@@ -3182,7 +3182,7 @@ VirtualGPU::profilingCollectResults(CommandBatch* cb, const amd::Event* waitingE
|
||||
}
|
||||
|
||||
bool
|
||||
VirtualGPU::addVmMemory(const Resource* resource)
|
||||
VirtualGPU::addVmMemory(const Memory* memory)
|
||||
{
|
||||
uint* cnt = &cal_.memCount_;
|
||||
(*cnt)++;
|
||||
@@ -3198,7 +3198,7 @@ VirtualGPU::addVmMemory(const Resource* resource)
|
||||
vmMems_ = tmp;
|
||||
numVmMems_ = *cnt;
|
||||
}
|
||||
vmMems_[*cnt - 1] = resource->gslResource();
|
||||
vmMems_[*cnt - 1] = memory->gslResource();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
Fai riferimento in un nuovo problema
Block a user