zoukankan      html  css  js  c++  java
  • GPU与CPU

    GPU与CPU

    CPU
    • CPU,也就是中央处理器,结构主要包括控制器(指挥各部分工作)、运算器(实现数据加工)、寄存器、高缓以及数据/控制/状态总线。计算机的性能很大程度上依赖于CPU,CPU的功能包括程序控制(控制指令执行的先后顺序)、操作控制(控制指令操作)、时间控制(控制各种操作的时间)、数据加工(实现数据的算术和逻辑运算)等,简单来说,CPU就是对指令流和数据流进行时间和空间上的控制。CPU擅长处理诸如分布式、协调控制这种复杂运算,具有很强的通用性。
    • enter image description here
    • enter image description here
    • 由于CPU中存储单元和控制单元占用了大量空间,所以计算单元是受限的,这一缺点在并行问题上就体现出来了,它在要求大规模与快处理速度的问题上显得有些局限。因此,拥有众多计算单元的GPU就出现了。
    GPU
    • GPU全称为Graphics Processing Unit,即图形处理器。
    • GPU最初是为了端游设计的,因为在游戏中要对大量数据重复相同的操作,所以GPU面对的是类型高度统一、相互无依赖的大规模数据。由于设计目标不同,所以GPU和CPU在架构上差异很大。GPU中有很多计算单元,流水线也相当长,而逻辑运算单元设计相对简单。GPU的核数远远多于CPU,将相同的指令发送到众核上处理不同的数据,这一架构有利于GPU处理拥有很多数据的问题。
    • enter image description here
    区别
    • CPU和GPU的主要区别是CPU是通用计算,而GPU是专用计算。
    • 打个比方来讲,CPU是老教授,能力很强但数量很少,GPU是小学生,能力很弱但数量众多。
    • 提供了多核并行计算的基础结构,且核心数非常多,可以支撑大量数据的并行计算。
    • 拥有更高的访存速度。
    • 更高的浮点运算能力。浮点运算能力是关系到处理器的多媒体、3D图形处理的一个重要指标。现在的计算机技术中,由于大量多媒体技术的应用,浮点数的计算大大增加了,比如3D图形的渲染等工作,因此浮点运算的能力是考察处理器计算能力的重要指标。
    • 深度学习是模拟人脑神经系统而建立的数学网络模型,这个模型的最大特点是,需要大数据来训练。因此,对电脑处理器的要求,就是需要大量的并行的重复计算,GPU正好有这个专长,时势造英雄,因此,GPU就出山担当重任了。
    • enter image description here
  • 相关阅读:
    celery 使用(一)
    RabbitMQ(一 初识)
    python 生成器与迭代器(yield 用法)
    python与consul 实现gRPC服务注册-发现
    python 使用gRPC
    IDEA 破解图文教程
    ArrayList 源码分析 -- 扩容问题及序列化问题
    面向对象来理解链表
    Winrar去广告图文教程
    Spring Boot 整合JDBC 实现后端项目开发
  • 原文地址:https://www.cnblogs.com/frankltf/p/10574206.html
Copyright © 2011-2022 走看看