背景

近日忽然想到,在CPU类型的服务器即使给到足够的运算资源,与GPU类型的服务器做运算来讲仍然是相差甚远,而本人有一台闲置的AMD vega8集显的电脑。想要用来做计算,来探究其与CPU运算的差别。

跟踪

网上查阅资料发现,大部分的用户都是安装NVIDA自家研究的CUDA,然后用作机器学习人工智能方面的运算。而很少有AMD vega显卡的实例。再深度查阅资料发现WSL(Windows子系统linux)中宣布支持vega显卡的并行运算。

开坑

这次准备买一个大规模的硬盘再对Windows系统安装linux子系统挂载硬盘和显卡,自己用作大规模计算和Python相关的学习。

实践

通过网上教程和官方文档,安装好WSL的Ubuntu-20.04分发版,其中比较坑的点:

  1. 需要禁用旧版控制台:在命令提示符窗口的标签位置右键-属性-选项-取消使用旧版控制台并重启;
  2. 开启Windows10中的开启linux子系统功能;
  3. 开启window虚拟化功能和BIOS虚拟化功能;
  4. 更新到WSL2才能使用GPU运算;
  5. GPU运算有很多途径,查阅资料发现有:
    • NVIDIA GPU 的用途更广,包括但不限于:利用官方驱动安装CUDA在window或linux环境进行机器学习、利用WSL2的驱动使用TensorFlow
    • AMD GPU 我查阅了更多资料,发现也有很多途径但都要依赖于官方是否给予相关驱动支持,包括但不限于:ROCm、Direct ML

参考

  1. 【官方】适用于 Linux 的 Windows 子系统安装指南
  2. 禁用旧的控制台
  3. Window10使用WSL2
  4. 设置WSL2
  5. WSL2新特性
  6. WSL中的GPU加速
  7. 在 ROCm 上加速机器学习 (ML)
  8. ROCm 上的高性能计算 (HPC)

GPU 高性能计算的更多相关文章

  1. GPU高性能计算-CUDA

    前段时间有个同学的毕设是搞并行计算的,他基本不懂编程把我拉过去帮忙,我之前也没弄过,帮着搞了2天.先把代码贴上去,等有时间在把详细补充一些内容. CUDA编程主要是利用了显卡优越的并行计算能力,把一个 ...

  2. ML平台_PAI参考

    阿里云机器学习PAI(Platform of Artificial Intelligence)是一款一站式的机器学习平台,包含数据预处理.特征工程.常规机器学习算法.深度学习框架.模型的评估以及预测这 ...

  3. LabVIEW中使用GPU进行高性能计算

    项目中需要使用LabVIEW控制NI FPGA board产生控制信号等,使用GPU对采集的数据进行高性能计算,因此方案之一是用Visual Studio设计基于CUDA的GPU并行计算算法代码,然后 ...

  4. 高性能计算 GPU 等资料

    从石油领域的应用看GPU.CPU算法效果比较  http://www.csdn.net/article/2011-06-21/300207 HPC 论坛 http://hpcbbs.it168.com ...

  5. OpenStack 企业私有云的若干需求(1):Nova 虚机支持 GPU

    本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...

  6. C#在高性能计算领域为什么性能却如此不尽人意

    C#的优雅,强大IDE的支持,.net下各语言的二进制兼容,自从第一眼看到C#就被其良好的设计吸引.一直希望将其应用于高性能计算领域,长时间努力却效果却不尽如人意. 对于小的测试代码用例而言,C#用2 ...

  7. HP “云图”GPU虚拟化工作站解决方案

    HP PCS ”云图”GPU虚拟化工作站解决方案 ——将图形计算从桌面移到数据中心 惠普云图形GPU虚拟化桌面系统是以用户为中心的私有云服务.除了保留了传统桌面虚拟化方案以集中设备为中心统一管理等优点 ...

  8. GPU keylogger && GPU Based rootkit(Jellyfish rootkit)

    catalog . OpenCL . Linux DMA(Direct Memory Access) . GPU rootkit PoC by Team Jellyfish . GPU keylogg ...

  9. 五 浅谈CPU 并行编程和 GPU 并行编程的区别

    前言 CPU 的并行编程技术,也是高性能计算中的热点,也是今后要努力学习的方向.那么它和 GPU 并行编程有何区别呢? 本文将做出详细的对比,分析各自的特点,为将来深入学习 CPU 并行编程技术打下铺 ...

随机推荐

  1. 046.Python协程

    协程 1 生成器 初始化生成器函数 返回生成器对象,简称生成器 def gen(): for i in range(10): #yield 返回便能够保留状态 yield i mygen = gen( ...

  2. Ubuntu 16.04安装PyCharm

    PyCharm一个是Python集成开发环境,它既提供收费的专业版,也提供免费的社区版本.PyCharm带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试.语法高亮.Proj ...

  3. 上传靶机实战之upload-labs解题

    前言 我们知道对靶机的渗透可以提高自己对知识的掌握能力,这篇文章就对上传靶机upload-labs做一个全面的思路分析,一共21个关卡.让我们开始吧,之前也写过关于上传的专题,分别为浅谈文件上传漏洞( ...

  4. scrapy使用response.body时编码问题

    scrapy使用response.body时编码问题 摘要:scrapy使用response.body时编码问题.如果在使用responses.body获取数据时,需要将其编码转换成unicode,即 ...

  5. AI框架外部用户贡献代码

    AI框架外部用户贡献代码 概述 飞桨是百度自主研发的一款开源的深度学习框架,是主流深度学习框架中首个完全国产化的产品,已经在农业.医疗.林业.科研.服务等领域成功应用.无论是已入职场的深度学习从业者. ...

  6. C ++变量,文字和常量

    C ++变量,文字和常量 本文将借助示例来学习C ++中的变量,文字和常量. C ++变量 在编程中,变量是用于保存数据的容器(存储区). 为了指示存储区域,应该为每个变量赋予唯一的名称(标识符).例 ...

  7. Selenium-python 之 frame定位元素

    定位元素时经常会出现定位不到元素,这时候我们需要观察标签的上下文,一般情况下这些定位不到的元素存放在了frame或者放到窗口了,只要我们切入进去就可以很容易定位到元素. 处理frame时主要使用到sw ...

  8. 一文搞懂Ajax,附Ajax面试题

    目录 前言 正文 Ajax是什么东西? 实现核心/工作原理:XMLHttpRequest对象 XMLHttpRequest大致用法 创建XMLHttpRequest对象 发送请求 服务器响应 1. r ...

  9. springMVC异常处理(自定义异常)HandlerExceptionResolver

    注:本篇的异常主要指的是controller.service和dao层中执行方法抛出的异常. 一.为什么要处理异常? 因为如果我们不处理异常,异常信息就会直接抛出给浏览器,于是浏览器页面就直接显示异常 ...

  10. mybatis入门案例——IDEA版

    环境:IDEA2017,jdk1.8.0,maven3.5.2 步骤: 1.创建一个普通Maven工程,删掉src目录,再创建一个maveb的model命名为mybatis-01 2.配置 pom.x ...