Intel Anaphase - Single Thread Acceleration on Multiple Cores

Tharic-Nar

Senior Editor
Staff member
Moderator
Deep within Intel Labs Barcelona, a new software/hardware thread acceleration technique has been developed to boost performance of single thread applications on multi-core processors, the catch is we probably won't see it for another couple years.
intel_logo400.png
You can read the rest of our post here.
 

Psi*

Tech Monkey
There is so much to comprehend with this that it makes my head hurt. I have read thru the post, and I know how to read English ... but, ugh ... the words are not fitting together very well in my head. This takes the right frame of mind to understand. I see blah blah blah single threaded apps run faster blah blah blah. I feel like I must be like someone of my customers reading one of my reports.:eek:

So I will ask the stupid question which may addressed in the post, will this technology negate the need for multi-threaded written software? If not immediate with the 1st version, is there that potential?
 

Tharic-Nar

Senior Editor
Staff member
Moderator
Sorry if that news post wasn’t written very clearly. Intel’s blog post wasn’t terrible clear either. I believe the short answer is no, it will not negate the need to write multi-threaded apps, it’s just another treatment for a more serious problem, people will have to write multi-threaded code – or indeed have tools help them, to make full use of a multi-core system, there’s no other way round it. The simulated benchmarks were just that, simulated, and they were from the benchmark suite called SPEC CPU2006, which hasn’t been updated in 2 years (but this sort of research takes a long time anyway, and the results would probably have been valid at the time). If the system were to be used in the real world, the benefits will probably be even less. The abstract from the PDF states an improvement of 10% on ‘multi-core’ designs, but doesn’t state how many cores ‘multi’ equates to. The acceleration of ~41% was over ‘Tiny Core’ - probably Intel’s SCC chips which are the 48-core chips.

I don’t know what they would call it exactly, but I guess a scheduler would fit the bill, that or a new compiler engine. The software side of things splits up single threaded code so that it can be ran on multiple cores, the splitting is done at compile time, so from a developer perspective, they won’t see any changes – or even be aware of them. How the code is split is probably discussed within the PDF found through the source link, but it is more than likely beyond my understanding (and subscription based). The new hardware based ICMC unit is that of error prevention and correction, it makes sure that the code remains on the processor in a coherent state while in a multi-threaded form, stopping things like read/write errors and various forms of corruption from 2 or more threads belonging to the same app accessing the same data.

If we take multi-core to mean 4 cores, and anaphase only increases performance by 10% under some tests in a 2 year old benchmark (last update was 2008), then we’re unlikely to see any major real world performance with mainstream processors. If we assume tiny core is the 48 core chip that’s being developed or a derivative thereof, a performance increase of 41% is a lot more beneficial, even if it was on the same benchmark. But you have 44 more processors (all be it of a simpler design), offering up an additional 31% performance, not exactly scaling very well, but it may be of help as a long term solution for running older – non multi-threaded software on modern hardware. It’s more of a cheat than anything else, since not all single thread code will split; it’s not going to be as effective as native multi-threaded code. The ICMC unit probably adds some kind of latency to the processing as well; while it does all the checking and referencing, kind of like ECC memory.

I don’t think any kind of single thread scaling technique will ever amount to more than a few percent increase, maybe they’ll pull a rabbit out of a hat and surprise us all, but I doubt it. The money is probably better spent on improving tuition of parallel programming and possibly the tools to go with it.
 
Last edited:
Top