Numba通过 LLVM 加速 Python
Numba 是 Cython 的竞争项目。同样地,numba 把 Python 源码通过 LLVMPy 生成 JIT 后的 .so 文件来加速。
不同点:
- numba 是以 JIT 为主的,加速对源码的侵入性较小。
- Cython 则重点在加速高性能 Python 模块的开发上,不依赖 LLVMPy 项目。
- numba 还很不成熟,目前兼容性相当差。
Numba 是 Anaconda,Inc. 赞助的用于Python的NumPy开源优化优化编译器。它使用LLVM编译器项目从Python语法生成机器代码。
Numba可以编译大量以数值为中心的Python子集,包括许多NumPy函数。此外,Numba还支持循环的自动并行化,GPU加速代码的生成以及ufuncs和C回调的创建。
评论