0
$\begingroup$

This question already has an answer here:

I have developed my thesis codes by means of Mathematica software in a .nb file format. Despite using the available Parallel code capabilities and doing all the numerical integrations by means of parallel programming; the duration of programme run is so so much high; something like 2 to 3 weeks; which makes the debugging and verification part of the thesis almost unavailable. My question goes to two branches:

  1. How can I make my programme more efficient and run faster.
  2. I have heard that by applying the Cude or GPU programming; the duration of run will significantly be reduced. How is it possible to automatically change and turn my present codes to a Cude GPU code?

As far as I am facing lack of time for my thesis; answers to my questions and helping me decrease the run duration will be so appreciated.

$\endgroup$

marked as duplicate by Szabolcs, Ajasja, Öskå, Sjoerd C. de Vries, Yves Klett Jun 16 '14 at 14:14

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • $\begingroup$ Hard to say. As for 1) blog.wolfram.com/2011/12/07/… or mathematica.stackexchange.com/questions/29349/… $\endgroup$ – Ajasja Jun 16 '14 at 12:49
  • $\begingroup$ This question is much too broad to be answerable. It all depends on what your program does and how it's implemented. The most likely to be successful solution for a program that runs for 3 weeks is to rewrite it in a low-level language such as C, C++, Fortran, Java, etc. Using CUDA is not as simple as flipping on a switch. It requires rewriting the program an it's not always applicable. To take full advantage of it, you'd need to resort to using C again. $\endgroup$ – Szabolcs Jun 16 '14 at 12:52
  • $\begingroup$ This question is partially answered in that page but there is no clue to the GPU and Cuda writing there at all. $\endgroup$ – Enthusiastic Engineer Jun 16 '14 at 13:04
  • $\begingroup$ Do you perform matrix inversion of large matrices by any chance? It makes a really huge difference whether you have integers of reals in them. $\endgroup$ – Sjoerd C. de Vries Jun 16 '14 at 13:27
  • $\begingroup$ @user52417 Your CUDA question is essentially: "how can I speed up any Mathematica code using CUDA"? This is much too broad to have a clear answer, and for this reason it is not a good fit for this site anyway. Questions should be specific enough so that they can be reasonable answered in a page or so. The most basic thing you can do is look at the CUDALink documentation which lists a number of operations pre-implemented to be sped up using CUDA, such as CUDADot, CUDATotal, etc. You can try to use these. $\endgroup$ – Szabolcs Jun 16 '14 at 13:46

Browse other questions tagged or ask your own question.