GUI Developtment

I have made a simple Laplace Solver on CUDA, which currently writes the output on a text file. Normally, I import the text file data into MATLAB, then do the mesh/contour plot.

Instead of this, i would like to design a simple windows application that do the following:

  1. Has a simple textbox that allow user to key in the dimension of the problem and options to define the boundary conditions.
  2. Present the output using a Mesh/Contour graph, pretty much like what MATLAB do.

I am not too experience in GUI programming. From what I know, people usually uses C# or Java for GUI developtment these days. Never tried it personally, but I found some comments online which claim that GUI programming using C/C++ is a nightmare compare to C# or Java. Since CUDA is an extension to C, I presume that writing a GUI based on C# or Java wouldn’t be feasible? Normally how do people develop windows application that leverage CUDA?

I have made a simple Laplace Solver on CUDA, which currently writes the output on a text file. Normally, I import the text file data into MATLAB, then do the mesh/contour plot.

Instead of this, i would like to design a simple windows application that do the following:

  1. Has a simple textbox that allow user to key in the dimension of the problem and options to define the boundary conditions.
  2. Present the output using a Mesh/Contour graph, pretty much like what MATLAB do.

I am not too experience in GUI programming. From what I know, people usually uses C# or Java for GUI developtment these days. Never tried it personally, but I found some comments online which claim that GUI programming using C/C++ is a nightmare compare to C# or Java. Since CUDA is an extension to C, I presume that writing a GUI based on C# or Java wouldn’t be feasible? Normally how do people develop windows application that leverage CUDA?

C# certainly provides heaps of things for a GUI interface.

You could look at hoopoe CUDA.NET

"CUDA.NET is an effort by GASS to provide access to CUDA functionality through .NET applications. "

http://www.hoopoe-cloud.com/Solutions/CUDA.NET/Default.aspx

Or you could write a C routine that calls cuda and call that C routine from #C

I think the choice depends on which cuda API you have been used to using.

Other people may have better suggestions.

C# certainly provides heaps of things for a GUI interface.

You could look at hoopoe CUDA.NET

"CUDA.NET is an effort by GASS to provide access to CUDA functionality through .NET applications. "

http://www.hoopoe-cloud.com/Solutions/CUDA.NET/Default.aspx

Or you could write a C routine that calls cuda and call that C routine from #C

I think the choice depends on which cuda API you have been used to using.

Other people may have better suggestions.

Thanks for replying. I will probably try to call C routine from C#.

Anyway, does C# provide library for surface plot/mesh plot/ contour plot…those that are usually used for science and engineering? Can’t seem to find those online…

Thanks for replying. I will probably try to call C routine from C#.

Anyway, does C# provide library for surface plot/mesh plot/ contour plot…those that are usually used for science and engineering? Can’t seem to find those online…

I don’t know of any .NET libraries that do surface/contour plots.

However, if you’re interested in writing your application (both the CUDA and GUI code) in C#, sign up for the beta of GPU.NET (see links in my sig).

I don’t know of any .NET libraries that do surface/contour plots.

However, if you’re interested in writing your application (both the CUDA and GUI code) in C#, sign up for the beta of GPU.NET (see links in my sig).