← Back to context

Comment by mst

2 years ago

> a cool thing about q/kdb+ is that it takes so little code you don't have I$ issues

I'm not sure what an I$ issue is - any chance of a bit more explanation?

(also I'd love to hear about the tradeoff part in more detail but that's a bigger ask)

I$ is short for instruction cache ($ -> "cash" -> cache). Since kdb has so little code, more of it fits into the instruction cache at once.

  • I've encountered this idea that k's terseness somehow improves instruction cache use before. Can you explain further? It seems nonsensical, since instruction caching is about machine code, not source code. Why should it use the instruction cache better than any other JIT? Or is it interpreted, in which case "the terseness of the language improves cache use" might seem more of an admission than a boast... :-)