-
Not Synced
Hi everyone, I'm Gil Tene.
-
Not Synced
I'm going to be talking about this subject
that I call "How NOT to Measure Latency".
-
Not Synced
It's a subject that I've been talking
about for 3 years or so.
-
Not Synced
I keep the title and change all
the slides every time.
-
Not Synced
A bunch of this stuff is new.
-
Not Synced
So if you've seen any of my previous "How NOT to",
you'll see only some things that are common.
-
Not Synced
A nickname for the subject is this...
-
Not Synced
Because I often will get that reaction
from some people in the audience.
-
Not Synced
Ever since I've told people that it's a
nickname,
-
Not Synced
They feel free to actually exclaim,
"Oh S@%#!".
-
Not Synced
And feel free to do that here in this talk.
-
Not Synced
I'll prompt you in a couple of places
where it is natural.
-
Not Synced
But if just have the urge, go ahead.
-
Not Synced
So just a tiny bit about me.
-
Not Synced
I am the co-founder of Azul Systems.
-
Not Synced
I play around with garbage collection a lot.
-
Not Synced
Here is some evidence of me playing around
with garbage collection in my kitchen.
-
Not Synced
That's a trash compactor.
-
Not Synced
The compaction function wasn't working right,
so I had to fix it.
-
Not Synced
I thought it'd be funny to take a picture
with a book.
-
Not Synced
I've also built a lot of things.
-
Not Synced
I've been playing with computers since
the early 80's.
-
Not Synced
I've built hardware.
-
Not Synced
I've helped design chips.
-
Not Synced
I've built software at many
different levels.
-
Not Synced
Operating systems, drivers...
JVM's obviously.
-
Not Synced
And lots of big systems at the system level.
-
Not Synced
Built our own app server in the late 90's
because web logic wasn't around yet.
-
Not Synced
So, I've made a lot of mistakes,
and I've learned from a few of them.
-
Not Synced
This is actually a combination of a bunch
of those mistakes looking at latency.
-
Not Synced
I do have this hobby of depressing people
by pulling the wool up from over your eyes,
-
Not Synced
and this is what this talk is about.
-
Not Synced
So, I need to give you a choice right here.
-
Not Synced
There's the door.
-
Not Synced
You can take the blue pill,
and you can leave.
-
Not Synced
Tomorrow you can keep believing whatever
it is you want to believe.
-
Not Synced
But if you stay here and take the red pill,
I will show you a glimpse of how
-
Not Synced
far down the rabbit hole goes,
and it will never be the same again.
-
Not Synced
Let's talk about latency.
-
Not Synced
And when I say latency, I'm talking about
latency response time, any of those things
-
Not Synced
where you measure time from 'here to here',
and you're interested in how long it took.
-
Not Synced
We do this all the time, but I see a lot
of mish-mash in how people
-
Not Synced
treat the data, or think about it.
-
Not Synced
Latency is basically the time it took
something to happen once.
-
Not Synced
That one time, how long did it take.
-
Not Synced
And when we measure stuff, like we did
a million operations in the last hour,
-
Not Synced
we have a million latencies. Not one,
we have a million of them.
-
Not Synced
Our actual goal is to figure out how to
describe that million.
-
Not Synced
How did that million behave?
-
Not Synced
For example, they're all really good, and
they're all exactly the same, will be a
-
Not Synced
behavior that you will never see,
but that would be a great behavior.