这一招将 Numpy 加速 700 倍
(给程序员的那些事加星标)
转自:机器之心
【导读】:作为 Python 语言的一个扩展程序库,Numpy 支持大量的维度数组与矩阵运算,为 Python 社区带来了很多帮助。借助于 Numpy,数据科学家、机器学习实践者和统计学家能够以一种简单高效的方式处理大量的矩阵数据。那么 Numpy 速度还能提升吗?本文介绍了如何利用 CuPy 库来加速 Numpy 运算速度。
就其自身来说,Numpy 的速度已经较 Python 有了很大的提升。当你发现 Python 代码运行较慢,尤其出现大量的 for-loops 循环时,通常可以将数据处理移入 Numpy 并实现其向量化最高速度处理。

pip?install?cupy
i7–8700k CPU
1080 Ti GPU
32 GB of DDR4 3000MHz RAM
CUDA 9.0
import?numpy?as?np
import?cupy?as?cp
import?time
###?Numpy?and?CPU
s?=?time.time()
*x_cpu?=?np.ones((1000,1000,1000))*
e?=?time.time()
print(e?-?s)###?CuPy?and?GPU
s?=?time.time()
*x_gpu?=?cp.ones((1000,1000,1000))*
e?=?time.time()
print(e?-?s)
###?Numpy?and?CPU
s?=?time.time()
*x_cpu?*=?5*
e?=?time.time()
print(e?-?s)###?CuPy?and?GPU
s?=?time.time()
*x_gpu?*=?5*
e?=?time.time()
print(e?-?s)
数组乘以 5
数组本身相乘
数组添加到其自身
###?Numpy?and?CPU
s?=?time.time()
*x_cpu?*=?5
x_cpu?*=?x_cpu
x_cpu?+=?x_cpu*
e?=?time.time()
print(e?-?s)###?CuPy?and?GPU
s?=?time.time()
*x_gpu?*=?5
x_gpu?*=?x_gpu
x_gpu?+=?x_gpu*
e?=?time.time()
print(e?-?s)

关注「程序员的那些事」加星标,不错过圈内事

圈内事,我在看?
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号随时掌握互联网精彩
赞助链接
排名
热点
搜索指数
- 1 习近平将发表二〇二六年新年贺词 7904141
- 2 2026年国补政策来了 7808738
- 3 东部战区:开火!开火!全部命中! 7712893
- 4 2026年这些民生政策将惠及百姓 7616985
- 5 小学食堂米线过期2.5小时被罚5万 7519709
- 6 解放军喊话驱离台军 原声曝光 7428214
- 7 为博流量直播踩烈士陵墓?绝不姑息 7327605
- 8 每月最高800元!多地发放养老消费券 7238391
- 9 数字人民币升级 1月1日起将计付利息 7141831
- 10 2026年1月1日起 一批新规将施行 7040675


程序员的那些事
