Author: Michael Wolfe, Compiler Engineer, The Portland Group, Inc.
Source: HPCWire
“In the not-too-distant past, ENIAC was programmed with switches and a plugboard. Stored program computers soon followed that allowed one to write a program, load it into the computer memory, and run it. Initially, those programs had to be written in or manually translated into binary machine code, but soon assembly languages and assemblers were developed to simplify the process.”
“More recently, the programming research and development community have tried to come up with programming models that would map well onto GPUs and similar parallel computers, particularly stream programming, evidenced in several projects: StreamIt at MIT, Sh at Waterloo (which led to RapidMind), Brook at Stanford (which spun out briefly as PeakStream, and which AMD has adopted and extended as Brook+), and others.
The GPU programming model that has caught the most attention is NVIDIA’s CUDA. The language is an extension to C; the software includes compiler, libraries, and many examples. There is a large user community, including a few dozen universities that use it in course work. Moreover, the software is free, though it (obviously) only targets NVIDIA GPUs.”



1 response so far ↓
1 Compilers and More: Optimizing GPU Kernels // Nov 4, 2008 at 6:30 am
[...] Links Compilers and More: Programming GPUs Today Compilers and More: GPU Architecture and Applications Compilers and More: Parallel Programming Made [...]