Programmers writing high-performance programs face a challenge of writing programs that both perform well on the current hardware and yet will be reusable on future hardware. This paper describes how a well-designed abstraction layer makes this possible by separating the parts of the program that describe the overall algorithm and the parts that provide the low-level implementation.

Note: By clicking on the above link, this paper will be emailed to your EE Times log-in address by Mentor Graphics.