As it is, many developers have to learn the complex art of parallel processing for the two- and four-core world we now live in, and that only gets harder in an eight-core-and-beyond world.
The specification is designed to aid in improving performance wherever possible, but is not intended to give programmers a pass on making their applications multithreaded in the first place, according to Earl Stahl, vice president of software engineering at AMD (Quote).
The spec is formally known as Lightweight Profiling and Extensions for Software Parallelism. It sits between the application layer and runtime of environments like Java and Microsoft's .NET to find areas where code can be executed in parallel and optimizes the code for maximum performance.
The profile lends itself best to runtime environments, where code is executed when it's run, since those environments are a little more flexible than combined code, said Stahl.
"We think that's where it will find its sweet spot," he told internetnews.com. "As we look ahead, [runtimes] are a deployment mechanism being used more and more because it's a very dynamic environment. It's not static and thus harder to optimize those apps like compiled code."
Stahl said mileage will vary from one use and application to another, but felt performance-intensive and transaction-based applications will likely be the most beneficial. He said it would have a very small footprint that imposes almost no overhead on the system and be implemented as a couple of instructions wrapped in a small library.
For now, AMD is releasing a proposed specification to the software community for input and to take suggestions on ways to further optimize the spec itself. It's similar to the tactic AMD took in 1999 when it first introduced the 64-bit extensions to the x86 architecture.
AMD also would like to get Intel's participation, even as the two companies are meeting in courtrooms.