1 99:59:59,999 --> 99:59:59,999 So Hi there, everyone. 2 99:59:59,999 --> 99:59:59,999 My name is Chandler Carruth. 3 99:59:59,999 --> 99:59:59,999 I work for Google 4 99:59:59,999 --> 99:59:59,999 I work on our C++ language platform 5 99:59:59,999 --> 99:59:59,999 I work on our C++ compilers 6 99:59:59,999 --> 99:59:59,999 specifically our 7 99:59:59,999 --> 99:59:59,999 This is going to be kind of an intro 8 99:59:59,999 --> 99:59:59,999 You can heckle me 9 99:59:59,999 --> 99:59:59,999 We're going to 10 99:59:59,999 --> 99:59:59,999 And the first thing 11 99:59:59,999 --> 99:59:59,999 How many folks here think that 12 99:59:59,999 --> 99:59:59,999 Everyone thinks that it's important 13 99:59:59,999 --> 99:59:59,999 I'm going to tell you why I care about performance 14 99:59:59,999 --> 99:59:59,999 Most of it comes down 15 99:59:59,999 --> 99:59:59,999 I actually really 16 99:59:59,999 --> 99:59:59,999 I think he encapsulates 17 99:59:59,999 --> 99:59:59,999 Software is getting slower more rapidly than hardware is getting faster 18 99:59:59,999 --> 99:59:59,999 The hardware will catch up 19 99:59:59,999 --> 99:59:59,999 It turns 20 99:59:59,999 --> 99:59:59,999 We're really good at 21 99:59:59,999 --> 99:59:59,999 It's hard to 22 99:59:59,999 --> 99:59:59,999 And so it's important to 23 99:59:59,999 --> 99:59:59,999 And to give you an idea of 24 99:59:59,999 --> 99:59:59,999 I have to mention, he actually wrote 25 99:59:59,999 --> 99:59:59,999 I did not actually realize thi 26 99:59:59,999 --> 99:59:59,999 We're going to come back to 27 99:59:59,999 --> 99:59:59,999 So, how many foks 28 99:59:59,999 --> 99:59:59,999 Anyone? 29 99:59:59,999 --> 99:59:59,999 It's a good book 30 99:59:59,999 --> 99:59:59,999 Okay. I actually think that the idea that software is getting 31 99:59:59,999 --> 99:59:59,999 And for a parti 32 99:59:59,999 --> 99:59:59,999 There was a pretty similar event 33 99:59:59,999 --> 99:59:59,999 how we look at computing devices 34 99:59:59,999 --> 99:59:59,999 and this event was the iPhone 35 99:59:59,999 --> 99:59:59,999 When Steve Jobs 36 99:59:59,999 --> 99:59:59,999 But he was 37 99:59:59,999 --> 99:59:59,999 Mobile was 38 99:59:59,999 --> 99:59:59,999 It took the world 39 99:59:59,999 --> 99:59:59,999 But that's what happened 40 99:59:59,999 --> 99:59:59,999 We now have to care about 41 99:59:59,999 --> 99:59:59,999 And we essentially 42 99:59:59,999 --> 99:59:59,999 You have to choose one 43 99:59:59,999 --> 99:59:59,999 We're going to choose small 44 99:59:59,999 --> 99:59:59,999 The other problem 45 99:59:59,999 --> 99:59:59,999 What do we do about the battery 46 99:59:59,999 --> 99:59:59,999 How many folks here have charged their phone today 47 99:59:59,999 --> 99:59:59,999 That's a problem. 48 99:59:59,999 --> 99:59:59,999 That's not a feature, that's a bug. 49 99:59:59,999 --> 99:59:59,999 How many 50 99:59:59,999 --> 99:59:59,999 We've entered 51 99:59:59,999 --> 99:59:59,999 Power became relevant 52 99:59:59,999 --> 99:59:59,999 Power efficient instructions 53 99:59:59,999 --> 99:59:59,999 Optimizing for power usage 54 99:59:59,999 --> 99:59:59,999 Because this is mostly total junk science. 55 99:59:59,999 --> 99:59:59,999 Here is the number one 56 99:59:59,999 --> 99:59:59,999 Finish running the program 57 99:59:59,999 --> 99:59:59,999 The faster your software runs, the lest 58 99:59:59,999 --> 99:59:59,999 If I run 59 99:59:59,999 --> 99:59:59,999 But it's not, okay? 60 99:59:59,999 --> 99:59:59,999 Here's the thing. 61 99:59:59,999 --> 99:59:59,999 We've only 62 99:59:59,999 --> 99:59:59,999 We figured out how to turn them off. 63 99:59:59,999 --> 99:59:59,999 if you have a 64 99:59:59,999 --> 99:59:59,999 the way it conserves power is by turning itself off 65 99:59:59,999 --> 99:59:59,999 The more 66 99:59:59,999 --> 99:59:59,999 So we actually want to make code faster 67 99:59:59,999 --> 99:59:59,999 There are some extreme exceptions to it 68 99:59:59,999 --> 99:59:59,999 But 99.999999% of the time 69 99:59:59,999 --> 99:59:59,999 But batteries aren't the only 70 99:59:59,999 --> 99:59:59,999 You'll note that 71 99:59:59,999 --> 99:59:59,999 The only thing it is doing is taking electricity and turning it into heat. 72 99:59:59,999 --> 99:59:59,999 That is it's job 73 99:59:59,999 --> 99:59:59,999 And unfortunately, electricity costs a lot of money 74 99:59:59,999 --> 99:59:59,999 And so power becomes very, very important 75 99:59:59,999 --> 99:59:59,999 And I find it interesting