Category Archives: Julia

DifferentialEquations.jl v6.8.0: Advanced Stiff Differential Equation Solving

By: SciML

Re-posted from: https://sciml.ai/2019/11/07/ParallelStiff.html

This release covers the completion of another successful summer. We have now
completed a new round of tooling for solving large stiff and sparse differential
equations. Most of this is covered in the exciting….

New Tutorial: Solving Stiff Equations for Advanced Users!

That is right, we now have a new tutorial added to the documentation on
solving stiff differential equations.
This tutorial goes into depth, showing how to use our recent developments to
do things like automatically detect and optimize a solver with respect to
sparsity pattern, or automatically symbolically calculate a Jacobian from a
numerical code. This should serve as a great resource for the advanced users
who want to know how to get started with those finer details like sparsity
patterns and mass matrices.

Automatic Colorization and Optimization for Structured Matrices

As showcased in the tutorial, if you have jac_prototype be a structured matrix,
then the colorvec is automatically computed, meaning that things like
BandedMatrix are now automatically optimized. The default linear solvers make
use of their special methods, meaning that DiffEq has full support for these
structured matrix objects in an optimal manner.

Implicit Extrapolation and Parallel DIRK for Stiff ODEs

At the tail end of the summer, a set of implicit extrapolation methods were
completed. We plan to parallelize these over the next year, seeing what can
happen on small stiff ODEs if parallel W-factorizations are allowed.

Automatic Conversion of Numerical to Symbolic Code with Modelingtoolkitize

This is just really cool and showcased in the new tutorial. If you give us a
function for numerically computing the ODE, we can now automatically convert
said function into a symbolic form in order to compute quantities like the
Jacobia and then build a Julia code for the generated Jacobian. Check out the
new tutorial if you’re curious, because although it sounds crazy… this is
now a standard feature!

GPU-Optimized Sparse (Colored) Automatic and Finite Differentiation

SparseDiffTools.jl and DiffEqDiffTools.jl were made GPU-optimized, meaning that
the stiff ODE solvers now do not have a rate-limiting step at the Jacobian
construction.

DiffEqBiological.jl: Homotopy Continuation

DiffEqBiological got support for automatic bifurcation plot generation by
connecting with HomotopyContinuation.jl. See the new tutorial

Greatly improved delay differential equation solving

David Widmann (@devmotion) greatly improved the delay differential equation
solver’s implicit step handling, along with adding a bunch of tests to show
that it passes the special RADAR5 test suite!

Color Differentiation Integration with Native Julia DE Solvers

The ODEFunction, DDEFunction, SDEFunction, DAEFunction, etc. constructors
now allow you to specify a color vector. This will reduce the number of f
calls required to compute a sparse Jacobian, giving a massive speedup to the
computation of a Jacobian and thus of an implicit differential equation solve.
The color vectors can be computed automatically using the SparseDiffTools.jl
library’s matrix_colors function. Thank JSoC student Langwen Huang
(@huanglangwen) for this contribution.

Improved compile times

Compile times should be majorly improved now thanks to work from David
Widmann (@devmotion) and others.

Next Directions

Our current development is very much driven by the ongoing GSoC/JSoC projects,
which is a good thing because they are outputting some really amazing results!

Here’s some things to look forward to:

  • Automated matrix-free finite difference PDE operators
  • Jacobian reuse efficiency in Rosenbrock-W methods
  • Native Julia fully implicit ODE (DAE) solving in OrdinaryDiffEq.jl
  • High Strong Order Methods for Non-Commutative Noise SDEs
  • Stochastic delay differential equations

Newsletter November 2019

Julia Computing at the American Conference on Pharmacometrics: Julia Computing presented Pumas at the American Conference on Pharmacometrics (ACoP). Pumas is an artificial intelligence engine for pharmaceutical modeling and simulation in Julia. Julia Computing’s Chris Rackauckas and University of Maryland, Baltimore (UMB)’s Vijay Ivaturi were the winners of the International Society of Pharmacometrics (ISoP) Mathematical and Computational Sciences (MCS) Special Interest Group (SIG) Poster Award for Bayesian-Koopman Techniques for Optimization of Intervention With Respect to Uncertainty in PuMaS.jl.

