Archives for 2006

What is the difference between AMD's Stream Processor and NVIDIA's GeForce 8800? (Or, is Cray's strategy the right one after all?)

AMD has announced a Stream Processor that comes from its recent acquisition of ATI. The processor is currently available on a PCI Express board and is provided with one gigabyte of dedicated memory. It also comes with the Close to Metal (CTM) interface for software developers. CTM is the target of stream programming platforms such […]

What is CUDA?

CUDA (compute unified device architecture) is NVIDIA’s GPU architecture featured in the GeForce 8800. Positioning itself as a new means for general purpose computing with GPUs, CUDA provides 128 cooperating cores. Because the cores can communicate with each other, the GPU can run multithreaded applications without the need for stream computing. Along with this innovation, […]

How can we overcome bus saturation in multi-core systems?

Multi-core systems, in combination with specialized co-processors for hefty tasks, are hailed as the future of high-performance computing. In a bus-based architecture, the environment is an SMP in which all of the memory is accessible by all of the processors in the same amount of time. This setup works well for a few cores, but […]

How are FPGAs programmed?

As mentioned previously, the greatest hurdle to FPGA adoption is the developer’s perception of usability. Usually a computer engineer must design the hardware via a description language such as Verilog or VHDL. This process involves defining the transfer of data between registers, which is a distinct departure in the practices most software engineers use. A […]

Are GPUs the next wave in HPC?

AMD’s recent purchase of ATI was accompanied by an announcement that AMD will introduce “Fusion,” a combination CPU and GPU intended for general-purpose computing. This is on the heals of the work from PeakStream and RapidMind in the arena of stream programming, which attempts make software development on GPUs easier for non-graphics applications. It certainly […]

What is Marlet?

When computing with really large data sets, such as in the earth or life sciences, it is usually easier to pass the function rather than the data. Marlet is a work-flow language for distributed data analysis; it is based on the principles of functional programming and allows the user to operate while abstracting the underlying […]

What is Geneseo?

Geneseo is the codename for an enhancement to PCI Express. Lead by Intel and IBM, this technology will make it easier for co-processor vendors to produce accelerator cards. Among other improvements, Geneseo includes new semantics that reduce the overhead of signaling and synchronization, which makes more efficient interaction between the application software and the accelerator […]

What is stream programming?

A stream is an array whose elements can be operated on in parallel, similar to SIMD computing. In stream programming, data is gathered from memory into a stream, operated on in the stream, and then scattered from the stream back into memory. Memory latency is thus minimized by accessing the data in chunks, similar in […]

What are grand challenge problems?

Grand challenge problems refer to really difficult tasks that stretch the limits of cognitive ability. They are especially popular in high technology fields as working towards a solution often yields many new applications. Below are a list of some open problems, along with correlations to previously solved grand challenges. Prove NP ≠ P This is […]

What is Roadrunner?

Not to be confused with Time Warner’s broadband Internet access provider, Roadrunner will be the first supercomputer to use the Cell BE (see earlier post on the PS3 as a cluster node). The unique architecture calls for inclusion of Opteron processors as well, which means that the system will be able to run a broad […]