Individually colour samples.
It was much faster to calculate the hash->colour in the Remotery runtime.
The JS viewer has two paths that need that colour: the timeline and sample windows.
The sample window had a means of caching the calculated colour but the timeline did not.
The JS code had to: convert uint to hex string, reduce hex string to 6 characters, shift by an amount with clamp, add back to the string.
As JS strings are immutable, each pass required 2 substr and 2 addition calls on the string.
Compare that with the C code that just aliases the 32-bit integer and works with the nibbles directly: it's much faster.