The article talks about IO, but then benchmarks sha256. The node program doesn't work well because he's synchronously doing this:
for (var i = 0; i < n; i++) { sha256(data); }
He should be using crypto and the async versions. This benchmark actually is just measuring the speed of your sha256 implementation, which I would guess is equal on all 4 platforms if you actually do them correctly.