A Common Machine Language for Grid-Based Architectures
- Bill Thies ,
- Michal Karszmarek ,
- Michael Gordon ,
- David Maze ,
- Saman Amarasinghe
ACM SIGARCH Computer Architecture News |
A common machine language is an essential abstraction that allows programmers to express an algorithm in a way that can be efficiently executed on a variety of architectures. The key properties of a common machine language (CML) are: 1) it abstracts away the idiosyncratic differences between one architecture and another so that a programmer doesn’t have to worry about them, and 2) it encapsulates the common properties of the architectures such that a compiler for any given target can still produce an efficient executable.