numba提升python运行速度的实例方法
作者:十一 发布时间:2022-10-06 20:39:27
标签:numba,python,运行速度
大家都知道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


猜你喜欢
- 本文实例讲述了PHP策略模式定义与用法。分享给大家供大家参考,具体如下:概述策略模式属于对象的行为模式。其用意是针对一组算法,将每个算法封装
- 1、Python 条件语句Python 条件语句是通过一条或多条语句的执行结果来决定执行的代码块。Python 编程中 if 语句用于控制程
- 本文为大家分享了微信小程序radio组件的使用方法,供大家参考,具体内容如下效果图WXML<view class="tui-
- 软件测试面试如何测试网页的登录页面这个面试题碰到过很多次, 再次总结下来。具体需求: 有一个登陆页面, 上面有2个textbox, 一个提交
- 一、获取时间1.1 获取当前时间代码实现package mainimport (? ? ? ? "fmt"? ? ? ?
- 今天要用python做一个小功能,那就是实现万年历的查询。首先看一下整体感觉实现代码:def is_leap_year(year): &nb
- <script type="text/javascript"> var params&n
- 介绍当在图像上训练深度神经网络模型时,通过对由数据增强生成的更多图像进行训练,可以使模型更好地泛化。常用的增强包括水平和垂直翻转/移位、以一
- 大家都知道,在SQL脚本中设置多字段做关键字相对比较简单,例:primary key(id1,id2) ,但用脚本建数据库就比较麻烦了。那么
- 新手刚开始使用vue时,常会遇见一个坑,那就是热替换失效。什么?你跟我说使用官方的vue-cli去构建,我就是使用vue-cli后突然失效。
- 逛网站的时候经常会遇到需要上传图片的操作,这里主要来说下selenium操作上传文件的操作。前提条件:定位的元素必须是type 属性是fil
- AJAX:Asynchronous JavaScript And XML--------异步JavaScript和XML
- docker最近迷恋使用doker容器,在docker容器进行部署MySQL,以前针对容器的安全性一直存在怀疑的态度,不过如果能够通过容器也
- 上图效果,动态添加绑定radio选项,然后也可以动态删除,右边编辑器删除,左边的视图也对应的删除。视图代码 view:"<u
- 前言:微信H5项目,ios端出现了软键盘输完隐藏后页面不会回弹,下方会有一大块留白最近微信和ios都有版本升级,不知道是哪边升级造成的,但是
- 最近老师在讲 tkinter,所以我做了一个抽奖小游戏。一、效果图先上效果图。红色的小球会围绕蓝色小球做环形运动。我设置的四个角是奖品,其余
- 在 PHP 中实现异步定时多任务消息推送的方式有多种,其中一种常用的方式是使用异步任务队列。以下是一个简单的步骤:安装和配置消息队列服务(如
- 1、引言小丝:鱼哥, 请教你个问题。小鱼:你觉得你得问题,是正儿八经的吗?小丝:那必须的, 人都正经,何况问题呢?小鱼:那可不敢说, 你得问
- 目前绝大多数手机都支持WAP 2.0。WAP 2.0的页面设计具有更好的视觉效果,更接近网页。不过由于手机千差万别,手机浏览器的能力也各不相
- 开发自定义Web框架接收web服务器的动态资源请求,给web服务器提供处理动态资源请求的服务。根据请求资源路径的后缀名进行判断:如果请求资源