Monday, 1 September 2014

oops, there goes another 400 nanoseconds

I just updated one of the servers in rashbre central and after I'd tested that it was working properly I decided to move it to a different room. Instead of a little stack of boxes with twinkly lights, this one now shimmers alone at the far end of a 30 metre ethernet cable.

I went through the slightly irrational thought process that moving it further away would somehow impact its performance. Because it's only running along a gigabit ethernet, it won't make any material difference, of course, but it somehow feels as if moving it further away changes things.

Electricity flows pretty quickly, and I remember the Grace Hopper visualisation of a light-nanosecond. Yes, in a nanosecond speedy light travels around .299 of a metre, or roughly one foot.

Electricity can only propagate at that rate in a superconductor or a vacuum and is slower along, say, copper. For a computer's main processor, the nanosecond is already a finite design limit, but as soon as the action moves to a disk or a bit of wire things slow down dramatically. I believe a nanosecond's proportion to a second is like a second's proportion is to 31 years. At such a rate a CPU cache lookup would be half a second, but a moving the read head on a disk would take four months.

So I don't need to worry about the 60 metre return trip to the relocated twinkly box. With copper wire to slow down the electricity I reckon I've added a good 400 billionths of a second to the latency. Putting it another way, I'd need to have made 2.5 Million return trips to have added a single second.

I think I can handle that.

No comments: