首页 > 其他分享 >使用GPU训练神经网络的历史

使用GPU训练神经网络的历史

时间:2023-04-20 10:44:54浏览次数:38  
标签:训练 处理单元 神经网络 内存 NVIDIA GPU CPU CUDA

我在一台没有GPU支持的Mac电脑本上本地部署了stable-diffusion-webui,并生成了一张图。这张图大概需要10分钟的时间才能生成,但如果有GPU支持的话,只需要几秒钟就能完成。这让我深刻体会到GPU的算力比CPU强大得多。

GPU算力为啥远高于CPU

更多的处理单元

GPU在同样芯片面积上集成的处理单元数目远高于CPU。如NVIDIA Tesla V100有5120个CUDA核心,而同期高性能CPU核心数一般在10-32个。这使GPU可以高度并行化,一次可以执行成千上万个线程,实现超高的计算粒度和吞吐量。


图:NVIDIA Tesla V100

更简单的处理单元

GPU的处理单元更简单,主要针对高度并行的矩阵和向量运算优化。而CPU的处理单元复杂得多,需要支持各种串行指令和流控制,以实现复杂的逻辑运算和代码执行流程。

GPU简单的处理单元可以以更高密度集成在芯片上。


图:GA100核心架构图

内存带宽更高

GPU的内存体系结构专门为大规模矩阵运算和数据访问优化。它提供的内存带宽远高于CPU,这也是GPU高计算能力的重要支撑。大内存带宽可以保证GPU的成千上万个处理单元同时高效读取和写入数据。

图:Nvidia GTX 780 PCB 布局

专用的编程框架

GPU有专门为其打造的编程框架,如CUDA和OpenCL。

这些框架可以让程序员直接基于GPU体系结构进行编程,充分利用其高度并行的结构。而CPU的传统编程模型难以高效利用GPU的算力。

图:CUDA processing flow

GPU和CPU的对比表

GPU和CPU的主要对比如下表:

对比项 GPU CPU
处理单元 成千上万个简单CUDA核心 几个复杂高性能核心
开发目的 图形学与科学计算 一般运算和控制
架构优化 高度并行,矩阵运算 混合运算与控制流
内存结构 高带宽,低延迟 较低带宽,较高延迟
编程模型 CUDA, OpenCL C/C++,汇编等
并行粒度 非常细(线程) 较粗(进程)
发展历史 2000年后迅速发展 上世纪80年代已成熟
主要应用 人工智能,科学计算 普适运算与控制
性能指标 FLOPS(每秒浮点运算数) GHz(时钟频率)
代表厂商 NVIDIA, AMD Intel, AMD
典型产品 NVIDIA Tesla V100 Intel Xeon

所以,总体来说,GPU vs CPU的算力差异在于:

  1. GPU采用无数简单的处理单元和内存体系结构,以支持超大规模的并行计算。
  2. GPU有面向其体系结构的专用编程模型,可以更好地编写和优化程序。
  3. GPU专注于高度并行的数值密集型计算(如神经网络训练),这些工作负载可以高度利用其优化的硬件资源;而CPU需要处理更加广泛的工作负载,难以专注优化。

机器学习使用GPU

使用GPU做机器学习,最早的论文是2012年Alex Krizhevsky,Ilya Sutskever 和 Geoffrey E. Hinton发表的《ImageNet Classification with Deep Convolutional Neural Networks》这篇。 https://proceedings.neurips.cc/paper_files/paper/2012/file/c399862d3b9d6b76c8436e924a68c45b-Paper.pdf

2012年的ImageNet大规模视觉识别挑战赛(ILSVRC)。当时,由多伦多大学的Alex Krizhevsky、Ilya Sutskever和Geoffrey Hinton组成的团队,使用了两个NVIDIA GTX 580 GPU,训练了一个名为AlexNet的6千万个参数和 65 万个神经元的深度卷积神经网络。用于将 ImageNet LSVRC-2010 比赛中的 120 万张高分辨率图像分类到 1000 个不同的类别中。在测试数据上,他们实现了 37.5% 的 top-1 错误率和 17.0% 的 top-5 错误率,这比以前的最先进技术要好得多。

在看到GPU强大的训练能力后,后面用GPU训练神经网络变成了标配。

