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:20211207T055339Z
LOCATION:226
DTSTART;TZID=America/Chicago:20211114T143900
DTEND;TZID=America/Chicago:20211114T144600
UID:submissions.supercomputing.org_SC21_sess431_ws_llvmlt106@linklings.com
SUMMARY:Enzyme: Fast, Language Agnostic, Differentiation of Parallel Progr
 ams in LLVM
DESCRIPTION:Workshop\n\nEnzyme: Fast, Language Agnostic, Differentiation o
 f Parallel Programs in LLVM\n\nMoses, Churavy\n\nDerivatives are key to al
 gorithms in scientific computing and machine learning such as optimization
 , uncertainty quantification, and stability analysis. Enzyme is a LLVM com
 piler plugin for reverse-mode automatic differentiation (AD) and thus gene
 rates fast gradients of programs in a variety of languages (C/C++, Fortran
 , Julia, Rust, etc) and architectures (CPU, CUDA, ROCm). Unlike existing t
 ools which must operate at the source level, Enzyme can differentiate afte
 r optimization, which allows for asymptotically faster gradients. The need
  to optimize first is accentuated when differentiating parallel and specif
 ically GPU programs, where data races and complex memory hierarchies can d
 ramatically change runtimes. In addition to describing the importance that
  optimizations have on AD, this talk will preview the challenges that aris
 e when synthesizing parallel gradient functions.\n\nFor more details on GP
 U AD and GPU/AD-specific optimization, come to our SC talk!\n\nTag: Parall
 el Programming Systems\n\nRegistration Category: Workshop Reg Pass
END:VEVENT
END:VCALENDAR
