On Sunday 12 April 2009 03:57:24 pm Bob Friesenhahn wrote: > On Sun, 12 Apr 2009, Hal V. Engel wrote: > > In addition there is getting to be more software out there that runs on > > the GPU. For example those here who do panoramas may have used a program > > named enblend and enblend since version 3.0 has had support for using the > > GPU to do it's blending operations. On my machine this reduced blending > > times by about 85%. So it is clear that using the GPU can result in > > dramatic performance increases. Enblend has had this ability for about 2 > > years now. > > 85% sounds good but with fairly trivial code changes I see 360% to as > much as 646% boost (360% to 380% is typical) using OpenMP on a cheapy > desktop quad-core CPU. Quad-core is cheap today. Next year, 8 core > will be cheap.
I probably should have included more information. This was an 85% REDUCTION in processing times compared to running a single processing on a 2.4 GHz AMD 64. So this is about a 650% speed increase. This would still be faster than doing the same work on a quad core CPU but a fast 8 core machine running 8 threads would probably be faster. I should add that my GPU was a high end unit when it was new about 2 years ago (nvidia 7950GT). This GPU has a lot of processing power and it is significantly faster than the GPUs in most computers including most new ones. So I don't think this kind of speed increase would be considered "typical" since most users do not have that much GPU processing power. Enblend was so fast that the first time I ran it with GPU support I thought that perhaps it had failed when it finished so quickly. I had expected it to take 10 to 12 minutes and it was done in less than two minutes. The other interesting thing related to this (multi threading and multi core CPUs) is that it appears that GCC is in the process of getting optimizer updates that will automatically create threaded code when it finds loops that can be broken into threads. The code for this appears to be coming out of one of IBMs labs and the stuff I have seen is saying that this should begin to show up in GCC 4.5. This makes those cheap 8 core machines even more attractive. > > If the GPU is used for application computation then it will need to > offer a huge computational boost in order to overcome the overhead of > transferring large blocks of data back and forth. If the target > destination for the computations is the computer display, then 1/2 of > the overhead (retrieving the result) is removed so performance is much > more impressive. > > I agree that if AMD manages to survive that incorporating ATI > technologies into AMD CPUs should provide considerable benefit. The > process technologies used to fabricate current GPUs is primitive > compared to what is currently used for CPUs. > > Bob > -- > Bob Friesenhahn > bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/ > GraphicsMagick Maintainer, http://www.GraphicsMagick.org/ > > --------------------------------------------------------------------------- >--- This SF.net email is sponsored by: > High Quality Requirements in a Collaborative Environment. > Download a free trial of Rational Requirements Composer Now! > http://p.sf.net/sfu/www-ibm-com > _______________________________________________ > Lcms-user mailing list > Lcms-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/lcms-user ------------------------------------------------------------------------------ This SF.net email is sponsored by: High Quality Requirements in a Collaborative Environment. Download a free trial of Rational Requirements Composer Now! http://p.sf.net/sfu/www-ibm-com _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user