~/talk

JANUS: Fast and Flexible Deep Learning via Symbolic Graph Execution of Imperative

Talkat NSDI 2019 · 2019-02-26..02-28· [machine-learning]
links:none on file
links:none on file
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

JANUS converts unmodified Python imperative DL code into optimized symbolic dataflow graphs by speculative graph generation after lightweight profiling, validating assumptions at runtime and falling back to imperative execution when needed. It handles dynamic control flow, types, and impure functions via added graph ops and a local Python heap copy to preserve semantics. Implemented on TensorFlow with CPython patches (~4,700 LOC + ~2,000 changed), it runs 11 models across 5 categories and achieves up to 47.6× speedup vs imperative and within 4% of symbolic performance.

AI-written summary · about

  1. 0:00Intro
  2. 0:32Deep Learning (DL) Frameworks
  3. 0:59Two Paradigms
  4. 4:17Discrepancy between Python Programs and DL Graphs
  5. 8:53Challenge Summary
  6. 9:27Solution Speculative Graph Generation and Execution
  7. 10:44Overall Workflow on IANUS
  8. 12:58Additional System Aspects
  9. 14:31Evaluation Setup: Frameworks & Environments
  10. 15:13Evaluation Setup: Applications
  11. 15:26ImageNet Test Error with ResNet 50
  12. 16:46Model Convergence
  13. 17:18Normalized Training Throughout
  14. 20:20Conclusion
  15. 24:08JANUS Speedup over Imperative Execution: Breakdown
~/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.