AMD Unveils Spec To Ease Pain Of Multicore Software Development

With Light-Weight Profiling, AMD embeds in the processor information that software can read to learn what resources, such as memory or cache allocation, are available.
Advanced Micro Devices on Tuesday released a specification meant to help developers build higher-performing multithreaded applications on multicore microprocessors, an increasingly complex platform being adopted in commodity servers.

The specification, called "Light-Weight Profiling," is a mechanism that enables software to more effectively run on the emerging platforms. The technology is part of AMD's initiative to develop hardware extensions for applications capable of dividing tasks so they can be executed simultaneously on multiple cores.

With LWP, AMD embeds in the processor information that software can read to learn what resources, such as memory or cache allocation, are available. The stored profile is meant to make processing of data more efficient by avoiding conflicts, Margaret Lewis, director of commercial ISV marketing, told InformationWeek. "When we get into eight cores or more, software is not going to want to track these things."

Intel has been selling quad-core processors since November, and AMD is set to release its first four-way processors for servers and desktops this year. Both chipmakers, however, are looking ahead to having many more cores on silicon. Intel this week plans to release eight research papers that outline its thinking on the technology needed to help developers build for a multicore world.

LWP would be beneficial to software that includes, but is not limited to, runtime environments, such as Sun Microsystems' Java Virtual Machine and Microsoft's .Net Framework. The latter two technologies today can run multiple threads on a processor.

By adding LWP to managed code, which is code written for a specific runtime environment, the latter software can read the microprocessor's profile and make dynamic and real-time decisions on how best to improve the performance of concurrently running tasks. The techniques at the software's disposal would include memory organization or code layout, and would carry very little overhead, AMD said.

Use of managed code is expected to increase as developers build more software for multicore platforms, AMD said. Business processes such as e-commerce and financial services run within runtime environments today.

Besides software, LWP information could also be used by operating systems and compilers, AMD said. The latter is a tool used in software development for translating code written by developers into a language readable by computer hardware.

AMD has posted the LWP specification on its developer Web site. The company is encouraging feedback from the developer community.