On Sun, 12 Apr 2009, Hal V. Engel wrote: > > 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.
Very impressive! The current challenge with Intel hardware is that their Multi-Core Module (MCM) approach makes some core pairings more equal than others. Outside of a core-pair sharing a L2 cache, you have to go to L3 cache to communicate. This can produce disappointing results. Intel is working to eliminate this issue in later chips. If the benchmark report at http://www.phoronix.com/scan.php?page=article&item=linux_2629_benchmarks&num=1 is to be believed (not sure), recent Linux kernel updates are very good for OpenMP performance based on the huge jump in GraphicsMagick performance. I am also finding that recent GCC releases are becoming good at producing useful SSE2 and SSE3 code which runs a lot faster. > 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. I have a decent GPU here too but can't tap directly into it (as far as I know) since I am using Solaris rather than Windows or Linux. This vendor lock-in (and increased power consumption) makes me not happy with GPUs. > 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. This sort of optimizer has limited capability if the code calls any sort of function since the function may have side-effects or not be thread safe. A whole-program optimizer could help with this but GNU autotools and most other build systems are not prepared to allow such optimization. Regardless, multi-threaded applications are able to take advantage of any multi-core (including older multi-CPU) system. Even the Mac Mini will benefit. GPU support is useful in lcms for real time display with a display profile and for people with the right hardware and OS to be able to access a GPU. 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