I had a busy week with my parents visiting. I was leaving RC a bit earlier than I would have otherwise, and also getting to bed later—they were staying in midtown, and I’m in Flatbush. As a result, I let my posting slide a bit, and this is me catching up. I’ll also plan to write lab notes such as these each normal RC day, ie Monday through Thursday.

Linux IPC

Ostensibly, the main project I’m working on right now is investigating Linux IPC. The eventual plan is to try and implement a share memory transport for Cap’n Proto.

As a start, I implemented a couple of small programs to measure latency for pipes and eventfd. It looks like the round trip time on my machine is on the order of a couple of microseconds. It varies a little depending on if I pin the communicating processes to the same core or not. This was nice to see, since it would require going over the L3 cache. However, the difference was on the order of a couple of hundred nanoseconds, which is more than I expected. I’ll aim to get some data and draw some histograms early this coming week.

JavaScript distraction

Somehow I ended up with a bunch of JavaScript related tabs open. I think I blame Monica for it, as I was catching up on Twitter and saw her post about Polymer 1.0:

Eventually (or maybe soon?) I want to start learning JS. Or ECMAScript 2015 to be more specific. Or maybe even some ES7 features, like async and await. I was planning to learn React for some nifty front-end isomorphic buzzword compliance, but I’m not sure now. Maybe Polymer? Maybe some other virtual DOM thingamy thing?

make distraction

I did a refactor of my IPC programs to allow them to share a main that handled command line arguments and other stuff. This required me to rejigger the Makefile to have both programs depend on the new source file, and to link it in. I asked Twitter the wrong question:

The responses lead me to expend small but non-zero time on this. I learned that $@’ and $< are meaningful variable names. Also that it’s possible to build a static site generator driven by make.