这也是NVIDIA(英伟达) 随后股价狂涨的原因。

标签:训练,处理单元,神经网络,内存,NVIDIA,GPU,CPU,CUDA
From: https://www.cnblogs.com/ghj1976/p/shi-yonggpu-xun-lian-shen-jing-wang-luo-de-li-shi.html

相关文章

  • 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素。
    目录一、基础知识-二分法解题思路-数组中删除的思路二、题目一:704.二分查找三、题目二:27.移除元素一、基础知识1.二分法解题思路要求数组必须是有序排列,仅需要根据题目的条件去确定搜索区间。第一个关键点:区间的取值。一般有左闭右闭,左闭右开,左开右闭三种,这个的选择......
  • 西南民族大学 2023 天梯自主训练 3
    西南民族大学2023天梯自主训练3正整数A+B#include<bits/stdc++.h>usingnamespacestd;typedefpair<int,int>PII;constintN=1e3+5,INF=0x3f3f3f3f,Mod=1e6;constdoubleeps=1e-8;typedeflonglongll;stringa,b;intx,y;intmain(){ios::sync_with_st......
  • 初学者代码训练Day3(c/c++)
    题目中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱百鸡问题”:一只公鸡值五钱,一只母鸡值三钱,三只小鸡值一钱,现在要用百钱买百鸡,请问公鸡、母鸡、小鸡各多少只? 流程图: 代码:1#include<iostream>2usingnamespacestd;3intmain()4{intgongji,mu......
  • 大模型入门(四)—— 大模型的训练方法
    参考huggingface的文档介绍:https://huggingface.co/docs/transformers/perf_train_gpu_many#naive-model-parallelism-vertical-and-pipeline-parallelism,以下介绍聚焦在pytorch的实现上。随着现在的模型越来越大,训练数据越来越多时,单卡训练要么太慢,要么无法存下整个模型,导......
  • DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
    DeepSpeedChat:一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍1.概述近日来,ChatGPT及类似模型引发了人工智能(AI)领域的一场风潮。这场风潮对数字世界产生了革命性影响。ChatGPT类模型具有惊人的泛用性,能够执行归纳、编程、翻译等任务,其结果与人类专家相当甚至更优。为......
  • 图像识别技术原理和神经网络的图像识别技术
    图像识别技术是信息时代的一门重要的技术,其产生目的是为了让计算机代替人类去处理大量的物理信息。随着计算机技术的发展,人类对图像识别技术的认识越来越深刻。图像识别技术的过程分为信息的获取、预处理、特征抽取和选择、分类器设计和分类决策。简单分析了图像识别技术的引入、其......
  • 西南民族大学 春季 2023 训练赛 8
    西南民族大学春季2023训练赛8吃火锅思路:每行只算一个(*^*)#include<bits/stdc++.h>usingnamespacestd;typedefpair<int,int>PII;typedefpair<string,int>PSI;constintN=2e2+5,INF=0x3f3f3f3f,Mod=1e6;constdoubleeps=1e-8;typedeflonglongll;intall......
  • 西南民族大学 春季 2023 训练赛 8
    L1-1嫑废话上代码Talkischeap.Showmethecode.L1-2猫是液体a,b,c=map(int,input().split(''))print(a*b*c)L1-3洛希极限#include<bits/stdc++.h>usingnamespacestd;int32_tmain(){doublea,c;intb;cin>>......
  • GPU-CPU命令行缓冲区
    目录书上25页命令行缓冲区是一个循环队列,且有大小限制(书上说是几千)CPU调用GPU干活,就会往队列屁股后添加指令GPU看到队列头有指令,就开始干活受CPU限制,受GPU限制受CPU限制:cpu繁忙,向命令行缓冲区写命令很慢,没有命令那gpu就闲下来了受GPU限制:gpu繁忙,命令行缓冲区已经写满......
  • Unity 有效降低GPU占用
    此乃经验所得,持续更新中,转载请标明出处1、降低DrawCall可有效降低GPU占用2、通过Application.targetFrameRate主动降低帧率可有效降低GPU占用3、关闭Camera的HDR和MSAA可有效降低GPU的占用,特别是场景中Camera多的时候,效果很明显......