If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
Announcement
Collapse
No announcement yet.
AMD's FX-8150 Bulldozer Benefits From New Compilers, Tuning
GCC 4.6 ebuilds have been available since August of last year. Gentoo users are free to use whichever version of GCC that they please. With newer (unsupported or ~arch branch) packages, there is no guarantee that the resulting binary will function correctly.
Would be neat to see something like Gentu (Ubuntu + Gentoo lol) with a spawn of portage + aptitude... binaries for all different processors (you could do binaries for all different USE flags too, theoretically, but that would just be a HUGE undertaking with some packages having 100+ USE flags that's at least 100^100 builds). I think it could be done but that just makes the repositories that much more critical etc.
That's what Sabayon is trying to achieve with its Entropy system.
Maybe take a look at the 4 cores of bulldozer, those are combined of 2 integer units and 1 fpu. You have got 8 integer units and 4 fpus then. If you find benchmarks where bulldozer shines you can say that those definitely do not use many fpu commands. Bulldozer is definitely a fake 8 core, you have to select your software very well to get increased speed, the older Thurban (x6) had "real" cores. One big problem with all amd cpus is that they work pretty inefficient compared to intel ones. If you look at povray (1 core bench) or cinebench 1 core results then even very cheap intel cpus can beat amd's top models. And when you know that most apps are only using 1-2 cores then you know what cpus are faster if you don't compile all the day
if you have CPU bound apps that are single threaded, then you have already lost.
In Linux, thread=process, so both threading and parallel processing are utilized, so no - you have not lost if your app is "single threaded", you just make sure that app forks good.
Of course CPU matters! Everything adds up, but CPU and I/O throughtput are most important.
In Linux, thread=process, so both threading and parallel processing are utilized, so no - you have not lost if your app is "single threaded", you just make sure that app forks good.
sorry i should have said "single threaded or single processed" or "only uses a single core"
if you have an app that is only using 1 core, and you buy yourself the processor with the best single core performance, then you might make it 20% faster. congratulations. if you could make that app multithreaded (or multi processed, it makes no difference if you use openmp, mpi, fork, whatever), then you will probably get close to a 2 or 4 times speed up on your existing hardware. win. if you code is already multithreaded, then you will want to add more cores to make it faster.
now if you have a CPU bound job, that really is non-parallelisable, then you are getting into interesting problems. but i think most people here are interested in things like games, graphics, and video.
Maybe take a look at the 4 cores of bulldozer, those are combined of 2 integer units and 1 fpu. You have got 8 integer units and 4 fpus then. If you find benchmarks where bulldozer shines you can say that those definitely do not use many fpu commands. Bulldozer is definitely a fake 8 core,
It's not 2 interger units with 1 FP unit, it's 2 interger units with 2 128 bit FP units that can act together as 1 256 bit FP unit, the problem is that the compiler and schedulers need to be set up properly in order to take advantage of this fact.
you have to select your software very well to get increased speed, the older Thurban (x6) had "real" cores. One big problem with all amd cpus is that they work pretty inefficient compared to intel ones. If you look at povray (1 core bench) or cinebench 1 core results then even very cheap intel cpus can beat amd's top models. And when you know that most apps are only using 1-2 cores then you know what cpus are faster if you don't compile all the day
Of course Intel beats out AMD at single threaded operations, however AMD beats out Intel at heavily threaded ones, this has been the status quo forever, this doesn't mean that AMD's is any less efficient. Also the point of the Bulldozer design is completely on multithreading and in the future heterogenous compute.
And simple fact is that if the application is old enough to be so lightly threaded you're not going to see the difference anyway because it doesn't require that much single threaded performance, however where you need it with multithreaded performance AMD will be faster.
Comment