P4 to Git Change 1321888 by gandryey@gera-w8 on 2016/10/03 15:55:50
SWDEV-79445 - OCL generic changes and code clean-up
- Add the destinaiton buffer size to the LF transfer method
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_lqdflash_amd.cpp#15 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#406 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#26 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.cpp#75 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.hpp#97 edit
[ROCm/clr commit: 630f349191]
Bu işleme şunda yer alıyor:
@@ -3575,7 +3575,9 @@ VirtualGPU::submitTransferBufferFromFile(amd::TransferBufferFileCommand& cmd)
|
||||
size_t srcDstSize = amd::TransferBufferFileCommand::StagingBufferSize;
|
||||
srcDstSize = std::min(srcDstSize, copySize);
|
||||
void* srcDstBuffer = staging->cpuMap(*this);
|
||||
if (!cmd.file()->transferBlock(writeBuffer, srcDstBuffer, fileOffset, 0, srcDstSize)) {
|
||||
if (!cmd.file()->transferBlock(writeBuffer,
|
||||
srcDstBuffer, staging->size(), fileOffset, 0, srcDstSize)) {
|
||||
cmd.setStatus(CL_INVALID_OPERATION);
|
||||
return;
|
||||
}
|
||||
staging->cpuUnmap(*this);
|
||||
|
||||
@@ -3434,7 +3434,9 @@ VirtualGPU::submitTransferBufferFromFile(amd::TransferBufferFileCommand& cmd)
|
||||
size_t srcDstSize = amd::TransferBufferFileCommand::StagingBufferSize;
|
||||
srcDstSize = std::min(srcDstSize, copySize);
|
||||
void* srcDstBuffer = staging->cpuMap(*this);
|
||||
if (!cmd.file()->transferBlock(writeBuffer, srcDstBuffer, fileOffset, 0, srcDstSize)) {
|
||||
if (!cmd.file()->transferBlock(writeBuffer,
|
||||
srcDstBuffer, staging->size(), fileOffset, 0, srcDstSize)) {
|
||||
cmd.setStatus(CL_INVALID_OPERATION);
|
||||
return;
|
||||
}
|
||||
staging->cpuUnmap(*this);
|
||||
|
||||
@@ -595,8 +595,9 @@ TransferBufferFileCommand::submit(device::VirtualDevice& device)
|
||||
void* srcDstBuffer = mem->cpuMap(device);
|
||||
// Make HD transfer to the host accessible memory
|
||||
bool writeBuffer(type() == CL_COMMAND_WRITE_BUFFER_FROM_FILE_AMD);
|
||||
if (!file()->transferBlock(writeBuffer, srcDstBuffer,
|
||||
if (!file()->transferBlock(writeBuffer, srcDstBuffer, mem->size(),
|
||||
fileOffset(), origin()[0], size()[0])) {
|
||||
setStatus(CL_INVALID_OPERATION);
|
||||
return;
|
||||
}
|
||||
mem->cpuUnmap(device);
|
||||
|
||||
@@ -695,6 +695,7 @@ public:
|
||||
bool transferBlock(
|
||||
bool read,
|
||||
void* dst,
|
||||
uint64_t bufferSize,
|
||||
uint64_t fileOffset,
|
||||
uint64_t bufferOffset,
|
||||
uint64_t size) const;
|
||||
|
||||
Yeni konuda referans
Bir kullanıcı engelle