numba提升python运行速度的实例方法

作者:十一 时间:2022-10-06 20:39:27 

大家都知道Python运行速度很慢,但是轮子多,因此用户十分广泛,在各种领域上都能用到Python,但是最头疼的还是,解决运行速度问题,因此这里给大家介绍的是numba,是基本是等于再造语言。但是支持的numpy函数并不多。要让能jit的函数多起来才行。下面就详细介绍使用numba提升python运行速度方法。

numba简介:

能够实现将python函数编译为机器代码,提高运行速度。

工作作用:

给python换一种编译器

使用numba:

1、导入numba及其编译器


import numpy as np
import numba
from numba import jit

2、传入numba装饰器jit,编写函数


@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、函数传入实参


x = np.arange(100).reshape(10, 10)
go_fast(x)

4、加速的函数执行时间


% timeit go_fast(x)

知识点扩展:

numba适合科学计算

numpy是为面向numpy数组的计算任务而设计的。

在面向数组的计算任务中,数据并行性对于像GPU这样的加速器是很自然的。Numba了解NumPy数组类型,并使用它们生成高效的编译代码,用于在GPU或多核CPU上执行。特殊装饰器还可以创建函数,像numpy函数那样在numpy数组上广播。

什么情况下使用numba呢?

  • 使用numpy数组做大量科学计算时

  • 使用for循环时

来源:https://www.py.cn/toutiao/23259.html

标签:numba,python,运行速度
0
投稿

猜你喜欢

  • 使用 XSLT 解释 XML 文件

    2009-03-08 19:06:00
  • J2EE基础应用:J2EE中SQL语句自动构造方法

    2009-09-18 09:06:00
  • 301转向和网址规范化

    2007-09-26 14:00:00
  • Python实现的视频播放器功能完整示例

    2023-05-04 06:33:56
  • JS实现jQuery的append功能

    2024-04-22 22:23:00
  • 基于Python+Tkinter实现一个简易计算器

    2021-06-23 00:40:29
  • Python类绑定方法及非绑定方法实例解析

    2022-08-10 11:36:38
  • mysql UNIX时间戳与日期的相互转换

    2010-02-10 12:10:00
  • 解决vue项目 build之后资源文件找不到的问题

    2024-04-27 16:07:42
  • javascript 移动鼠标得到单元格所在table表中的rowIndex位置[兼容ie,firefox] <font color=red>原创</font>

    2024-04-18 09:50:31
  • 在import scipy.misc 后找不到 imsave的解决方案

    2023-08-09 05:21:45
  • 如何优化Mysql千万级快速分页

    2024-01-17 03:37:47
  • 纯JS实现动态时间显示代码

    2024-05-02 17:31:34
  • 渗透和改变 非洲web 2.0网站Logo

    2008-01-22 13:31:00
  • 安装PyInstaller失败问题解决

    2022-03-18 04:21:41
  • DBCC CHECKIDENT 重置数据库标识列从某一数值开始

    2024-01-15 11:16:27
  • 浅谈pytorch中为什么要用 zero_grad() 将梯度清零

    2022-10-02 11:24:18
  • javascript之学会吝啬 精简代码

    2024-04-19 09:52:21
  • 如何把外网python虚拟环境迁移到内网

    2021-12-28 14:08:13
  • python网络编程之文件下载实例分析

    2021-06-04 08:02:29
  • asp之家 网络编程 m.aspxhome.com