I did this for the first time recently and it was a super satisfying experience.
I'm mostly a web dev, but I was experimenting with some very mathy Rust code. I did some back of the envelope calculations about how many cycles a CPU might take on various floating point operations, multiplied that by the number of items I was pumping through it, and arrived at a number that was 4x out... then realised the Rust compiler had performed auto-vectorisation with SSE2!
I wasn't spot-on, but I was within like 20-30% I think. And that made me feel like a real engineer haha.
I'm mostly a web dev, but I was experimenting with some very mathy Rust code. I did some back of the envelope calculations about how many cycles a CPU might take on various floating point operations, multiplied that by the number of items I was pumping through it, and arrived at a number that was 4x out... then realised the Rust compiler had performed auto-vectorisation with SSE2!
I wasn't spot-on, but I was within like 20-30% I think. And that made me feel like a real engineer haha.