Numba如何使用?老男孩Python培训机构
Numba,一款可以让Python函数编译为机器代码的JIT编译器,它可以加速Python运行,想必很多人对它都十分感兴趣,接下来我们就来看看吧。
Numba是什么?
Numba是一个库,可以在运行时将Python代码编译为本地机器指令,而不会强制大幅度的改变普通的Python代码(稍后再做说明)。翻译/魔术是使用LLVM编译器完成的,该编译器是相当活跃的开源社区开发的。
Numba*初是由Continuum Analytics内部开发,此公司也开发了**的Anaconda,但现在它是开源的。核心应用领域是math-heavy(密集数学?重型数学?)和array-oriented(面向数组)的功能,它们在本地Python中相当缓慢。想象一下,在Python中编写一个模块,必须一个元素接着一个元素的循环遍历一个非常大的数组来执行一些计算,而不能使用向量操作来重写。这是很不好的主意,是吧?所以“通常”这类库函数是用C / C ++或Fortran编写的,编译后,在Python中作为外部库使用。Numba这类函数也可以写在普通的Python模块中,而且运行速度的差别正在逐渐缩小。
如何使用Numba呢?
使用它的要求不多。基本上,你写一个自己的“普通”的Python函数,然后给函数定义添加一个装饰(如果你不是很熟悉装饰器,读一下关于this或that)。你可以使用不同类型的装饰器,但@jit可能是刚开始的选择之一。其他装饰器可用于例如创建numpy通用功能@vectorize或编写将在CUDA GPU上执行的代码@cuda。在本文中暂时不介绍这些装饰。现在,让我们来看看基本的步骤。他们提供的代码示例是2d数组的求和函数,以下是代码:
from numba import jit
from numpy import arange
# jit decorator tells Numba to compile this function.# The argument types will be inferred by Numba when function is called.
@jit
def sum2d(arr):
M, N = arr.shape
result = 0.0
for i in range(M):
for j in range(N):
result += arr[i,j]
return result
a = arange(9).reshape(3,3)
print(sum2d(a))
正如你所看到的,Numba装饰器被添加到函数定义中,并且voilá这个函数将运行得很快。但是,这里带来了很有趣的注意事项:你只能使用Numpy和标准库里的函数来加快Numba速度,甚至不需要开了他们所有的特性。他们有一个相当好的文档(参考资料),列出了所有支持的内容。见here是所支持Python的功能和here 是所支持的Numpy功能。现在支持的功能可能还不太多,但我想告诉你,这就够了!请记住,Numba不是要加快你的数据库查询或如何强化图像处理功能。他们的目标是加快面向数组的计算,我们可以使用它们库中提供的函数来解决。 |
VX:18710030740 老男孩IT教育:北京/上海/深圳 Python linux GO 网络安全 软件测试周末、脱产、网络课程
|
友情提示:
信息由用户自行发布,采用请谨慎,我们鼓励您当面交易。如有不符合法规或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们。名站在线只为传递信息,我们不做任何双方证明,也不承担任何法律责任。 信息转载,请标明来源于www.fwol.cn ,谢谢。 |
当前页在本站[名站在线]7天内点击次数(点击次数为零的日期不显示): |
信息评估: |
(还没有网友对该信息作出评估,你想为该信息提供第一个评估吗?) |
畅镁文化_上等钱币供应商龙岩厦门钱币邮票交易中心畅镁文化_上等钱币供应商龙岩厦门钱币邮票交易中心 畅镁文化在厦门市凭借有利的资源和高超的技艺,以制作优质的钱币而闻名国内财务服务行业。本公司在工艺制作界拥有较高的名誉,为投资理财需求者提供的钱币主要用于投资理财。我们的销客户遍布福建厦门,我们相信只有让客户满意公司才能走的更远。 继续往下走,瞧瞧更多,厦门钱币邮票交易中心代理加盟,龙岩钱币邮票,泉州钱币邮票的信息 本公司生产制造的钱币在福建厦门...新乡价格合理的木材抓斗批售,四川山东木材抓斗新乡价格合理的木材抓斗批,四川山东木材抓斗 广兴起重供应的木材抓斗质量**,是由优质的不锈钢;铸铁;铸钢制造而成的,型号为木材抓斗,约重1吨,您在购买过程中请仔细检查我们的参数是否与您要购买的参数一致,若达成交易,我们会在下单后隔天内发货,并提供24小时在线咨询的后服务。 福建山东木材抓斗,河南木材抓斗厂,北京山东木材抓斗 以下内容仅作为参考数据,以实际为准。 木材抓斗品牌广兴 生产地址河南 ...无心磨自动送料机供应商福建优惠的轮胎螺丝滚丝自动送料机哪里有...无心磨自动送料机供应商福建优惠的轮胎螺丝滚丝自动送料机哪里有供应 福建省晋江市科创机械制造有限公司成立于2013-03-30,拥有**的效率和质量程序,生产供应的轮胎螺丝滚丝自动送料机可以达到您要求的性能标准,提供**竞争力的制造成本。作为一股份有限公司,公司屹立于机床行业领域已多年,为更好解决在有需求的客户的产品设计方面提供帮助,公司依靠科技进步和严格理,完善的服务,为用户提供优质**的轮胎螺丝滚丝自动...再力花高端领跑,价格划算的再力花倾情奉献1.重庆景春生态植物有限公司于2014-03-10成立,现坐落于市辖区、渝北区,员工近名,是一家行业专家带领的团队,专注于产品,现已形成了千屈菜、荷花批发、再力花等产品系列,能够为客户提供更多的方案。 2.重庆景春特推出重庆景春生态植物,重庆景春生态植物是公司倾情打造,芦苇种植技术详解主要季节是在每年开春的时候选择,分有性繁殖和无性繁殖两种,也就是种子和种苗繁殖 芦苇是湿地造景,河道绿化净化重要植物,种植通常...重点推荐!山东重锤式风机厂家重锤式风机价格重锤式风机批发重点推荐!山东重锤式风机厂重锤式风机价格重锤式风机批发青州市润洋温控设备厂位于山东省青州市花卉之都,交通便利。山东省畜牧机械专业生产厂,是集专业化从事温控设备设计、生产、安装、销,后服务于一体的高科技企业。 公司具有先进的机械加工设备和雄厚的技术力量。公司引进的先进质量控制设备和静动平衡机及液压压制机械,吸取国内外同类产品之精华,采用优质材料和先进工艺研制而成了通风降温风机、湿帘,环流风机,屋...
|
|
|
|
|