Forward CUDA printf output to the MATLAB console

5 views (last 30 days)
I am wrapping CUDA code in a mex file. I have printfs in my CUDA kernel, and I want to see the output from those printfs, ideally in the MATLAB console, but at least somewhere.
Just calling printf, whether within a CUDA kernel or in a normal C/C++ file (avoiding mexPrintf) doesn't get output to the MATLAB console or to the program output window of an attached debugger such as Visual Studio. Perhaps it's just a question of piping stdout somewhere.
Please note that using mexPrintf is not an option here - it won't work in the CUDA kernel. Please also note that I don't have any add-on toolboxes.

Accepted Answer

Oliver Woodford
Oliver Woodford on 5 Jun 2014
There might be a way to redirect output from stdout in a mex file ( see this question ), but I haven't been able to get it to work on Windows yet.
What I was able to use was the old cuPrintf code which came before the CUDA printf, and is still available in the CUDA SDK sample "simplePrintf", and redirect the output to a file.
  1 Comment
Thomas Pohl
Thomas Pohl on 2 Oct 2017
How did you do the redirection to a file? I managed to call cuPrintf inside the kernel but I cannot find the output it creates in Visual Studio.

Sign in to comment.

More Answers (0)


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!