CUDA是NVIDIA针对GPU加速计算而开发的编程框架。通过PyTorch可以很方便地使用CUDA,无须过多地改变代码。

一、numpy运算和python运算

使用 numpy 进行矩阵乘法比使用 Python 的效能会提高很多。
import torch
import numpy# 方形矩阵大小
size = 600a = numpy.random.rand(size, size)
b = numpy.random.rand(size, size)

使用numpy将两个数列相乘,使用timeeit进行计时:

%%timeitx = numpy.dot(a,b)

直接使用python相乘:

%%timeitc = numpy.zeros((size,size))for i in range(size):for j in range(size):for k in range(size):c[i,j] += a[i,k] * b[k,j]passpass

比较二者的用时差异:

第二个用时到达了3分钟多,没有截屏。

二、GPU上的torch张量

创建一个 GPU 中的张量,并检查数据格式。
x = torch.cuda.FloatTensor([3.5])
x.type()
x.device

三、试验GPU性能

# 将前面的numpy数据转换为cuda格式aa = torch.cuda.FloatTensor(a)
bb = torch.cuda.FloatTensor(b)

开始运算:

%%timeitcc = torch.matmul(aa, bb)

比之前还快。

四、检查CUDA是否可用的标准代码

# 检查CUDA是否可用
# 如果可用,转换为cuda格式if torch.cuda.is_available():torch.set_default_tensor_type(torch.cuda.FloatTensor)print("using cuda:", torch.cuda.get_device_name(0))passdevice = torch.device("cuda" if torch.cuda.is_available() else "cpu")device

CUDA——Python基础与实现相关推荐

  1. CUDA PYTHON 并行计算基础

    一.CUDA异构计算基础 1.CUDA简介 CUDA(Compute Unified Device Architecture),是一种基于C/C++的编程方法,支持异构编程的扩展方法,提供了简单明了的 ...

  2. python基础知识及数据分析工具安装及简单使用(Numpy/Scipy/Matplotlib/Pandas/StatsModels/Scikit-Learn/Keras/Gensim))

    Python介绍. Unix & Linux & Window & Mac 平台安装更新 Python3 及VSCode下Python环境配置配置 python基础知识及数据分 ...

  3. 五节课从零起步(无需数学和Python基础)编码实现AI人工智能框架电子书V1

    五节课从零起步  (无需数学和Python 基础)  编码实现AI 人工智能框架          王  家  林        2018/4/15                          ...

  4. f是一个python内部变量类型,Python基础变量类型——List浅析

    Python使用list 一.list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示 ...

  5. python 等号报错_Python学习----Python基础

    Python基础 一.数据类型和变量 1.在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量. 例如: a =520# a是整数prin ...

  6. python基础——继承与派生、组合

    python基础--继承与派生 1 什么是继承: 继承是一种创建新的类的方式,在python中,新建的类可以继承自一个或者多个父类,原始类成为基类或超累,新建的类成为派生类或子类 1.1 继承分为:单 ...

  7. Python学习笔记1 Python基础

    第1章 Python基础 1.1 Python概述及版本介绍 1.Python是一种面向对象的解释型计算机程序设计语言(解释型语言源代码->解释器逐行解释每一句源代码) 2.优点:高级语言.可移 ...

  8. python基础---元组、字典、函数、文件、异常

    文章目录 python基础---元组.字典.函数.文件.异常 Tuple(元组) 常用操作 dict(字典) 函数 文件 异常 python基础-元组.字典.函数.文件.异常 Tuple(元组) tu ...

  9. 快速掌握Python的捷径-Python基础前传(1)

    文: jacky(朱元禄) 开文序 最近看新闻,发现高考都考Python了,随着人工智能的火热,学数据科学的人越来越多了!但对于数据行业本身来说,现象级的火热,这并不是什么好事.  方丈高楼平地起,无 ...

最新文章

  1. PHP7Grafika,PHP图片处理库Grafika详细教程(3):图像属性处理
  2. JavaScript强化教程-JS面向对象编程
  3. Web安全学习笔记——SQL注入
  4. 【数据库系统】关系模型、关系、元组、属性、关系实例
  5. 开源 数据查询 工具_6个用于数据新闻的开源工具
  6. [luogu2286][HNOI2004]宠物收养场【平衡树】
  7. ServHa双机热备简单配置
  8. 在Windows Server 2003上运行vSphere Client 4.0出现“clients.xml文件出错r
  9. Hive内部表外部表转化分析(装)
  10. c4dr20怎么安装oc渲染器怎么安装_[C4D插件] OTOY正式发布OC渲染器OctaneRender4 For C4D 支持R16-R20 Demo版已开放下载(Win)...
  11. 在html5网页中录音解决方案
  12. 【实验技术笔记】细胞表型检测之细胞凋亡(Hoechst染色 + PI染色 + TUNEL 染色 + Annexin V-PI 双染)
  13. <!DOCTYPE html>是什么意思?
  14. UTC(世界标准时间)/GMT(格林威治时间)/CST(北京时间)
  15. 号码归属地及运营商查询工具
  16. 【深度】分化人类行为和认知能力的6个评估函数
  17. 31.4k,这是我见过最强横的后台管理系统 !!
  18. 特征工程——特征转换
  19. 逆水寒能不能网页预约服务器,逆水寒春暖花开服务器怎么预约?春暖花开服务器预约方法介绍...
  20. 2018年阅读书籍清单

热门文章

  1. 应届生如何写求职邮件?
  2. H5网页元素和全局属性
  3. 浅谈智能制造行业发展新趋势
  4. WebRequest、WebResponse的使用示例
  5. java Map的基本用法
  6. deform服务器位置,Deform V11 自动多工步分析(MO)设置详解-工艺成型及仿真
  7. 文章详情页----- 详细步骤
  8. 详细解读微信内置浏览器不支持下载APK(APP)软件的解决方法
  9. 【设计模式】--解释器模式
  10. HDU 5148 Cities