davidrohr / hpl-gpu

High Performance Linpack for GPUs (Using OpenCL, CUDA, CAL)
Other
88 stars 14 forks source link

Execute the command './mem -g -2 -c -1 -x -z -l -lh 3072 -lw 3072 -lx 20 -ly 20 -a -u' ,it returned an error message #6

Closed Codingrunningman closed 4 years ago

Codingrunningman commented 4 years ago

Using interleaved memory Running linear and strided tests Linpack Mode enabled: 20 tiles of size 3072 x 3072 doubles Running dma-mem-bench, settings: Data Size 30198988800, Data Size GPU 75497472, Map GPU -2, CPU Core -1, Use Only Mapped GPUs 0, Iterations 16, Strided Test: Matrix 3072 x 24576 - Stride: 491520 1 OpenCL Platforms found Platform 0 Device 0: NVIDIA Corporation Tesla K80 (64 bits) Platform 0 Device 1: NVIDIA Corporation Tesla K80 (64 bits) Platform 0 Device 2: NVIDIA Corporation Tesla K80 (64 bits) Platform 0 Device 3: NVIDIA Corporation Tesla K80 (64 bits) No CPU device found I have two CPU cores on this node,however it returns this error message.What caused this?

davidrohr commented 4 years ago

The OpenCL version requires a CPU device in the OpenCL context. This was due to a problem back then with allocating large chunk of host memory, which didn't work if there was no CPU device in the context. Your NVIDIA OpenCL platform doesn't have a CPU device, that's the problem. You can just use the CUDA backend, or you'll need to modify the OpenCL backend to work without a CPU device. Although not sure that will work. Anyway, OpenCL will not work well with NVIDIA since there are no fast DGEMM kernels implemented in OpenCL for NVIDIA.

Codingrunningman commented 4 years ago

Thanks.@davidrohr