Parallel Hard Drives: Maybe I Was Wrong

A while ago, I posted my uninformed thoughts on parallel hard drives. \<a href="http://engagebrain.com/%3fp%3d41"" target="_blank" rel="noopener noreferrer">Charles Lecklider says I'm wrong: that doubling the number of moving parts within a single drive is unlikely to be popular, that a good RAID controller …

more ...

Parallel Hard Drives

In comments, David Glassborow makes the excellent point that the hard drive, far more than the CPU, seems to be the limiting factor for the concurrent revolution. When your computer is frustratingly slow, the odds of your disk-access light being on are approximately perfect.

I know very, very little about …

more ...

How Much of the Industry Will Go Parallel?

Michael Seuss ponders one of my favorite questions: How much of the software industry will have to deal with the concurrent computing [opportunity]? He hits the vital points:

  • 2, 4, and maybe 8 cores may be usefully exploited by system services (anti-virus, disk indexing and searching, etc.), but when you …
more ...

Sun's Fortress Language : Looks Very Well Designed

This is a rather daunting (124 slide) PDF on Sun's "Fortress" programming language, designed in large part by \<a href="http://en.wikipedia.org/wiki/Guy_L._Steele%2c_Jr."" target="_blank" rel="noopener noreferrer">Guy Steele, which is designed for scientific / mathematical programming. It looks really good -- lots of …

more ...

Thread Creation Overhead Can Trip Up Pros

Michael Seuss has a good blog piece on \<a href="http://www.thinkingparallel.com/2007/05/02/parallel-programming-fun-with-loop-carried-dependencies/"" target="_blank" rel="noopener noreferrer">parallelizing code that contains loop-carried dependenciess, which is to say, code such as the following, where the calculation in one pass is dependent on a previous pass' …

more ...


Map, Everything's An Object, and Inline

One of the reasons that functional programming is worth studying is that it abounds with opportunities for implicit parallelization. As Jon Harrop discusses in this post, the map function takes a function object f and an array [a, b, c, d] and returns [f(a), f(b), f(c), f …

more ...

Pragmatic Programmers To Publish Erlang Book

The Pragmatic Programmers have a very good sense of software developmet trends -- they're doing today what O'Reilly did in the early 90s. Coming in July from them is Joe Armstrong's Programming Erlang. Erlang is seen by programming language mavens as one of the real contenders for the crown of "most …

more ...

The Personal Threading Maturity Model

Alan Zeichick's proposal of an organizational Threading Maturity Model is an excellent contribution. As with object-orientation, it does not suffice for a single person to have mastery or near-mastery; the average ability of the team must be fair in order to maintain quality, chaos can be wrought by just one …

more ...

Mandelbrot Shader: Holy Effing Crap!

Absolute times to calculate a fixed range of the Mandelbrot set:


Machine Concurrency Language Time

Dual-Opteron Singlethreaded C# \~0.81

Dual-Opteron Multithreaded C# \~0.45

Dual-Opteron Singlethreaded C++ \~0.50

Dual-Opteron Multithreaded C++ \~0.38

XBox 360 Singlethreaded C# \~4.4

XBox 360 Multithreaded C# \~2.1

XBox 360\ GPU …

more ...