Sunday, October 11, 2009

Broad comparison of Larrabee and AMD and nVidia GPU's

Jawed, from B3D, in an excellent post describes the broad architectural features of Larrabee and GPU's from nVidia and AMD. Worth a read for anyone who is interested in high performance hardware of tomorrow and for those who are looking to tap into the cheap teraflops of these beasts.

4 comments:

RoyiAvital said...

Assuming Matlab will support Open CL / Direct Compute in the future, which of the three would be best, performance wise?

Especially for the Siganl Processing / Image Processing Tool Box.

Thanks.

RPG said...

Such questions ALWAYS have only one answer.

"What is the algorithm you are trying to run?"

:P

As if that is not enough, the part B of the response would be

"What does MATLAB use internally to generate write code for them? and what is the status of that JIT?"

:P :P

At any rate, classic MATLAB will need heroic work in it's JIT to make *real* plug and play GPU acceleration meaningful.

Otherwise 90% of the people will end up writing code (is it fair to call MATLAB .m files code? ) which wont go anywhere the peak performance of any of these chips.

And if you are after saturating *any* of these chips, you won't touch MATLAB anyway.

For image processing, direct GLSL/OpenCL works way better than MATLAB, IMHO.

Disclaimer: I am pretty anti-MATLAB for serious work. It's a nice multipurpose toy (it certainly has it's niche, where it rocks mind you), but is nowhere near usable for massive workloads.

RoyiAvital said...

I see.
Well, till there are well developed libraries for Open CL for the basic Image Processing / Signal Processing tools and Visualizing libraries it's irrelevant.

Matlab strength is how easy is to visualize what you wanna do.

Anyhow, where would be a good place studying the language from Zero?

Thanks.

RPG said...

Download the SDK from AMD or nvidia. They have good samples. Also just google for opencl presentations. There are a lot of them which give a basic introduction.

ATM, the docs/tutorials are sketchy, so you may have to go to the spec itself, though it is rarely a bad idea. :P