2

I've been recently involved in implementing a GPU-based image registration technique. The cpu code is written in MatLab, and that's what I can get from intensive search, so i'm stuck with MatLab. I have the two options of jacket or matlab ptx files.

Recently mathwork acquired jacket, so I have the only option to write my kernels as CU files and use nvcc -ptx filename.cu to generate the ptx file. My concern is that I'm missing great opportunities by not using the Cuda API or the library introduced to solve some basic matrix operation on the GPU like CUBLAS.

So is there any way to use the Cuda API from MatLab, mex file maybe? And is there a good image registration framework written in C/C++ i can use in my research instead of the MatLab version I'm using?

0

2 Answers 2

1

This post gives a tutorial on how to compile CUDA c/c++ mex code.

You questions is similar to this one way to handle to write CUDA+MEX code in linux? The answers there may help you.

Please refer to CUDA Toolkit Documentation for the ref manuals of CUDA APIs and CUDA libraries.

Sign up to request clarification or add additional context in comments.

2 Comments

tnx sir for ur answer, but i know such technique from the doc.my question is how to use CUDA APIs,things like cudaDeviceEnablePeerAccess() or cudaMemcpy3DPeer(),and the libraries written fro the GPU like NPP,CUBLAS whene its not PTX
@pyCuda OK, I changed the answer.
0

Although it's a bit more work, you could directly use CUDA source by creating a MEX function.

OpenCV is a nice general computer vision library written in C++. Depending on what kind of registration you're doing, it may be helpful.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.