㈠ 为什么GPU的运算能力比CPU高那么多,却还是要使用CPU
GPU是一个图形专用芯片,只处理图形显示与运算,不能替代CPU的综合处理能力。
㈡ 为什么cpu用频率gpu用算力
CPU的浮点运算能力比GPU差了
CPU单个核心浮点运算能力比GPU强多了
在不考虑 指令集 缓存 优化的情况下 你光看主频就知道了
GPU核心最高也就1Ghz左右
CPU核心却要3-4Ghz
区别是CPU最多也就十几个核心
GPU动辄几百上千个核心
更别说CPU核心指令集更全面 GPU核心基本只有SIMD指令(因为GPU主要是用于图形处理 向量运算远比标量运算多 并且对CPU来说多一套指令运算单元 就是几个核心的成本 对GPU来说就是多几百上千个核心的成本)
CPU处理一次标量乘法只要一次标量乘法指令
GPU却把标量先转换成向量 然后用一条SIMD指令
CPU每个核心有独立的缓存 GPU基本是所有核心共享一个缓存(GPU主要做图形渲染 所有核心都执行同一份指令 获取同样的数据 CPU主要是执行多个串行任务 每个核心可以处理不同的任务 从不同地方获取不同的数据)
所以CPU单核性能秒GPU单核十条街
CPU每个核心都有独立的优化 分支预测 乱序执行之类的
GPU乱序执行可以有 因为所有核心都干一样的事情 可以共享一份指令 不需要独立的乱序执行 (不过一般不会有 因为这个功能可以直接放到编译器中实现 因为GPU的开发语言少 基本只有GLSL和HLSL 编译器是厂商自己开发的 不像CPU那样 开发语言多如牛毛 各种编译器五花八门 指令集大相径庭 所以才迫切需求这种动态的乱序执行优化)
分支预测肯定不会有 成本上来说分支预测不能共享 每个核心都多一个分支预测的逻辑单元成本太大
关键是根本就不需要 GPU程序一般都很短 本来就可以全部装载到高速缓存中 其次是对于GPU处理的任务而言 分支预测也无意义
㈢ GPU和CPU到底谁运算能力强
同意一楼的,侧重点不同
现在的GPU的集成度、设计的复杂度已经比CPU高,GPU也能通过软件运行一些CPU的工作,GPU的运算能力的却比CPU强
按现在的形势看,个人认为,日后GPU是不会取代CPU来做电脑核心,而是GPU与CPU整合在一起,而电脑的其他配件的集成度也会越来越高,或许以后的台式机主机只有现在的笔记本大小
㈣ 相同功耗的前提下,cpu和gpu哪个算力更强
CPU和GPU两者的主要的用途是不一样的,所以这个也不是特别好对比,相同功耗的前提下肯定是CPU综合算力更强一些。 GPU的算力是专门在图形方面的。在这个方面强一些。
㈤ cpu 和显卡的运算能力谁强
cpu相当于一个博士,gpu相当于一万个小学生,小学生不能做高难度数学题,但是可以同时做大量的基础运算,而cpu虽然不能一下子算出一万条加减法,但是可以解出gpu无法运算的题目
㈥ 为什么GPU的通用计算能力高于CPU
这个问题问的不严谨,”通用计算“能力是什么?CPU,GPU各有优势,劣势,因为本来的设计目标就不一样。脱离应用场景谈快慢就是耍流氓。前面有朋友提到GPU对cache依赖小,这是对的,但没有把原因讲出来。我试着解释一下。GPU对cache依赖小是因为他可以有效的hide memory latency。这个是通过高并行来实现的。每个GPU核有64个warp(相当于CPU的hardware threads),而CPU每个核的hardware thread一般只有2个。这也就是说,一个GPU核可以同时存64个线程,而CPU只能存2个。在GPU中,你context switch到另外63个线程中的任意一个都不需要读写内存。而CPU中只有换到另外一个线程的时候才不用读写内存。这个的结果就是GPU在线程之间做context switch的开销非常小因为他另一个线程寄存器的值一般都在核的寄存器里。而CPU做context switch的开销往往很大因为要把当前线程写入内存再从内存把目标线程的寄存器的值读出来。
㈦ 什么是浮点运算为什么显卡的浮点运算好像总比CPU的强
浮点运算可以认为是带小数点的运算,与之相对的是计算机中的整形数运算(也就是定点运算)。在现实世界中,数据不可能只是整数,还存在小数,但是由于计算机是数字式结构,很难进行小数运算(如果是模拟电路计算机则情况会好的多),所以为了计算小数,在计算机的标准中引入了浮点的概念,通过特定的编码格式来表示小数(不存在小数点这一说),具体的表示方法可以在网络知道中搜IEEE754标准,这是当前浮点运算数据组织格式的通用标准。
至于说显卡的运算能力强于CPU,实际上就单纯的数据计算能力来说,无论浮点或是定点,GPU的运算能力都高于CPU,这是由于两者的设计结构不同造成的。
一般情况下CPU负责的程序处理大多数是线性的、线程数较少,程序指令间相关度大。为了提高性能,CPU会设计成乱序处理结构,而且由于程序的并发性不高,CPU所拥有的处理单元并不多,目前intel的CORE2处理器单个内核每个周期最大的指令发射吞吐量只有4条,其浮点、整型数运算单元都只是个位数。而相对的,GPU所处理的图象运算的相关度低,GPU一般都设计成并行处理模式,其数据运算单元很多,目前,nvidia的GPU最大的运算单元数是240个,AMD的是800个。所以,如果只是单纯的叠加,GPU的计算能力会大大超过CPU,但是两者的使用范围不一样,如果用GPU来处理CPU的程序,其效率会大大下降。
㈧ 哪位可以给我科普一下,GPU运算能力比CPU很
从微架构上看,CPU擅长的是像操作系统、系统软件和通用应用程序这类拥有复杂指令调度、循环、分支、逻辑判断以及执行等的程序任务。它的并行优势是程序执行层面的,程序逻辑的复杂度也限定了程序执行的指令并行性,上百个并行程序执行的线程基本看不到。GPU擅长的是图形类的或者是非图形类的高度并行数值计算,GPU可以容纳上千个没有逻辑关系的数值计算线程,它的优势是无逻辑关系数据的并行计算。
IPC方面,CPU和GPU无法比较,因为GPU大多数指令都是面向数值计算的,少量的控制指令也无法被操作系统和软件直接使用。如果比较数据指令的IPC,GPU显然要高过CPU,因为并行的原因。但是,如果比较控制指令的IPC,自然是CPU的要高的多。原因很简单,CPU着重的是指令执行的并行性。
另外,目前有些GPU也能够支持比较复杂的控制指令,比如条件转移、分支、循环和子程序调用等,但是GPU程序控制这方面的增加,和支持操作系统所需要的能力CPU相比还是天壤之别,而且指令执行的效率也无法和CPU相提并论。
GPU执行每个数值计算的速度并没有比CPU快,从目前主流CPU和GPU的主频就可以看出了,CPU的主频都超过了2GHz,甚至3GHz,而GPU的主频最高还不到2GHz,主流的也就1GHz。所以GPU在执行少量线程的数值计算时速度并不能超过CPU。
目前GPU数值计算的优势主要是浮点运算,它执行浮点运算快是靠大量并行,但是这种数值运算的并行性在面对程序的逻辑执行时毫无用处。
卡皇泰坦V使用了NVIDIA Volta构架GV100核心,由台积电12nm制造工艺生产,拥有5120个流处理器,12GB显存,221亿个晶体管、110万亿次浮点运算能力,主频1200MHz,加速频率1450MHz,显卡位宽3072bit。
Intel 酷睿I9 处理器处理器主频3.06GHz,外频为1333MHz,倍频为23。基于32nm的最新制作工艺,该CPU拥有6核心,同样采用了超线程技术,所以拥有12线程。2级缓存6MB,3级缓12MB
自己比较一下