"Performance Matters" by Emery Berger
Video Statistics and Information
Channel: Strange Loop Conference
Views: 259,811
Rating: 4.9523182 out of 5
Keywords: performance, optimization, moore's law, profiling, memory layout, compiler
Id: r-TLSBdHe1A
Channel Id: undefined
Length: 42min 15sec (2535 seconds)
Published: Sun Sep 15 2019
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.
The conference happened just 2 days ago, and the talk is already online. Awesome!
Better profiling tools, which consider the context outlined by the entire system, would certainly be helpful, but as long as we're relying on humans to optimize software by hand, our programs are going to become more difficult to understand, while still being far from optimal.
I wish there was more research into developing automated optimization systems that aim to take a very high level description of what we want computers to do, and translate that into an optimal (to the theoretical limit) implementation of that description. Contemporary "optimizing compilers" seem to focus mostly on code, when most of the optimization opportunities seem to be data related (memory layout, cache locality, etc).
Great presentation, some observations: * alpha significance is confused with observability percentages
most probably the layout randomization does not result in random distributed run times, so what he is observing is a sum of normally distributed variables, so not CLT
O3 vs O2 optimizations really depend on the source code youโre compiling
there are better profilers nowadays than the ones from 70s: perf, stap, ebpf zoo, lttng, just to name a few
sqlite part: โyou double the length of all of your critical sectionsโ - maybe Emery was rushing out the presentation here, but thatโs not what it means
Otherwise, remarkable job and a lovely presentation!
I was at this talk yesterday! Crowd was loving it!!!
I was lucky enough to go to St. Louis for Strange Loop. This was the last talk I saw and it was the most entertaining by far.
I think some compiler tools like VC++ Profile Guided optimization (POGO) specifically address the layout concerns he mentions. And he completely ignored the amazing work it took to make games like DOOM run on the hardware of the 80s. And finally he completely ignored I/O which for the distributed system he describes is probably going to be a dominant factor.
All that said, the talk itself is a good model for how a conference talk should flow. It was great.
Edit: okay technically doom was 90s so substitute the work the demoscene guys were going in the mid-80s.
Pretty nice talk!
The talk mentions Stablizer 'szc', which I imagine is https://github.com/ccurtsinger/stabilizer , which is ancient. Then there's a fork with LLVM 6.0 support (but the author seems unsure if it's actually working) at https://github.com/fusiled/stabilizer .
So I'm wondering, is there a modern working version of that tool?
Performance doesn't matter, only the time to launch does!
-- JS crowd
I am programming retarded. I'm only at pondskipper level scripting.
But I do distributed systems....and this is EXACTLY how actual optimizations are done.
So good. Great talk.
This is the best thing I seen in a long time