Performance Engineering of Software Systems by Prof. Charles Leiserson and Prof. Julian Shun via MIT
Performance Engineering of Software Systems free videos and free material uploaded by Massachusetts Institute of Technology Staff .
1
L1: Intro and Matrix Multiplication
R1: Basic Tools
HW1: Basic Tools, C Primer assigned
2
L2: Bentley's Rules
L3: Bit Hacks
R2: Profiling
3
L4: Architecture and Vectorization
L5: C to Assembly
HW3: Vectorization
assigned
4
L6: Multicore Programming
L7: Races and Parallelism
5
L8: Analysis of Multithreaded Algorithms
L9: What Compilers Can and Cannot Do
6
L10: Measurement and Timing
7
L11: Storage Allocation
R6: Simple, Straightforward Memory Allocation
8
L12: Parallel Storage Allocation
L13: The Cilk Runtime System
R7: Compiler-Inserted Instrumentation
HW7: Dynamic Analysis Tools assigned
9
L14: Caching and Cache-Efficient Algorithms
L15: Cache-Oblivious Algorithms
R8: Chaching and Cachegrind
HW8: Caching and Cachegrind assigned
10
L16: Nondeterministic Programming
L17: Synchronization without Locks
R9: Deterministic Execution
11
L18: DSLs and Autotuning
L19: Leiserchess Code Walk
12
No lectures
13
L20: Speculative Parallelism/Project
Parallelization Strategies
L21: Guest Lecture
R10: Synchronization Primitives and Examples
14
L22: Graph Optimization
L23: Guest Lecture
class that provides a hands-on, project-based introduction to building scalable and high-performance software systems. Topics include performance analysis, algorithmic techniques for high performance, instruction-level optimizations, caching optimizations, parallel programming, and building scalable systems. The course programming language is C.
Write a public review