CUDA 2.1 is already in a beta version and expected to add some of the more interesting features up to date.
One first feature is the newly added support for DirectX 10 API interoperability with through CUDA.
Another interesting features is by allowing to compile (JIT – Just In Time) CUDA PTX code to match a specific GPU architecture. This feature allows to generate CUDA kernels on demand and compile them directly to the GPU architecture available in the running system. Just like using a compiler.
CUDA.NET 2.1 is expected to be released on early February, adding support for all new features of CUDA 2.1 and extended functionality as we add it incrementaly
I actually have a question about the low level API, does the interop map 1-to-1 to the orignal CUDA API or does it include some additional overhead?
The high level obviously has some overhead, but it would be really nice if the low level mapped 1 to 1, then I’d could use nvidias documentation for instance.
Otherwise, I’ll have to write my own COM interop interface, but it would be nice if you guys already thought of that 😉
Hi Ajden,
Indeed as you mentioned the low-level API maps really 1-1 to official NVIDIA CUDA API so you are encouraged to use the NVIDIA CUDA documentation.
In any case you are always welcome to contact us at cuda.net@gass-ltd.co.il.
CUDA.NET Team.
now in my rss reader)))
————————
sponsored link: http://werato.ru/
Hi,
When I tried to run asyncAPI sample under VS2008 debug session I got an exception:
GASS.CUDA.CUDAException was unhandled
Message=”Exception of type ‘GASS.CUDA.CUDAException’ was thrown.”
Source=”CUDA.NET”
StackTrace:
at GASS.CUDA.CUDA.set_LastError(CUResult value)
at GASS.CUDA.CUDA.CopyDeviceToHostAsync[T](CUdeviceptr devPtr, T[] data, CUstream stream)
at asyncAPI.Program.Main(String[] args) in C:UsersuserDocumentsVisual Studio 2008ProjectsCUDANETexamplesasyncAPIProgram.cs:line 114
at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
with CUDAError: GASS.CUDA.CUResult.ErrorInvalidValue
At the same time asyncAPI example from SDK works fine producing results:
time spent executing by the GPU: 74.98
time spent by CPU in CUDA calls: 0.13
CPU executed 21139 iterations while waiting for GPU to finish
————————————————————–
Test PASSED
Press ENTER to exit…
It looks like some bug in Async functions of CUDA.NET
when I run your example program its looking for a gass reference, where is it?
Also will it run on the emulator?
added a reference using the the cuda dll as the download provided… now I get the message :
Error 1 The command “nvcc asyncAPI.cu –cubin” exited with code -1. asyncAPI
Any suggestions
robert,
try to change “Post-build event command line” in project properties like this
C:CUDAbinnvcc.exe asyncAPI.cu –cubin -ccbin “c:Program FilesMicrosoft Visual Studio 9.0VCbin”