Thinking Parallel

A Blog on Parallel Programming and Concurrency by Michael Suess

Archive for 2007/02


This article is different. If you have read my post on new years resolutions, you know why. In Germany, we have a saying that (roughly translated) says: “to look over the edge of your plate”. My dictionary tells me to translate it into: “to think out of the box” – which basically means to look […]

A beautiful summary of NVIDIA’s CUDA by Bryan O’Sullivan

Bryan O’Sullivan has a beautiful summary of the present state of NVIDIA’s CUDA. He explains the programming model, along with the many different levels of memory and their restrictions (there are many 🙂 ). I had been quite optimistic in my last post about CUDA (just from taking a quick glance at their source code), […]

Please Don’t Rely on Memory Barriers for Synchronization!

I was innocently browsing the net, when I found this on reddit. It’s an article about synchronization using memory barriers. And it made me sad (I was going to write: it almost made me cry, but I figured that would be a little exaggerated). This article is a warning and it tells you the reasons […]

Nvidia releases Cuda – and reinvents Stream Processing?

So it looks like CUDA was released. I will let their marketing department have their two minutes of fame: NVIDIA® CUDAâ„¢ technology is a fundamentally new computing architecture that enables the GPU to solve complex computational problems in consumer, business, and technical applications. CUDA (Compute Unified Device Architecture) technology gives computationally intensive applications access to […]

A Conversation with Hennessy and Patterson

The ACM Queue has an interview with two of my absolute computer architecture heroes – John Hennessy and David Patterson. I have dug my way through their famous book Computer Architecture: A Quantitative Approach right before my diploma thesis and the only reason I did not buy it back then was, because I feared they […]

News for Week 06/2007

It’s this time of the month again when I am posting stuff I found interesting. I thought this was the most boring part of my blog, but my colleagues have told me that they liked these newsposts a lot, so I am keeping them up. Of course, I am also interesting in hearing what you […]

Update: A Smart Way to Send a std::vector with MPI – and why it Fails

As many of you know, I always like learning from mistakes. From my own ones, as well as from other people’s. A couple of students of mine tried to send a C++ std::vector using MPI and I was skeptical if their way of doing things was correct. I am now convinced that although it probably […]