BEGIN:VCALENDAR
VERSION:2.0
PRODID:Linklings LLC
BEGIN:VTIMEZONE
TZID:America/Chicago
X-LIC-LOCATION:America/Chicago
BEGIN:DAYLIGHT
TZOFFSETFROM:-0600
TZOFFSETTO:-0500
TZNAME:CDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0500
TZOFFSETTO:-0600
TZNAME:CST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTAMP:20211207T054807Z
LOCATION:220-221
DTSTART;TZID=America/Chicago:20211117T153000
DTEND;TZID=America/Chicago:20211117T160000
UID:submissions.supercomputing.org_SC21_sess156_pap242@linklings.com
SUMMARY:Reverse-Mode Automatic Differentiation and Optimization of GPU Ker
 nels via Enzyme
DESCRIPTION:Paper\n\nReverse-Mode Automatic Differentiation and Optimizati
 on of GPU Kernels via Enzyme\n\nMoses, Churavy, Paehler, Hückelheim, Naray
 anan...\n\nDerivatives are key to algorithms in scientific computing and m
 achine learning such as optimization, uncertainty quantification, and stab
 ility analysis. Enzyme is a LLVM compiler plugin for reverse-mode automati
 c differentiation (AD) and thus generates fast gradients of programs in a 
 variety of languages, including C/C++, Fortran, Julia, and Rust. Our paper
  presents a combination of novel techniques that make Enzyme the first aut
 omatic reverse-mode AD tool to generate gradients of GPU kernels. As Enzym
 e differentiates within a general-purpose compiler, we are able to introdu
 ce novel GPU and AD-specific optimizations. We differentiate five GPU-base
 d HPC applications, executed on NVIDIA and AMD GPUs. All benchmarks run wi
 thin an order of magnitude of the original program's runtime. Without GPU 
 and AD-specific optimizations, gradients of GPU kernels either fail to run
  from a lack of resources or have infeasible overhead. We show that increa
 sing the problem size does not substantially impact the overhead from diff
 erentiation.\n\nTag: Reproducibility Badge, Applications, Heterogeneous Sy
 stems, Scientific Computing\n\nRegistration Category: Tech Program Reg Pas
 s\n\nAward Finalist: Best Student Paper Finalists, Best Reproducibility Ad
 vancement Finalist\n\nReproducibility Badges: Artifact Available, Artifact
  Functional, Results Reproduced
END:VEVENT
END:VCALENDAR
