【算力基础】GPU算力计算和其他相关基础(TFLOPS/TOPS/FP32/INT8...)

ops/2024/10/30 22:02:23/

文章目录

    • :one: 算力的常见指标
    • :two: 算力计算
    • :three: 常用链接


🚀 本文主要是聚焦于深度学习领域的 GPU的算力估计,其他类型的硬件设备如CPU可以类比参考。

1️⃣ 算力的常见指标

算力衡量主要与运算速度精度这两个指标有关。

🌔速度指标常有:

指标备注
FLOPSFloat Operations Per Second(默认精度为FP32)
MFLOPS10^6 FLOPS
GFLOPS10^9 FLOPS
TFLOPS10^12 FLOPS
OPSOperations Per Second(默认精度为INT8)
MOPS10^6 OPS
GOPS10^9 OPS
TOPS10^12 OPS
Compute Capability(CUDA 能力)英伟达GPU的一种算力等级(数值不等于TFLOPS)

⭐️精度指标常有:

指标备注
FP64双精度浮点
FP32单精度浮点(FLOPS的默认精度)
FP16半精度浮点
TF32NVIDIA定义的TensorCore的中间计算格式(FP32的整数部分+FP16的小数部分)
BF16用于半精度的矩阵浮点运算,相比于FP16能提高效率
INT88位整型(OPS的默认精度)

在精度换算时,可以近似地根据位数的倍数来计算。
(这个地方不太严谨,实际中要看对应精度的CUDA核有多少,如果手头参考资料有限,可以这样估计)

比如一个GPU可以操作1个FP32,在同等条件下,可以近似地认为它可以操作4个INT8,即TFLOPS ≈ \approx 4TOPS

常常算力仅以速度指标来表示,因为此时精度指标设定为默认值(FP32/INT8)。

2️⃣ 算力计算

以GPU为例,估计算力涉及以下这些常见参数

符号单位备注
n c u d a n_{cuda} ncuda1CUDA核心数
f b o o s t f_{boost} fboostHz加速频率(Boost Frequency)
a a a1单核心每时钟周期浮点运算系数(GPU常设为2:乘加运算)
C C CFLOPS浮点算力

❤️则一个GPU的算力可以按照如下公式估计:
C = n c u d a × f b o o s t × a C=n_{cuda}\times f_{boost}\times a C=ncuda×fboost×a

以NVIDIA GeForce RTX 2080 Ti 为例,讲解一下算力计算流程:

查询NVIDIA官网,只给出了RTX 2080 Ti的Compute capalibility等级为7.5,没有以FLOPS/TOPS为单位算力指标。
查询得到 n c u d a = 4352 n_{cuda}=4352 ncuda=4352 f b o o s t = 1.64 × 1 0 9 f_{boost}=1.64\times10^9 fboost=1.64×109,进而进行如下计算(以FLOPS为单位):
C = 4352 × ( 1.64 × 1 0 9 ) × 2 = 1.4275 × 1 0 13 C=4352\times(1.64\times10^9)\times2=1.4275\times 10^{13} C=4352×(1.64×109)×2=1.4275×1013
折算为以TFLOPS(FP32)为单位:
C T F = C / 1 0 12 = 14.275 C_{TF}=C/10^{12}=14.275 CTF=C/1012=14.275
理论计算结果与在TECHPOWERUP查询的RTX 2080 Ti算力13.45 TFLOPS较为接近。
\newline
而折算为以TOPS(INT8)为单位:
C T = C T F × 4 = 57.1 C_{T}=C_{TF}\times 4=57.1 CT=CTF×4=57.1
更进一步地,如果手头上有一台设备的算力为6 TOPS,并已知某一深度学习算法在RTX 2080 Ti上的运行速度为80帧,则可以估计出同样的算法在本设备的帧率:
F P S = 80 × 6 57.1 = 8.4 FPS=80\times\frac{6}{57.1}=8.4 FPS=80×57.16=8.4

3️⃣ 常用链接

  • TECHPOWERUP-GPU主页,比较公认的第三方技术参数查询点
  • NVIDIA GeForce GPU 技术参数官网

http://www.ppmy.cn/ops/129364.html

相关文章

华为配置BFD状态与接口状态联动实验

组网图形 图1 配置BFD状态与接口状态联动组网图 BFD简介配置注意事项组网需求配置思路操作步骤配置文件 BFD简介 为了减小设备故障对业务的影响,提高网络的可靠性,网络设备需要能够尽快检测到与相邻设备间的通信故障,以便及时采取措施&…

【优选算法】——滑动窗口(下篇)

目录 1、水果成篮 2、找到字符串中所有字母异位词 3、串联所有单词的子串 4、最小覆盖子串 1、水果成篮 你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组 fruits 表示,其中 fruits[i] 是第 i 棵树上的水果 种类 。 你想要尽可能…

SIP 业务举例之 三方通话:邀请第三方加入的信令流程

目录 1. 3-Way Conference - Third Party Is Added 简介 2. RFC5359 的 3-Way Conference - Third Party Is Added 信令流程 3. 3-Way Conference - Third Party Is Added 总结 博主wx:yuanlai45_csdn 博主qq:2777137742 想要 深入学习 5GC IMS 等通信知识(加入 51学通信)…

华为ICT题库-大数据部分

1475、以下哪项组件不属于大数据平台中的组件?(云服务考点) (A)MapReduce (B)Yarn (C) openStack (D)HDFS 答案:C 解析:组件OpenStack不属于大数据平台中的组件。OpenStack是一个开源的云计算平台,它提供…

Linux 安装 CUDA | Install CUDA on Ubuntu 22.04 Step-by-Step

Step 1: Upgrade your Ubuntu sudo apt update sudo apt upgrade Step 2: List the recommended NVIDIA drivers sudo apt install ubuntu-drivers-common sudo ubuntu-drivers devices # 输出 # driver : nvidia-driver-535 - distro non-free recommendedStep 3: Install…

Spring Boot框架中的IO

1. 文件资源的访问与管理 在 Spring Boot 中,资源文件的访问与管理是常见的操作需求,比如加载配置文件、读取静态文件或从外部文件系统读取文件。Spring 提供了多种方式来处理资源文件访问,包括通过 ResourceLoader、Value 注解以及 Applica…

【跨越边界:嵌入式系统在物联网时代的重要性】

摘要 物联网(IoT)的快速发展正在改变我们的生活方式,而嵌入式系统作为物联网的核心技术之一,其重要性日益凸显。本文将探讨嵌入式系统在物联网中的关键角色,包括其基本概念、应用案例、技术挑战以及未来发展趋势。 1…

设计模式(五)原型模式详解

设计模式(五)原型模式详解 原型模型简介 定义:原型模型是一种创建型设计模型,它允许通过克隆/复制现有对象来创建新的对象,而无需通过常规的构造函数进行实例化。 这种方式的主要优势是在运行时不需要知道具体的类&a…