5
I Use This!
Low Activity

Ratings and Reviews

Analyzed about 21 hours ago. based on code collected 2 days ago.
Community Rating
5.0
 

Average Rating:   5.0/5.0
Number of Ratings:   1
Number of Reviews:   1

My Review of pycuda

You have not rated or reviewed this project.
Click below to rate/review.
My Rating:
0
 
 New Review

Most Helpful Reviews

Gert Woh... says:
An easy way to work with cuda  
0.0
 
written almost 16 years ago

pycuda is a very simple way to get started with the cuda platform from nvidia. You barley need any C knowledge, if you work with an gpu array you need no C or Cuda knowlegde at all.

For example with cuda you need to define pointers, copy them to the gpu, write a kernel which works on them and copy the resulting data back to the cpu. Now this is a good approach if you want to do complex things, but if you just want to add some arrays, wouldn't it be nicer to just say y = a + b ?

Well that's were pycuda shines. It takes care of all the memory handling and lets you concentrate on your actual task, not how to copy data or compile C code. It does all this for you.

What kind of speed can you expect from this approach? Surprisingly calculations can be 10x faster (GT8800 GPU, addition of two arrays of 128MB each) than a single Xeon 2.6GHz dualcore.
But like always you run into limitation pretty fast, for example if you want to add 2 arrays which are both 300MB in size, you are pretty much out of luck, since a common graphic card has only 512MB Memory. So you need to split your arrays and loose time by doing this. Also don't forget that the dynamic compilations of the internal C code and moving of the data can take some time. So it's important to test where to use pycuda/cuda and where.

So after all I can recommend this software to scientist who want to concentrate on their problem and not want to fight cuda/C all day long. Specially since python is easy to learn and you can start coding after you understand the definition of variables, operators and how to call methods.

What are problems with pycuda?

My current experience is that it is hard to install pycuda, if you have not much experience with unix system, but the mailing list is very helpful and tries to resolve problems very fast.

g.

Did this review help you? |

Most Recent Reviews

Gert Woh... says:
An easy way to work with cuda  
0.0
 
written almost 16 years ago

pycuda is a very simple way to get started with the cuda platform from nvidia. You barley need any C knowledge, if you work with an gpu array you need no C or Cuda knowlegde at all.

For example with cuda you need to define pointers, copy them to the gpu, write a kernel which works on them and copy the resulting data back to the cpu. Now this is a good approach if you want to do complex things, but if you just want to add some arrays, wouldn't it be nicer to just say y = a + b ?

Well that's were pycuda shines. It takes care of all the memory handling and lets you concentrate on your actual task, not how to copy data or compile C code. It does all this for you.

What kind of speed can you expect from this approach? Surprisingly calculations can be 10x faster (GT8800 GPU, addition of two arrays of 128MB each) than a single Xeon 2.6GHz dualcore.
But like always you run into limitation pretty fast, for example if you want to add 2 arrays which are both 300MB in size, you are pretty much out of luck, since a common graphic card has only 512MB Memory. So you need to split your arrays and loose time by doing this. Also don't forget that the dynamic compilations of the internal C code and moving of the data can take some time. So it's important to test where to use pycuda/cuda and where.

So after all I can recommend this software to scientist who want to concentrate on their problem and not want to fight cuda/C all day long. Specially since python is easy to learn and you can start coding after you understand the definition of variables, operators and how to call methods.

What are problems with pycuda?

My current experience is that it is hard to install pycuda, if you have not much experience with unix system, but the mailing list is very helpful and tries to resolve problems very fast.

g.

Did this review help you? |