[video member=miotatsu stream_platform=twitch project=book title="1.7 & 1.8" vod_platform=youtube id=J4grCXyJxp4 annotator=Miblo]
[0:09][Recap last time's reading on :performance measurements]
[0:38][@riskyfive][o/]
[0:43][A few words on benchmarking and rigorously choosing a sample size[ref
    site=Wikipedia
    page="Checking whether a coin is fair"
    url=https://en.wikipedia.org/wiki/Checking_whether_a_coin_is_fair]][:performance]
[3:40][@riskyfive][Learning statistics from Wikipedia is hard. The definitions are kind of circular. They are easy to understand after you learn stats somewhere else]
[3:58][Estimator of true probability[ref
    site=Wikipedia
    page="Checking whether a coin is fair"
    url=https://en.wikipedia.org/wiki/Checking_whether_a_coin_is_fair]][:research]
[5:01][Some insights on :performance timing from Andrei Alexandrescu[ref
    site=YouTube
    page="code::dive conference 2015 - Andrei Alexandrescu - Writing Fast Code I"
    url=https://www.youtube.com/watch?v=vrfYLlR8X8k]]
[10:45][@riskyfive][I once argued that in a college project report. The professor wasn't very convinced. These days I would say choose a low percentile (the minimum would be the 0 percentile) and show the probability distribution]
[12:14][On using proxies to measure :performance[ref
    site=YouTube
    page="code::dive conference 2015 - Andrei Alexandrescu - Writing Fast Code I"
    url=https://www.youtube.com/watch?v=vrfYLlR8X8k]]
[13:20][Fix up the time formula][:blackboard]
[15:19][Chapter 1.7 - The Power Wall[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :research]
[15:45][Figure 1.16 - Clock rate and power for Intel x86 microprocessors over eight generations and 30 years[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :research]
[19:47][Chapter 1.7, on energy and power[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[21:53][@riskyfive][It means proportional to]
[22:07][Energy equations][:blackboard]
[23:48][Chapter 1.7, on proportional energy[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[24:16][Pulse energy and power][:blackboard :hardware :performance]
[27:11][Chapter 1.7, frequency switched as a function of the clock rate[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[27:35][@riskyfive][This is easy to imagine. Voltage is like pressure. You have pressure when the bucket is full. To change from high pressure (full/1) to low pressure (empty/0) you have to discharge the bucket. The size of the bucket (capacitive load) is what gets wasted, in proportion to the pressure with which the water came out]
[28:22][Chapter 1.7, on the different growth factors of clock rate and power[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[29:12][Chapter 1.7, Example: Relative Power[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[31:58][Power ratio][:blackboard :hardware :performance]
[35:08][Chapter 1.7, power leakage and distribution[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[38:20][Chapter 1.8 - The Sea Change: The Switch from Uniprocessors to Multiprocessors[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[40:41][A few words on eschewing reliance on more powerful hardware being a driving factor of the Handmade Network]
[43:15][@miblo][Culture of laziness, or of "disengagement", perhaps?]
[43:26][A few words on cultural differences of software companies]
[45:25][Chapter 1.8, quote from Brian Hayes on scoring music for a solo performer vs an orchestra[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[46:08][Chapter 1.8, Hardware / Software Interface[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[47:35][Figure 1.17 - Growth in processor performance since the mid-1980s[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[50:45][A discussion point on explicit and implicit parallel programming][:optimisation]
[52:59][@riskyfive][Auto vectorization?]
[53:19][On using parallelism in D][:language :optimisation]
[55:57][@riskyfive][I'm not aware of any convincing path to some magic bullet solution]
[56:18][On pure functional programming in Haskell][:language]
[57:44][Chapter 1.8, on the difficulty to write explicitly parallel programs[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[1:00:20][Chapter 1.8, summaries of parallelism throughout the book[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[1:03:30][Chapter 1.8, preview of Chapter 6 on parallel programming[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:hardware :performance :research]
[1:05:03][Chapter 1.8, quote from J. Presper Eckert on computers in general[ref
    title="Computer Organization and Design RISC-V Edition"
    author="David Patterson & John Hennessy"
    publisher="Morgan Kaufmann"
    isbn=9780128122754
    url=https://www.elsevier.com/books/computer-organization-and-design-risc-v-edition/patterson/978-0-12-812275-4]][:research]
[1:05:48][We're out of time for today]
[1:06:48][@riskyfive][By the way, I asked [@cmuratori Casey Muratori] about porting [~hero Handmade Hero] to an FPGA-based system (like mine) instead of / in addition to the Raspberry Pi. He said cool, email me. I did, but I haven't heard back]
[1:07:17][Stay RISCY, everyone!]
[/video]
