cmuratori/blandwidth

Actually measure start gates and see what works (if anything)

Opened this issue · 0 comments

Right now there is a really hacky thing called StartGateCounter that is used to attempt to give threads a chance to receive their instructions and start somewhat in lockstep where possible. It's just a hack, and I haven't actually tried to ascertain whether it is useful or not.

There are many ways you could imagine doing something like this, but the only way to really see which ones result in more accurately aligned starting times is to try them all and see, and I definitely didn't do that. It wouldn't be hard - I just need to measure the _rdtsc() on entry to each thread's handler and see what start gate algorithm (if any) produces the least amount of separation between the earliest and latest values recorded.

- Casey