I had this configuration:
[i]CUDA 4.0
MS Visual Studio 2010
GTX 460 2 GB
Core Quad Q6600 3 GB
Windows 7 Professional x32[/i]
I used large arrays of page-locked memory like this:
float* R;
cutilSafeCall(cudaHostAlloc( (void**)&R, x_size * y_size * z_size * sizeof(float), 0 ));
The system can allocate about 700 MB of memory for the array.
OK, then I added some memory and install Windows 7 x64, so I have the next configuration:
[i]CUDA 4.0
MS Visual Studio 2010
GTX 460 2 GB
Core Quad Q6600 6 GB
Windows 7 Professional x64[/i]
But the application crashed, and I determined that the system can allocate only about 220 MB of pinned memory!
The same result using x64 compilation configuration.
How it can be? I know about this issue:
-
The maximum size of a single memory allocation created by cudaMalloc or cuMemAlloc on WDDM devices is limited to:
MIN ( ( System Memory Size in MB - 512 MB ) / 2, PAGING_BUFFER_SEGMENT_SIZE )
For Vista, PAGING_BUFFER_SEGMENT_SIZE is approximately 2GB.
But 220 MB is more less than 2 GB.
Can I increase maximum size of available pinned memory? May be using Windows configuration tuning, or using another video driver, or compilation parameters? Thanks!
I had this configuration:
[i]CUDA 4.0
MS Visual Studio 2010
GTX 460 2 GB
Core Quad Q6600 3 GB
Windows 7 Professional x32[/i]
I used large arrays of page-locked memory like this:
float* R;
cutilSafeCall(cudaHostAlloc( (void**)&R, x_size * y_size * z_size * sizeof(float), 0 ));
The system can allocate about 700 MB of memory for the array.
OK, then I added some memory and install Windows 7 x64, so I have the next configuration:
[i]CUDA 4.0
MS Visual Studio 2010
GTX 460 2 GB
Core Quad Q6600 6 GB
Windows 7 Professional x64[/i]
But the application crashed, and I determined that the system can allocate only about 220 MB of pinned memory!
The same result using x64 compilation configuration.
How it can be? I know about this issue:
-
The maximum size of a single memory allocation created by cudaMalloc or cuMemAlloc on WDDM devices is limited to:
MIN ( ( System Memory Size in MB - 512 MB ) / 2, PAGING_BUFFER_SEGMENT_SIZE )
For Vista, PAGING_BUFFER_SEGMENT_SIZE is approximately 2GB.
But 220 MB is more less than 2 GB.
Can I increase maximum size of available pinned memory? May be using Windows configuration tuning, or using another video driver, or compilation parameters? Thanks!
I think you are wasting your time… just move on unix/linux. I had a similar problem on a machine with Win7 Ultimate x64, CUDA 4.0 and 18G RAM. After moving to Ubuntu everything is working just fine.
Please post a message if you solve the problem on windows.
No idea what’s going on there. Maybe you could try modding your card to use a TCC driver?