P4 to Git Change 1596446 by axie@axie_win_opencl_laptop on 2018/08/21 13:40:43

SWDEV-161959 - [ROCm QA][RAVEN] QCDGPU-S test is having ERROR -61: (clCreateKernel failed) on RAVEN
	SWDEV-161983 - [ROCm QA][RAVEN] Cachebench test is failing with CL_INVALID_BUFFER_SIZE issue
	SWDEV-161978 - [ROCm QA][RAVEN] PCIeBW is failing on -with error : 61, OpenCL error creating buffer !
	SWDEV-161962 - [ROCm QA][RAVEN] rodinia->nw test has ERROR: clCreateBuffer input_item_set (size:67125249) => -61

	- Adjust Global memory size as half of the system physical memory size in APU for Rocm
	- Similar to current DGPU calculation, environment GPU_SINGLE_ALLOC_PERCENT can be used to adjust max memory allocation size.

	ReviewBoardURL = http://ocltc.amd.com/reviews/r/15659/

	Tests:
	1. ocltst -m oclruntime.so -A oclruntime.exclude - PASS except SVM test (non regression)
	2. TeamCity presubmission test (OpenCL) - PASS
	    http://ocltc.amd.com:8111/viewModification.html?modId=106628&personal=true&init=1&tab=vcsModificationBuilds
	3. Run test qcdgpu-s.sh : PASS
	4. Run test cachebench-ocl : PASS
	5. Run test PCIeBandwidth -c 0 -g 0 :  PASS
	6. Run test Rodinia/opencl/nw/run : PASS

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#97 edit


[ROCm/clr commit: f84d1d2d03]
This commit is contained in:
foreman
2018-08-21 13:52:31 -04:00
parent 4f9fd082c1
commit a99daf43d0
@@ -960,9 +960,11 @@ bool Device::populateOCLDeviceConstants() {
assert(alloc_granularity_ > 0);
} else {
static const cl_ulong kDefaultGlobalMemSize = cl_ulong(1 * Gi);
info_.globalMemSize_ = kDefaultGlobalMemSize;
info_.maxMemAllocSize_ = info_.globalMemSize_ / 4;
// We suppose half of physical memory can be used by GPU in APU system
info_.globalMemSize_ =
cl_ulong(sysconf(_SC_PAGESIZE)) * cl_ulong(sysconf(_SC_PHYS_PAGES)) / 2;
info_.maxMemAllocSize_ =
cl_ulong(info_.globalMemSize_ * std::min(GPU_SINGLE_ALLOC_PERCENT, 100u) / 100u);
if (HSA_STATUS_SUCCESS !=
hsa_amd_memory_pool_get_info(