~/talk

Optimizing for GPUs

Talkat dotAI 2017 · on Tuesday, 2017-04-25· [machine-learning, kubernetes]
links:none on file
slides:none on file

Concrete measurements and recipes: kernels run in warps of 32 or 64 so choose block sizes that avoid idle threads; grid sizing matters — Titan X favors about global size ≈ 1/4 work, older 750 about 1/16–1/32. GPU allocations and frees block the stream so memory allocations are synchronous and kill throughput if done per-iteration. Branches inside a warp execute both paths so divergence effectively costs the sum of branches. Tiling into shared memory yields multi× speedups versus naive loads and often fixes bad memory layouts.

AI-written summary · about

  1. 0:00Introduction
  2. 2:25Grid vs Blocks
  3. 4:00Scheduling
  4. 6:00Block size
  5. 10:55Synchronization
  6. 12:40Divergent code
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.