On Wed, 16 Jun 2010 18:42:53 +0300 Shlomi Fish <shlo...@iglu.org.il> wrote:
> On Wednesday 16 Jun 2010 16:29:58 Oleg Goldshmidt wrote: > > On Wed, Jun 16, 2010 at 1:23 PM, Shimon Panfil <i...@industrialphys.com> > wrote: > > > Hi folks, > > > I'm looking for affordable workstation for heavy number crunching, not > > > > What's "affordable" and what is "heavy number crunching"? > > > > For most large-scale scientific/engineering number-crunching physical > > parallelism (multiple CPUs/cores) is important for performance. Will > > you benefit from many more than 4 cores? Will anything more than > > commodity 4 core desktop be prohibitively expensive? Will you benefit > > / can you afford, e.g., a CUDA-based number-cruncher under your desk? > > > > CUDA is a proprietary Nvidia technology. Nvidia has been incredibly hostile > to > open-source and Linux. See for example: > > http://www.petitiononline.com/nvfoss/ > Due to corporate espionage by the way. As NVidia is a fabless company depending on IP they are afraid of revealing secrets. On the other hand, apart with some issues with resuming, their driver is one of the best I ran into for linux. And it's always updated along with the windows driver. They actually putting quite a bit of emphasis and support into Linux, they are just afraid of open sourcing the drivers due to IP. > We should not support hang-vidia with our wallet by writing code that can > only > effectively run on their cards. Instead one should use OpenCL that is an open > standard which is supported fine by ATI cards and hopefully will soon have an > open-source implementation: > But it runs so much better on their cards, and CUDA is so much easier to write than OpenCL. Plus all current OpenCL implementations have quite a few issues. I admit that the ATI and NVidia GPU implementations are starting to get stable, but the ATI cpu implementation is currently mostly worthless (bad performance and no image support for starters) and IBMs blade implementation is not relevant to most of us. Maybe when intel comes out with a CPU implementation things will get better. And it's pretty heavily based on CUDA anyway. Add to that the fact that OpenCL may be feature portable but not performance portable so you are writing platform dependent code anyway, just in a non-platform dependent language. It is also much harder to write for ATI than NVidia. ATI requires vector operations while NVidia scalar ones so you need to think both massively parallel and vector (both multi-core and sse in CPU terms) And the final thing is that ATI doesn't have HPC cards at all (no tesla equivalent, and even the quadro equivalent has only about 5% market share) They mostly concentrate on gaming cards and ride on NVidia's back for anything else. An not to mention the amount of support you can get from NVidia, especially in for those in the academy. > http://en.wikipedia.org/wiki/OpenCL > > Regards, > > Shlomi Fish _______________________________________________ Linux-il mailing list Linux-il@cs.huji.ac.il http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il