cupy
【摘要】
前提:传统的数组和矩阵都是通过numpy来设定,然后numpy来调用cpu计算! cupy的作用:数组和矩阵都是通过cupy来设定,然后cupy来调用gpu并行计算!
区别与联系:
区别:numpy自动调用cpu来进行"数组和矩阵间"的计算,计算任务默认单进程;cupy自动调用gpu来进行"数组和矩阵间"的计算,gpu中默认并行计算!联系:二者的函数和实操...
前提:传统的数组和矩阵都是通过numpy来设定,然后numpy来调用cpu计算!
cupy的作用:数组和矩阵都是通过cupy来设定,然后cupy来调用gpu并行计算!
区别与联系:
- 区别:numpy自动调用cpu来进行"数组和矩阵间"的计算,计算任务默认单进程;cupy自动调用gpu来进行"数组和矩阵间"的计算,gpu中默认并行计算!
- 联系:二者的函数和实操的功能基本完全一样,一般只需把np.xxx()改成cp.xxx()即可。当然,cupy还未完全写完,有些numpy的函数它还未实现(基本用不到)。
cupy的优势:专门进行大型、高维数组/矩阵的快速计算(非常非常快)!
在windows上通过pip安装需要注意cuda的版本,nvcc -V可查看cuda版本,笔者是cuda9.0版本的,安装cupy的指令为pip install cupy-cuda90.
cuda10.0:
pip install cupy-cuda100
@cupy.util.memoize(for_each_device=True) def load_kernel(kernel_name, code, **kwargs): code = Template(code).substitute(**kwargs) kernel_code = cupy.cuda.compile_with_cache(code) return kernel_code.get_function(kernel_name)
文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/jacke121/article/details/106033706
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)