numba提升python運(yùn)行速度的實(shí)例方法
大家都知道Python運(yùn)行速度很慢,但是輪子多,因此用戶十分廣泛,在各種領(lǐng)域上都能用到Python,但是最頭疼的還是,解決運(yùn)行速度問題,因此這里給大家介紹的是numba,是基本是等于再造語言。但是支持的numpy函數(shù)并不多。要讓能jit的函數(shù)多起來才行。下面就詳細(xì)介紹使用numba提升python運(yùn)行速度方法。
numba簡(jiǎn)介:
能夠?qū)崿F(xiàn)將python函數(shù)編譯為機(jī)器代碼,提高運(yùn)行速度。
工作作用:
給python換一種編譯器
使用numba:
1、導(dǎo)入numba及其編譯器
import numpy as np import numba from numba import jit
2、傳入numba裝飾器jit,編寫函數(shù)
@jit(nopython=True)
def go_fast(a):
trace = 0
for i in range(a.shape[0]):
trace += np.tanh(a[i, i])
return a + trace
3、函數(shù)傳入實(shí)參
x = np.arange(100).reshape(10, 10) go_fast(x)
4、加速的函數(shù)執(zhí)行時(shí)間
% timeit go_fast(x)
知識(shí)點(diǎn)擴(kuò)展:
numba適合科學(xué)計(jì)算
numpy是為面向numpy數(shù)組的計(jì)算任務(wù)而設(shè)計(jì)的。
在面向數(shù)組的計(jì)算任務(wù)中,數(shù)據(jù)并行性對(duì)于像GPU這樣的加速器是很自然的。Numba了解NumPy數(shù)組類型,并使用它們生成高效的編譯代碼,用于在GPU或多核CPU上執(zhí)行。特殊裝飾器還可以創(chuàng)建函數(shù),像numpy函數(shù)那樣在numpy數(shù)組上廣播。
什么情況下使用numba呢?
- 使用numpy數(shù)組做大量科學(xué)計(jì)算時(shí)
- 使用for循環(huán)時(shí)
到此這篇關(guān)于numba提升python運(yùn)行速度的實(shí)例方法的文章就介紹到這了,更多相關(guān)如何使用numba提升python運(yùn)行速度內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深入解析python項(xiàng)目引用運(yùn)行路徑
這篇文章主要介紹了python項(xiàng)目引用運(yùn)行路徑的問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-05-05
Python延時(shí)操作實(shí)現(xiàn)方法示例
這篇文章主要介紹了Python延時(shí)操作實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了Python基于sched庫與time庫實(shí)現(xiàn)延時(shí)操作的方法,需要的朋友可以參考下2018-08-08
python使用cartopy在地圖中添加經(jīng)緯線的示例代碼
gridlines可以根據(jù)坐標(biāo)系,自動(dòng)繪制網(wǎng)格線,這對(duì)于普通繪圖來說顯然不必單獨(dú)拿出來說說,但在地圖中,經(jīng)緯線幾乎是必不可少的,本文將給大家介紹了python使用cartopy在地圖中添加經(jīng)緯線的方法,需要的朋友可以參考下2024-01-01
python中通過selenium簡(jiǎn)單操作及元素定位知識(shí)點(diǎn)總結(jié)
在本篇文章里小編給大家整理的是關(guān)于python中通過selenium簡(jiǎn)單操作及元素定位的知識(shí)點(diǎn),有需要的朋友們可以學(xué)習(xí)下。2019-09-09
Python 創(chuàng)建子進(jìn)程模塊subprocess詳解
這篇文章主要介紹了Python 創(chuàng)建子進(jìn)程模塊subprocess詳解,本文詳細(xì)講解了subprocess模塊的方法、參數(shù)、使用實(shí)例等,需要的朋友可以參考下2015-04-04
python中圖片轉(zhuǎn)換為pdf實(shí)現(xiàn)方法
本文主要介紹了使用Python的Pillow分支和reportlab庫將圖片轉(zhuǎn)換為PDF文件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03

