If we have AMD GPU without CAL or NVIDIA GPU without CUDA, set available GPU RAM equal to total GPU RAM

svn path=/trunk/boinc/; revision=25015
This commit is contained in:
Charlie Fenton 2012-01-09 08:13:01 +00:00
parent e3beeb8721
commit 7222bfa200
2 changed files with 10 additions and 0 deletions

View File

@ -312,3 +312,11 @@ David 8 Jan 2012
client/ client/
app_start.cpp app_start.cpp
Charlie 9 Jan 2012
- client: OpenCL 1.1 has no API for determining available GPU RAM, so if
CAL is not present for ATI / AMD GPU or if CUDA is not present for
NVIDIA GPU, set available GPU RAM equal to total GPU RAM.
client/
coproc_detect.cpp

View File

@ -329,6 +329,7 @@ void COPROCS::get_opencl(
} else { } else {
nvidia.find_best_opencls(use_all, nvidia_opencls, ignore_nvidia_dev); nvidia.find_best_opencls(use_all, nvidia_opencls, ignore_nvidia_dev);
nvidia.prop.totalGlobalMem = nvidia.opencl_prop.global_mem_size; nvidia.prop.totalGlobalMem = nvidia.opencl_prop.global_mem_size;
nvidia.available_ram = nvidia.opencl_prop.global_mem_size;
nvidia.prop.clockRate = nvidia.opencl_prop.max_clock_frequency * 1000; nvidia.prop.clockRate = nvidia.opencl_prop.max_clock_frequency * 1000;
} }
@ -350,6 +351,7 @@ void COPROCS::get_opencl(
} else { } else {
ati.find_best_opencls(use_all, ati_opencls, ignore_ati_dev); ati.find_best_opencls(use_all, ati_opencls, ignore_ati_dev);
ati.attribs.localRAM = ati.opencl_prop.global_mem_size/MEGA; ati.attribs.localRAM = ati.opencl_prop.global_mem_size/MEGA;
ati.available_ram = ati.opencl_prop.global_mem_size/MEGA;
ati.attribs.engineClock = ati.opencl_prop.max_clock_frequency; ati.attribs.engineClock = ati.opencl_prop.max_clock_frequency;
} // End if (! ati.have_cal) } // End if (! ati.have_cal)