VideoCard 板


LINE

这礼拜把安装和硬体规格介绍完, 下礼拜就要开始进入 CUDA 程式了 ^^, 如果有什麽需要帮忙, 欢迎写信给我. ※ 第四章 硬体规格简介 这单元中简介硬体规格, 做为采购上的参考, 最後在附录列出目前市面上常见的规格. NV 的 GPGPU 主要以计算能力版本(Compute Capability), 做为硬体和软体上的规范, 形成不同世代的区隔, 而实际产品上, 影响最大「理论效能」的因素来自 (1) 多处理器数目 (MP, multiprocessors) (2) 处理器时脉 (PC, Processor Clocks) 除此之外, 记忆体的差异往往影响了「实际效能」, 太差的记忆体频宽可能导至「实际 效能」甚至不到「理论效能」的 5%, 这些都是采购上要注意的事项。 ◆ 多处理器 (MP, Multiprocessors) GPGPU 是以「多处理器」 为群组, 每个多处理器有 8 个单精确浮点数的「串流处理器」 (SP, Stream Processor) 负责运算, 这些串流处理器就是我们平常说的「核心」. 所以像 GTX 280 有 30 个 MP, 里面就有 30 x 8 = 240 个 SP 核心, 在不切换执行绪的 情况下, 可以同时处理 240 个单精确的运算. 而在 Compute 版本 1.3 之後每个多处理器里面又塞入 1 个双精确浮点数的处理器, 称为 (DP, Double precision stream Processor). 所以 GTX 280 有 30 个 DP 核心. ◆ 计算能力版本 (Compute Capability) 表示 GPGPU 的计算能力, 包含暂存器个数, 内部记忆体大小, 指令支援, 网格和区块 大小等各式规范, 具有向下相容性, 到目前为止发展到 1.3 版, 其摘要如下: Compute 1.0 每个 MP (多处理器)的 32 位元暂存器为 8,192 个。 每个 MP 的共享记忆体为 16 KB, 分散成 16 个 bank 存取。 总共的常数记忆体大小为 64 KB。 每个网格最多的区块数目为 65,535 个 (max gridDim)。 每个区块最多的执行绪数目为 512 个 (max blockDim)。 dim3 blockDim 的各维度上限为 (512,512,64) 每个 MP 的 texture 快取为 6~8 KB。 每个 MP 的常数记忆体快取为 8 KB。 执行缆 warp 大小为 32 个执行绪。 每个 MP 有 8 个 SP, 可以在 4 个 clocks 之内执行完一个 warp。 每个 MP 最大的进行中区块数目为 8 (active blocks)。 每个 MP 最大的进行中执行缆数目为 24 (active warps)。 每个 MP 最大的进行中执行绪数目为 768 (active threads, 24x32)。 (其它关於 texture 细节...) Compute 1.1 在显示卡记忆体上支援 32-bit 的 atomic 整数运算。 Compute 1.2 在显示卡记忆体上和共享记忆体上支援 64 bits 的 atomic 整数运算。 MP 的 32 位元暂存器增为 16,384 个。 支援 warp vote 指令。 Compute 1.3 支援双精确浮点数的运算。 ◆ 运算效能估计 运算效能一般采用「每秒能执行的浮点运算次数」GFlops (Giga float operations per seconds)来衡量, NV 的 GPGPU 最大效能可用下面公式估计: 单精确倍数 (增速因子为 3, 每个多处理器有 8 个单精确的串流处理器) GFlops = 多处理器数目 x 8 x 3 x 处理器频率(GHz) (其中 3 是因为管线化因素所造成的「增速因子」) 范例 GTX 280 30 x 8 x 3 x 1.296 = 933 (GFlops) 8800 Ultra 16 x 8 x 3 x 1.500 = 576 (GFlops) 9600 GT 8 x 8 x 3 x 1.625 = 312 (GFlops) Tesla S1070 30 x 8 x 3 x 1.440 = 1037 (GFlops/GPU) 双精确倍数 (增速因子为 2, 每个多处理器只有 1 个双精确的串流处理器) GFlops = 多处理器数目 x 1 x 2 x 处理器频率(GHz) (只有 compute 1.3 的版本才有双精确倍数) 范例 GTX 280 30 x 1 x 2 x 1.296 = 77.8 (GFlops) Tesla S1070 30 x 1 x 2 x 1.440 = 86.4 (GFlops/GPU) 一般来说, 这种最大效能是达不到的, 因为我们还需要从记忆体中载入或储存资料, 位址转换和执行绪定位计算, 条件分支指令, 各执行绪之间同步和交换资料, 以及 内部记忆体竞争问题, GPU 做的工作并非单纯直线型地只做浮点运算而己, 通常 达到最大效能的 1/3 或 1/4, 就已经很惊人了。 ◆ 记忆体频宽估计 记忆体频宽通常用每秒传输的资料量来衡量 GB/s (giga-bytes per seconds), 其最大频宽, 可用下面公式估计 记忆体频宽(GB/s) = 记忆体介面宽度(bits) x 记忆体时脉频率(GHz) / 8 x 2 其中 /8 是因为 1 个 byte 有 8 个 bits。 x2 是因为双通道。 范例 GTX 280 512 x 1.107 / 8 x 2 = 141.7 (GB/s) 8800 Ultra 384 x 1.080 / 8 x 2 = 103.7 (GB/s) 8800M GTX 256 x 0.800 / 8 x 2 = 51.2 (GB/s) 通常在工程或科学计算上 GPGPU 的运算效能会受限於记忆体频宽, 拿 GTX 280 做例子, 它每秒可计算 933G 个单精确浮点数, 而仅能载入 35.4G 个单精确浮点数 (每个单精确 浮点数占用 4 bytes, 所以 141.7/4=35.4 ), 平均每个浮点数要计算 26.3 次才能用尽 GPGPU 的运算资源 (933G/35.4G=26.3), 这还没有算输出呢, 因为输出也占记忆体频宽, 若考虑进来, 每个载入的浮点数起码要计算 30~50 次才能用尽运算资源, 这样的要求 有点过高, 为什麽呢?举常见的向量内积为例, 它需要謮取 2 条向量, 输出一个数字, 只有输出一个浮点数不占频宽, 而两条向量要占两倍频宽, 所以用尽运算资源的要求是 每个浮点数载入要进行 52.6 次运算 (933G/(35.4G/2)=52.6), 然而向量中每个元素只 做一个乘法, 然後再做一个加法而己, 单元运算次数为 2, 所以最优的实际运算效能 仅能达 GPGPU 最大运算能力的 2/52.6 = 3.8%, 也就是 933 x 3.8% = 35.5 GFlops. 这就是记忆体频宽对实际运算效能产生的限制, 事实上还有其它的限制, 包括记忆库冲突 (bank conflict)等, 使得实际效能还会再下降。 ps.这里指的载入是显示卡记忆体到 GPGPU 的暂存器或晶片内部的快速记忆体(快取或共享记忆体之类)。 ※名词解释 (1) 暂存器 (register) 处理器中存放变数的地方, 大多数指令皆是以此为单元进行操作, 其速度为所有记忆单元中最快, 可视为近乎零延迟。GPGPU 中的暂存器 数量超多, 属於 RISC 架构。 (2) 共享记忆体 (shared memory) 多处理机时, 会有一块所有处理机都看得到的记忆体, 称为共享记忆体, 用来共享或交换资料用, 交换资料时必需要同步所有 处理机, 避免因先後序不可预期而导至资料存取错误。 (3) 精简指令集电脑 (RISC, Reduced Instruction Set Computer), 将指令集精简, 记忆体存取上采用简单的 load/save 指令来桥接, 其优点有指令平行 执行度更好, 制造上更容易, 并且可以放入更多的暂存器和快取, 提昇系统效能, 相对者为 CISC。 (4) 复杂指令集电脑 (CISC, Complex Instruction Set Computer), 传统的电脑设计, 需要什麽功能就加什麽指令, 并且容许运算元是记忆体, 缺乏指令的 正交性, 指令平行化不易, 造成晶片面积浪费, 效能不易提昇, 以前 的 Intel x86 CPU 就是一例, 但现今的 Intel CPU 已采用微指令, 将核心改为 RISC 架构. (5) 单精确浮点数 (single precision float) 使用 4 个 byte 来记录一个浮点数的 规范, 在 C 语言里面的型别是 float。 (6) 双精确浮点数 (double precision float) 使用 8 个 byte 来记录一个浮点数的 规范, 在 C 语言里面的型别是 double。 (7) 双通道 (dual channel) 利用两个互补的记忆体控制器,让沟晶片与记忆体模组 之间的频宽变成两倍的技术。 (8) 记忆体介面宽度 (Memory Interface Width) 记忆体汇流排属於并列式传输, 一次 可以同时存取到的 bit 数称为介面宽度。 (9) 记忆库 (Memory bank) 将记忆体分散成数个独立的群组储存, 并可借由多个独立 的记忆体控制器来提昇整体的频宽。 (10) 记忆库冲突 (bank conflict) 当同时要存取的资料位於同一记忆库, 称为记忆库 冲突, 此时就要排队等待而造成延迟. ※附录:规格表 项目标记 MP. 多处理器数目 Number of Multiprocessors Comp. 计算能力版本 Compute Capability Mem. 记忆体大小 Memory Size PC. 处理器时脉频率 Processing Clocks MC. 记忆体时脉频率 Memory Clocks MI. 记忆体介面宽度 Memory Interface Width MB. 记忆体频宽 Memory Bandwidth 显示卡系列 ------------------------------------------------------------------------------ GeForce MP. Comp. Mem(MB) PC(MHz) MC(MHz) MI(bit) MB(GB/s) ------------------------------------------------------------------------------ GTX 280 30 1.3 1024 1296 1107 512 141.7 GTX 260 24 1.3 896 1242 999 448 111.9 ------------------------------------------------------------------------------ 9800 GX2 16x2 1.1 512x2 1500 1000 256 64.0 9800 GTX 16 1.1 512 1688 1100 256 70.4 9800 GT 14 1.1 512 1500 900 256 57.6 9600 GSO 12 1.1 384 1375 800 192 38.4 9600 GT 8 1.1 512 1625 900 256 57.6 9500 GT 4 1.1 256/512 1400 800 128 25.6 ------------------------------------------------------------------------------ 8800 Ultra 16 1.0 768 1500 1080 384 103.7 8800 GTX 16 1.0 768 1350 900 384 86.4 8800 GTS 12 1.0 640/320 1200 800 320 64.0 8800 GT 14 1.1 512 1500 900 256 57.6 8800 GS 12 1.1 384 1375 800 192 38.4 8600 GTS 4 1.1 256 1450 1000 128 32.0 8600 GT 4 1.1 256 1190 700 128 22.4 8500 GT 2 1.1 256 900 400 128 12.8 8400 GS 2 1.1 256 900 400 64 6.4 ------------------------------------------------------------------------------ 8800M GTX 12 1.1 512 1250 800 256 51.2 8800M GTS 8 1.1 512 1250 800 256 51.2 8700M GT 4 1.1 512 1250 800 128 25.6 8600M GT 4 1.1 512 950 700 128 22.4 8600M GS 2 1.1 512 1200 700 128 22.4 8400M GT 2 1.1 512 900 600 128 19.2 8400M GS 2 1.1 256 800 600 64 9.6 8400M G 1 1.1 256 800 600 64 9.6 ------------------------------------------------------------------------------ 高速运算工作站系列 ------------------------------------------------------------------------------ Tesla MP. Comp. Mem PC(MHz) MC(MHz) MI(bit) MB(GB/s) ------------------------------------------------------------------------------ S1070 30x4 1.3 4Gx4 1440 800 512 102.0 C1060 30 1.3 4G 1296 800 512 102.0 S870 16x4 1.0 1.5Gx4 1350 800 384 76.8 D870 16x2 1.0 1.5Gx2 1350 800 384 76.8 C870 16 1.0 1.5G 1350 800 384 76.8 ------------------------------------------------------------------------------ Workstation 显示卡系列 ------------------------------------------------------------------------------ Quadro MP. Comp. Mem(MB) PC(MHz) MC(MHz) MI(bit) MB(GB/s) ------------------------------------------------------------------------------ Plex 1000 S4 16x4 1.0 Plex 1000 IV 16x2 1.0 1.5Gx2 ------------------------------------------------------------------------------ FX 5600 16 1.0 1.5G 800 384 76.8 FX 4600 12 1.0 768 700 384 67.2 FX 3700 14 1.1 512 800 256 51.2 FX 1700 4 1.1 FX 570 4 1.1 FX 370 2 1.1 NVS 290 2 1.1 ------------------------------------------------------------------------------ FX 3600M 12 1.1 FX 1600M 4 1.1 512 800 128 25.6 FX 770M 4 1.1 512 800 128 25.6 FX 570M 4 1.1 256 700 128 22.4 FX 360M 2 1.1 256 600 64 9.6 FX 370M 1 1.1 256 600 64 9.6 NVS 140M 2 1.1 NVS 135M 2 1.1 NVS 130M 1 1.1 ------------------------------------------------------------------------------ --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.45.212.85 ※ 编辑: a5000ml 来自: 114.45.212.85 (10/08 23:20)
1F:→ iuytjhgf:很强大.... 10/08 23:27
2F:推 MBRSL:赶快让3D软体支援吧...只能用CPU着色真是浪费GPU 10/08 23:57
3F:→ b24333666:推~+1 10/09 01:50
4F:推 b24333666:ATI要是能套用CUDA要怎麽计算?? 10/09 08:37
5F:推 Bencrie:2楼说的3D软体是指像Maya之类的modeler ? 10/09 09:45
6F:→ Bencrie:说CPU着色应该是指ray tracer那种global illumination 10/09 09:46
7F:推 xhole:那像ATi的晶片SP都爆多的 在硬体架构上比较适合这种计算吗 10/09 11:51
8F:推 b24333666:ATI显卡应该=超级电脑等级??(误)ATI应该能跑CUDA吧! 10/09 12:04
9F:推 finkel:ATI当然不能跑 10/09 12:19
10F:推 wowtiger:架个问题 所以ATI要先SP除以五 10/09 12:39
11F:推 sdk:ATI有自己的Stream/CAL 10/09 15:38
12F:推 DuoMax:我有问题!!! CUDA要怎麽念? 酷打? 10/10 20:38
13F:推 sdk:楼上你得到他了 10/13 18:56
a5000ml:转录至看板 C_and_CPP 10/15 21:00
14F:推 pabear:推~~~ 10/16 11:46
uf2000uf:转录至某隐形看板 10/16 21:49
15F:推 finkel:G80有on chip的shared memory,ATI的没有,很可能会造成效 10/18 02:36
16F:→ finkel:能低落,因为存取globe mem可能要3~400cycle..而shared mem 10/18 02:39
17F:→ finkel:用得好的话,跟register差不多..通常CUDA程式效能拉不起来 10/18 02:40
18F:→ finkel:很大的原因都出在memory没利用好..我自己的经验.. 10/18 02:40
19F:推 BeelZeBub:这太棒了... 07/05 17:28







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP