Numba is a Python compiler, specifically for numerical functions and allows you to accelerate your applications with high performance functions written directly in Python.
Numba generates machine code optimized from pure Python code using LLVM. With a couple of simple changes, our Python code (function-oriented) can be optimized “just-in-time” to obtain a performance similar to that of C, C++, without having to change the language.
You can find the entire code in my GitHub! :)
Numba is a compiler that allows you to accelerate Python code (numerical functions) for both CPU and GPU:
int
, float
, complex
. For now, there are limitations to use it with string data.Numba is not the only way to program in CUDA, it is usually programmed in C/C ++ directly for it. But Numba allows you to program directly in Python and optimize it for both CPU and GPU with few changes in our code. In relation to Python, there are other alternatives such as pyCUDA, here is a comparison between them:
CUDA C/C++:
pyCUDA