Live Online Instructor-Led Julia Training: Sign up now for live instructor-led online courses taught by Julia Computing instructors. Each course is 4 hours per day for two days, for a total of 8 hours of instruction per course.

Course Schedule Cost for 8 hours of live online instruction from Julia Computing instructors
Introduction to Julia Day 1: Wed Nov 13 from 11 am – 3 pm ET Day 2: Thurs Nov 14 from 11 am – 3 pm ET $250
Introduction to Machine Learning and Artificial Intelligence Using Julia Day 1: Wed Nov 20 from 11 am – 3 pm ET Day 2: Thurs Nov 21 from 11 am – 3 pm ET $500
Parallel Computing in Julia Day 1: Tues Nov 26 from 11 am – 3 pm ET Day 2: Wed Nov 27 from 11 am – 3 pm ET $500
Register & Pay

Julia Enterprise Users: Enterprise use of Julia continues to grow. Please contact us for more information about Julia Computing enterprise solutions including JuliaSure, JuliaTeam and JuliaRun.

Julia Computing’s Alan Edelman Wins Institute of Electrical and Electronics Engineers (IEEE) Sidney Fernbach Award: Alan Edelman won the Sidney Fernbach Award for “outstanding breakthroughs in high-performance computing, linear algebra, and computational science and for contributions to the Julia programming language.” Alan is co-creator of Julia, co-founder and Chief Scientist at Julia Computing, director of the Julia Lab at MIT and Professor of Applied Mathematics at MIT. Alan will accept the award at SC19 in Denver, Colorado on November 19.

From Tree Leaves to Galaxies: Keno Fischer, Julia Computing co-founder and CTO (Tools) discussed Julia and Julia Computing with Robin.ly. The full video interview is available here.



JuliaTeam on AWS Marketplace: JuliaTeam is available for purchase on Amazon Web Services (AWS) Marketplace. JuliaTeam is an enterprise solution from Julia Computing that makes it easy for enterprise users to install and manage public and private packages, adhere to enterprise governance policies, deploy and scale applications, manage licenses and set up continuous integration.

Julia Day in New York: Julia Computing hosted a successful Julia Day in New York at Google’s New York headquarters on October 7. More than 50 attendees joined a discussion with Julia co-creators and Julia Computing co-founders Viral Shah and Stefan Karpinski, Conning Managing Director David Weiss and Elton Pereira from State Street / BestX.

Julia Computing Webinars: Julia Computing invites you to join two upcoming Webinars. Each Webinar is one hour in length, including question and answer, and led by Julia Computing’s Dr. Matt Bauman. There is no cost to participate.

Webinar Schedule Registration
Machine Learning with Julia
Dr. Matt Bauman, Julia Computing
Tues Nov 19
12:00 pm – 1:00 pm ET
Click here to register
Private Package Management and Governance with Julia
Dr. Matt Bauman, Julia Computing
Thurs Nov 28
12:00 pm – 1:00 pm ET
Click here to register

Other Upcoming Julia Computing Events

Julia Computing will be participating in a number of upcoming conferences. Please contact us if you would like to meet with us at any of these events.

  1. Denver: SC19 with Alan Edelman (Julia Computing) Nov 17-22
  2. London: Open Data Science Conference (ODSC) with Avik Sengupta (Julia Computing) Nov 19-22
  3. Montreal: Node + JS Interactive with Jameson Nash (Julia Computing) Dec 11-12

JuliaCon 2020: JuliaCon 2020 will take place July 27-31 at ISCTE – Instituto Universitário de Lisboa (ISCTE-IUL) in Lisbon, Portugal. Stay tuned for more details.

JuliaBox (Free) Ends – JuliaBox (Paid) Starts at Just $7 per Month for Academic Users: In January, we notified the Julia community that Julia’s growth was making free JuliaBox unsustainable, and that we would sunset the free version of JuliaBox. As a result, the free version of JuliaBox ended on Oct 31, 2019. We are grateful to all JuliaBox users – especially our paid users. If you want to continue using JuliaBox, please sign up for the paid version. For academic users, the cost starts at just $7 per month. If you think your organization, academic department or university should purchase JuliaBox, please contact the decision-maker at your organization, academic department or university, and explain to that person how and why JuliaBox is important to your work. Pricing information is available online, including the 50% academic discount. For other questions about purchasing a paid subscription to JuliaBox, including setting up a new account for your organization and invoicing, please contact us.

