天天看點

Python高性能計算庫—Numba

本文介紹一個新的Python庫——Numba,在計算性能方面,它表現的更加友好。

1. Numba是什麼?

Numba是一個庫,可以在運作時将Python代碼編譯為本地機器指令,而不會強制大幅度的改變普通的Python代碼(稍後再做說明)。翻譯/魔術是使用LLVM編譯器完成的,該編譯器是相當活躍的開源社群開發的。

Numba最初是由Continuum Analytics内部開發,此公司也開發了著名的Anaconda,但現在它是開源的。核心應用領域是math-heavy(密集數學?重型數學?)和array-oriented(面向數組)的功能,它們在本地Python中相當緩慢。想象一下,在Python中編寫一個子產品,必須一個元素接着一個元素的循環周遊一個非常大的數組來執行一些計算,而不能使用向量操作來重寫。這是很不好的主意,是吧?是以“通常”這類庫函數是用