JuliaCon 2017 has ended
Thursday, June 22 • 4:21pm - 4:57pm
Mixed-Mode Automatic Differentiation in Julia

Sign up or log in to save this to your schedule and see who's attending!

Feedback form is now closed.
Julia's unique execution model, metaprogramming facilities, and type system make it an ideal candidate language for native automatic differentiation (AD). In this talk, we'll discuss a variety of Julia-specific tricks employed by ForwardDiff and ReverseDiff to differentiate user-provided Julia functions. Topics covered include the implementation of a native Julia execution tracer via operator overloading, functor-based directives for specialized instruction taping, SIMD vectorization and instruction elision for inlined dual number operations, and vectorized differentiation of linear algebraic expressions. I'll close the talk with a glimpse into the future of AD in Julia and JuMP, highlighting the effect new features may have on other downstream projects like Celeste, Optim and RigidBodyDynamics.

avatar for Jarrett Revels

Jarrett Revels

I like to make Julia code differentiate itself.

Thursday June 22, 2017 4:21pm - 4:57pm
West Pauley Pauley Ballroom, Berkeley, CA