-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Failing vector-add test (Linux amd64 CUDA 5) #1
Comments
Thanks for your reporting! I had the same error as you receive when I used cl-cuda on Amazon EC2 environment listed the "Verification environment" section of README.markdown. When I received the error, it was caused by command line options passed to nvcc command. As default, cl-cuda passes "-arch=sm_11" option to nvcc command to control PTX module generation. Relating options mey be "--gpu-architecture (-arch)" and "--gpu-architecture (-m)". Please try to specify appropriate options for your environment. In my case, "-m32" option was needed inspite of 64bit OS and SBCL. You can specify options to be passed to nvcc command through cl-cuda's Example:
|
After some poking around I could get it to pass the test (only this one, didn't try the rest yet), I've updated to FC18 and to CUDA 5.5 (installed from NVidia's repo, but the drivers are still from rpmfusion), that is while specifying the nvcc options, as you mentioned. Thanks for assistance! Will see if I can get any further with it :) |
I'm grad to hear that. :) Would you mind if I asked you to make me show your working environment on "Verification environment" section of README.markdown?
|
Yup, sure, here's the output: $ uname -r
3.10.6-100.fc18.x86_64
$ sbcl --version
SBCL 1.1.2-1.fc18
$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2013 NVIDIA Corporation
Built on Wed_Jul_17_18:36:13_PDT_2013
Cuda compilation tools, release 5.5, V5.5.0
$ cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module 319.32 Wed Jun 19 15:51:20 PDT 2013
GCC version: gcc version 4.7.2 20121109 (Red Hat 4.7.2-8) (GCC)
$ cat /proc/driver/nvidia/gpus/0/information
Model: GeForce GTX 560M
IRQ: 16
GPU UUID: GPU-84450b52-eee8-d39b-1a61-39449ea0aac4
Video BIOS: 70.26.29.00.0d
Bus Type: PCIe
DMA Size: 40 bits
DMA Mask: 0xffffffffff
Bus Location: 0000:01.00.0 Running test from SLIME: (setf *nvcc-options* (list "-arch=sm_20" "-m32"))
;; ("-arch=sm_20" "-m32")
(main)
CU-INIT succeeded.
CU-DEVICE-GET succeeded.
CU-CTX-CREATE succeeded.
CU-MEM-ALLOC succeeded.
CU-MEM-ALLOC succeeded.
CU-MEM-ALLOC succeeded.
CU-MEMCPY-HOST-TO-DEVICE succeeded.
CU-MEMCPY-HOST-TO-DEVICE succeeded.
nvcc -arch=sm_20 -m32 -I /home/wvxvw/quicklisp/local-projects/cl-cuda/include -ptx -o /tmp/cl-cuda-KHiKWd.ptx /tmp/cl-cuda-KHiKWd.cu
CU-MODULE-LOAD succeeded.
CU-MODULE-GET-FUNCTION succeeded.
CU-LAUNCH-KERNEL succeeded.
CU-MEMCPY-DEVICE-TO-HOST succeeded.
verification succeed.
CU-MEM-FREE succeeded.
CU-MEM-FREE succeeded.
CU-MEM-FREE succeeded.
CU-MODULE-UNLOAD succeeded.
CU-CTX-DESTROY succeeded.
NIL It might be worth noting for whoever wants to reproduce my settings that I did not use video drivers that are included in |
Thanks a lot! |
I ran into the same problem on 64bit linux. The diff below is a workaround, cffi grovel is the real solution. diff --git a/src/cl-cuda.lisp b/src/cl-cuda.lisp ;;;
|
In CUDA driver API, CUdeviceptr is defined as unsigned int, not pointer. Why? It is said that a CUdeviceptr is a handle to an allocation in device memory and not an address in device memory. On the other hand, as you say, the definition of size_t depends on its environment and using cffi-grovel is real solution. I open issue #3. |
I'm failing this test on FC17
The error I receive is: CUDA_ERROR_LAUNCH_FAILED, which is, afaik, a generic error if "something" went wrong.
WARNING: This may not be a bug, in fact, this may be a misconfiguration on my side, however, I'd appreciate if you could tell me what else to check.
This is the output from the test:
The text was updated successfully, but these errors were encountered: