An introductory hour to the Julia programming language

Crédit : Wikipédia

Date
6 May 2021 14:00 — 15:00

The Julia programming language offers a design that bridges the traditional gap between easy-to-read scripting languages like python or MATLAB and traditional compiled languages like C or FORTRAN for high-performance computations. More precisely Julia is both: Readable and fast. As a compiled language for high-performance computing it enjoys being part of the exascale club of languages that have achieved a parallel performance of exaflops per second (next to only C and FORTRAN). At the same time the syntax feels a lot like MATLAB or python, which has lead to a rapidly growing number of application packages ranging from numerical analysis, statistics to the general simulation sciences (physics, chemistry, climate science, geology, …). Not only with respect to language features but also with respect to targeted scientific communities Julia thus enables to build bridges from fundamental mathematical research to HPC applications.

In this talk I will present the key unique features of the language and discuss a few illustrative examples motivated from my own work. I use Julia for example within the density-functional toolkit (DFTK, https://dftk.org), which is a mathematically-oriented research code for quantum-chemical simulations. Building on Julia’s features this code can be used both to develop new numerical schemes on reduced problems (where analytical solutions are available) and use the same implementation to scale them up to the range relevant to practical simulations in materials science and chemistry (which feature non-linear PDEs that can take hours to weeks to solve numerically). The ability to achieve this in one code would be impossible without Julia, which in my opinion makes this the best language for any interdisciplinary research.

Avatar
Michael Herbst
Post-Doctorant

Sur le même sujet