Wonderful talk. Summarising four main ideas on how hardware design impacts higher level languages - 1/ Branch misprediction 2/ Cache misses 3/ Slowness in denormal floating point ops 4/ False sharing among threads.
In the context of the optimistic branch predictions featured in 18:17, wouldn't the second set of prediction hits be a result of "7 > 6?" and not "7 < 6?"
4 ปีที่แล้ว
Sorry for the confusion, the X < Y simply states what is actually executed, not what is predicted. Since the condition is if(x < 6), it is 1 < 6, 2 < 6, 6 < 6, 7 < 6 etc. The next prediction is visualized at the bottom and the results (success/fail) of predictions are visualized using green/red color. I know, it's probably confusing, but I didn't think of a better way of how to visualize it :-)
I don't have a problem with the dark theme. What is wrong with it?
5 ปีที่แล้ว +3
I didn't know beforehand what will the lightning conditions look like and I think that the organizers recommended a dark background, but I may be wrong. It's hard to predict if light/dark background will be the better choice :-) Thanks.
Wonderful talk.
Summarising four main ideas on how hardware design impacts higher level languages -
1/ Branch misprediction
2/ Cache misses
3/ Slowness in denormal floating point ops
4/ False sharing among threads.
And this is why having some knowledge of Assembly is still relevant today regardless of the higher-level language one is accustomed to working with!!!
Great talk! I really liked that rusty crab sneaking around the corner xD
Really good talk with lots of tips on measuring CPU events.
very informative and high quality talk. Thanks
Wow! I knew that data cache misses heavily affects performance, but did't expected that branch misses can affect performance so much :o
Nice talk, learnt a lot.
13:34 vtune is free now!
In the context of the optimistic branch predictions featured in 18:17, wouldn't the second set of prediction hits be a result of "7 > 6?" and not "7 < 6?"
Sorry for the confusion, the X < Y simply states what is actually executed, not what is predicted. Since the condition is if(x < 6), it is 1 < 6, 2 < 6, 6 < 6, 7 < 6 etc. The next prediction is visualized at the bottom and the results (success/fail) of predictions are visualized using green/red color. I know, it's probably confusing, but I didn't think of a better way of how to visualize it :-)
Are we sure that the branches in the sorting algorithme are well predicted?
Great talk for "software people" like me.
9:00 Google Benchmark
Please use light UI theme for demonstrations! Wonderful presentation! Learnt tons.
I don't have a problem with the dark theme. What is wrong with it?
I didn't know beforehand what will the lightning conditions look like and I think that the organizers recommended a dark background, but I may be wrong. It's hard to predict if light/dark background will be the better choice :-) Thanks.