Julia and Julia Computing in the News

  • InsideHPC: Julia Computing Chief Scientist Alan Edelman Wins Prestigious IEEE Sidney Fernbach Award
  • MIT News: Alan Edelman recognized with 2019 IEEE Computer Society Sidney Fernbach Award
  • HPCWire: JuliaTeam Available on Amazon Web Services Marketplace
  • DevClass: AWS Tempts Open Source Projects with Promo Credit Sweeteners
  • HostReview: Which Machine Learning Frameworks To Try In 2019-2020
  • SIAM News: Scientific Machine Learning – How Julia Employs Differentiable Programming to Do it Best

Julia Blog Posts

Upcoming Julia Events

Recent Julia Events

Julia Meetup Groups: There are 37 Julia Meetup groups worldwide with 8,725 members. If there’s a Julia Meetup group in your area, we hope you will consider joining, participating and helping to organize events. If there isn’t, we hope you will consider starting one.

Julia Jobs, Fellowships and Internships

Do you work at or know of an organization looking to hire Julia programmers as staff, research fellows or interns? Would your employer be interested in hiring interns to work on open source packages that are useful to their business? Help us connect members of our community to great opportunities by sending us an email, and we’ll get the word out.

There are more than 300 Julia jobs currently listed on Indeed.com, including jobs at Accenture, Airbus, Amazon, AstraZeneca, AT&T, Barnes & Noble, BlackRock, Capital One, CBRE, Charles River Analytics, Citigroup, Comcast, Conde Nast, Cooper Tire & Rubber, Disney, Dow Jones, Facebook, Gallup, Genentech, General Electric, Google, Huawei, Ipsos, Johnson & Johnson, KPMG, Lockheed Martin, Match, McKinsey, NBCUniversal, Netflix, Nielsen, Novartis, OKCupid, Opendoor, Oracle, Pandora, Peapod, Pfizer, Raytheon, Spectrum, Wells Fargo, Zillow, Brown, BYU, Caltech, Dartmouth, Emory, Harvard, Johns Hopkins, Louisiana State University, Massachusetts General Hospital, MIT, Penn State, Princeton, UC Davis, University of Chicago, University of Delaware, University of Kentucky, UNC-Chapel Hill, USC, University of Virginia, Argonne National Laboratory, Federal Reserve Bank, Lawrence Berkeley National Laboratory, Los Alamos National Laboratory, National Renewable Energy Laboratory, Oak Ridge National Laboratory, Pacific Northwest National Laboratory, State of Wisconsin and many more.

Contact Us: Please contact us if you wish to:

  • Purchase or obtain license information for Julia products such as JuliaSure, JuliaTeam, or JuliaRun
  • Obtain pricing for Julia consulting projects for your organization
  • Schedule Julia training for your organization
  • Share information about exciting new Julia case studies or use cases
  • Spread the word about an upcoming conference, workshop, training, hackathon, meetup, talk or presentation involving Julia
  • Partner with Julia Computing to organize a Julia meetup, conference, workshop, training, hackathon, talk or presentation involving Julia
  • Submit a Julia internship, fellowship or job posting

About Julia and Julia Computing

Julia is the fastest high performance open source computing language for data, analytics, algorithmic trading, machine learning, artificial intelligence, and other scientific and numeric computing applications. Julia solves the two language problem by combining the ease of use of Python and R with the speed of C++. Julia provides parallel computing capabilities out of the box and unlimited scalability with minimal effort. Julia has been downloaded more than 11 million times and is used at more than 1,500 universities. Julia co-creators are the winners of the 2019 James H. Wilkinson Prize for Numerical Software. Julia has run at petascale on 650,000 cores with 1.3 million threads to analyze over 56 terabytes of data using Cori, one of the ten largest and most powerful supercomputers in the world.

Julia Computing was founded in 2015 by all the creators of Julia to develop products and provide professional services to businesses and researchers using Julia.