←back to thread

526 points swills | 1 comments | | HN request time: 0s | source
Show context
rezonant ◴[] No.45688230[source]
But is /dev/null web scale?
replies(3): >>45688273 #>>45688300 #>>45688765 #
epistasis ◴[] No.45688273[source]
Yes, /dev/null can even power sites like zombo.com
replies(1): >>45688321 #
bottled_poe ◴[] No.45688321[source]
What’s the I/O throughput of /dev/null ?
replies(2): >>45688365 #>>45688374 #
epistasis ◴[] No.45688365[source]
Single client, I'm getting ~5GB/s, both on an 8-year-old intel server, and on my M1 ARM chip.

However with a single server, it doesn't perfectly linearly scale with multiple clients. I'm getting

1 client: 5GB/s

2 clients: 8GB/s

3 client: 8.7GB/s

replies(2): >>45688467 #>>45688477 #
fukka42 ◴[] No.45688467[source]
I'm easily reaching 30GB/s with a single client:

    dd if=/dev/zero of=/dev/null bs=1M status=progress
A second dd process hits the same speed.
replies(2): >>45688575 #>>45688592 #
epistasis ◴[] No.45688575[source]
My artisanal architecture design uses writes with a few characters and uses unix pipes:

    yes | pv > /dev/null
I hope that in my next rewrite I can advance to larger block sizes.
replies(1): >>45688906 #
fukka42 ◴[] No.45688906[source]
Interestingly I tried this as well and was disappointed with the results:

  yes $(printf %1024s | tr " " "y") | pv > /dev/null
About the same throughput as letting yes output a single character. I guess Unix pipes are slow.
replies(1): >>45689193 #
1718627440 ◴[] No.45689193[source]
> I guess Unix pipes are slow.

Or string concatenation, or pipeviewer.

replies(2): >>45689287 #>>45690060 #