STEM Lessons for College Students

Fast and Flexible Linear Algebra in Julia – CME 510

Fast and flexible linear algebra in Julia
Andreas Noack, MIT CSAIL,

Applied scientists often develop computer programs exploratively,
where data examination, manipulation, visualization and code
development are tightly coupled. Traditionally, the programming
languages used are slow, with performance critical computations
relegated to library code written in languages on the other side of
Ousterhout’s dichotomy, e.g. LAPACK. I will introduce the Julia
programming language and argue that it is well suited for computational
linear algebra. Julia provides features for exploratory program
development, but the language itself can be almost as fast as C and
Fortran. Furthermore, Julia’s rich type system makes it possible to
extend linear algebra functions with user defined element types, such
as finite fields or strings with algebraic structured attached. I
will show examples of Julia programs that are relatively simple, yet
fast and flexible at the same time. Finally, the potential and
challenges for parallel linear algebra in Julia will be discussed.

%d bloggers like this: