Numba is a compiler that optimizes code written in pure Python using the Low-Level Virtual Machine (LLVM) compiler infrastructure. It efficiently compiles math-heavy Python code to reach performance similar to C, C++, and Fortran. It understands a range of numpy functions, Python construct libraries, and operators, as well as a range of math functions from the standard library, and generates corresponding native code for Graphical Processing Units (GPUs) and Central Processing Units (CPUs), with simple annotations.
In this section, we will use the IPython interactive interpreter to work with the code. It is an enhanced interactive Python shell that particularly supports so-called magic commands, which—in our case—we will use for timing functions. One of the options is to use the interpreter directly in the console. A couple of other options...