CSC D70: Compiler Optimization, Study notes of Compiler Design

PhD from Carnegie Mellon ... Announcements, Syllabus, Course Info, Lecture Notes, ... driving force behind modern processor design.

Typology: Study notes

2022/2023

Uploaded on 05/11/2023

lana23
lana23 🇺🇸

4.8

(4)

216 documents

1 / 59

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CSC D70:
Compiler Optimization
Prof. Gennady Pekhimenko
University of Toronto
Winter 2020
The content of this lecture is adapted from the lectures of
Todd Mowry and Phillip Gibbons
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b

Partial preview of the text

Download CSC D70: Compiler Optimization and more Study notes Compiler Design in PDF only on Docsity!

CSC D70:

Compiler Optimization

Prof. Gennady Pekhimenko

University of Toronto

Winter 2020

The content of this lecture is adapted from the lectures of Todd Mowry and Phillip Gibbons

CSC D70:

Compiler Optimization

Introduction, Logistics

Prof. Gennady Pekhimenko

University of Toronto

Winter 2020

The content of this lecture is adapted from the lectures of Todd Mowry and Phillip Gibbons

Syllabus: Who Are We?

Gennady (Gena) Pekhimenko

Assistant Professor, Instructor

[email protected]

http://www.cs.toronto.edu/~pekhimenko/

Office: BA 5232 / IC 454

PhD from Carnegie Mellon

Worked at Microsoft Research, NVIDIA, IBM

Research interests: computer architecture, systems, machine learning, compilers, hardware acceleration

Vector Institute EcoSystem Group

Course Information: Where to Get?

  • Course Website: http://www.cs.toronto.edu/~pekhimenko/courses/cscd70-w 0/ - Announcements, Syllabus, Course Info, Lecture Notes, Tutorial Notes, Assignments
  • Piazza: https://piazza.com/utoronto.ca/winter2020/cscd70/home - Questions/Discussions, Syllabus, Announcements
  • Quercus
    • Emails/announcements
  • Your email

Useful Textbook

Why Computing Matters (So Much)?

WHAT IS THE DIFFERENCE BETWEEN

THE COMPUTING INDUSTRY AND THE

PAPER TOWEL INDUSTRY?

CAN WE CONTINUE BEING AN

INDUSTRY OF NEW POSSIBILITIES?

Personalized

healthcare

Virtual

reality

Real-time

translators

Moore’s Law

Or, how we became an industry of new possibilities
  • Double the number of transistors
  • Build higher performance

general-purpose processors

  • Make the transistors available to masses
  • Increase performance (1.8×↑)
  • Lower the cost of computing (1.8×↓)

Every 2 Years

Looking back

Evolution of processors

Single-core Era

Multicore Era

Dennard scaling broke

740 KHz

3.4 GHz 3.5 GHz

Any Solution Moving Forward?

GPUs (Graphics Processing Units)

Hardware accelerators:

FPGAs (Field Programmable Gate Arrays)

TPUs (Tensor Processing Units)

Programmability versus Efficiency

Efficiency

Programmability

General-Purpose Processors

FPGAs ASICs

GPUs

SIMD Units

We need compilers!

Introduction to Compilers

  • What would you get out of this course?
  • Structure of a Compiler
  • Optimization Example