So i’m having rather a strange problem. I have some code which runs fine on my MacBook Pro(MBP), but will not run on my Mac Pro with NVidia Quadro FX4700.
The problem lies with calling CUInit. It returns error code 304 which is CUDA_ERROR_OPERATING_SYSTEM.
I am using KernelLauncher from jcuda.utils, but I also get the error when I tried the JCudaDriverCubinSample example.
The result from running JCudaRuntimeSample on the Mac Pro (0.2005164) varies wildly from the result obtained by the MBP (196.08005).
The stack trace from my code is:
Main.Run.getFitnessFunction(): exceptionjcuda.CudaException: INVALID CUresult: 304
jcuda.CudaException: INVALID CUresult: 304
at jcuda.driver.JCudaDriver.checkResult(JCudaDriver.java:164)
at jcuda.driver.JCudaDriver.cuInit(JCudaDriver.java:217)
at jcuda.utils.KernelLauncher.init(KernelLauncher.java:150)
at jcuda.utils.KernelLauncher.assertInit(KernelLauncher.java:133)
at jcuda.utils.KernelLauncher.create(KernelLauncher.java:330)
at FitnessEvaluation.CudaInterpretedFitnessEvaluation.setProperties(CudaInterpretedFitnessEvaluation.java:100)
at Main.AbstractRun.getFitnessFunction(AbstractRun.java:76)
at Main.Run.setup(Run.java:115)
at Main.Run.experiment(Run.java:56)
at Main.Experiment.main(Experiment.java:45)
Has anyone seen anything like this before? Could it be a problem with the driver on the system?
I’m pretty new to all this, so any help would be greatly appreciated.
I’ve never before seen this error, but note that this error code has been introduced with CUDA 3.2(RC). The latest version of JCuda supports CUDA 3.1, so this is most likely an issue of a driver/toolkit version not matching the JCuda libraries. I’m currently in the process of updating to CUDA 3.2(RC). On the surface, there only had been minor changes, but internally, NVIDIA refactored things a lot. I’m not sure if I will provide JCuda for CUDA 3.2**(RC)**, maybe I’ll wait for the final version 3.2. There’s no roadmap for this, unfortunately, but can probably be expected to come out soon…
I’ve never before seen this error, but note that this error code has been introduced with CUDA 3.2(RC). The latest version of JCuda supports CUDA 3.1, so this is most likely an issue of a driver/toolkit version not matching the JCuda libraries. I’m currently in the process of updating to CUDA 3.2(RC). On the surface, there only had been minor changes, but internally, NVIDIA refactored things a lot. I’m not sure if I will provide JCuda for CUDA 3.2**(RC)**, maybe I’ll wait for the final version 3.2. There’s no roadmap for this, unfortunately, but can probably be expected to come out soon…
bye
Marco[/QUOTE]
Hi Marco,
Thanks, I had completely overlooked that. I have installed cuda driver 3.1.17 and cuda toolkit 3.1 for osx, but I get error code 800, CUDA_ERROR_POINTER_IS_64BIT. Same stack trace, so it’s something going wrong in CUInit. It’s strange that I don’t get either of these errors on my laptop.
Strange enough: The error code „CUDA_ERROR_POINTER_IS_64BIT“ has been removed in 3.2RC
Unfortunately, I don’t have the possibility to run own tests on MacOS. But the first thing would be to test if a native CUDA program works. Did you have the chance to run one of the CUDA samples by NVIDIA? This might help to found out whether it’s a general toolkit/driver issue, or directly related to JCuda…