A fresh approach to Numerical Computing

Zachary Sunberg, Assistant Professor, AERO

Survey

Scientific computing is pretty good these days

Fast Development

Fast Execution

2011

2013

We love [Matlab, Lisp, Python, Ruby, Perl, Mathematica, and C]; they are wonderful and powerful. For the work we do — scientific computing, machine learning, data mining, large-scale linear algebra, distributed and parallel computing — each one is perfect for some aspects of the work and terrible for others. Each one is a trade-off.

We are greedy: we want more.

2012

Also ~2011: Improving TCAS

Julia solves the two language problem!

  • as easy to read, write, maintain, and collaborate with as Python or MATLAB
  • as fast as C

EASIER

FASTER

Be skeptical! Find out for yourself!

Julia - Speed

Celeste Project

1.54 Petaflops

JuliaCon 2023 (EHT Tools in C++)

Not because Julia is somehow faster, but because it was easier to dev better algs

Julia - Speed

Julia - Speed

How does it work?

Speed: Just-in-time LLVM Compilation

If Julia is so great, why haven't I heard of it?

015 Julia

By Zachary Sunberg

015 Julia

  • 235