网站搜索

什么是 GPU 计算,它有什么用?


图形处理单元 (GPU) 旨在实时渲染图形。然而,事实证明,使 GPU 擅长图形的原因也使它们在某些非图形工作中也表现出色。这被称为 GPU 计算。

CPU 和 GPU 有何不同?

原则上,GPU和CPU(中央处理器)都是同一种技术的产物。在每个设备内部,都有由数百万至数十亿个微型电子元件组成的处理器,主要是晶体管。这些组件形成处理器元件(例如逻辑门),并从那里内置到复杂的结构中,将二进制代码转化为我们今天拥有的复杂计算机体验。

CPU 和 GPU 之间的主要区别在于并行性。在现代 CPU 中,您会发现多个复杂的高性能 CPU 内核。四核是主流计算机的典型代表,但六核和八核 CPU 正在成为主流。高端专业电脑可能有几十个甚至上百个CPU核心,尤其是多路主板,可以容纳多个CPU。

每个 CPU 核心一次可以做一件或(使用超线程)两件事情。然而,这项工作几乎可以是任何事情,而且可能非常复杂。 CPU 具有广泛的处理能力和令人难以置信的智能设计,使它们能够高效地处理复杂的数学运算。

现代 GPU 通常有数千个简单的处理器。例如,来自 Nvidia 的 RTX 3090 GPU 拥有高达 10496 个 GPU 核心。与 CPU 不同,每个 GPU 内核相比之下都相对简单,并且设计用于执行图形工作中的典型计算类型。不仅如此,所有这数千个处理器都可以同时处理一小部分图形渲染问题。这就是我们所说的“并行性”。

基于 GPU 的通用计算 (GPGPU)

请记住,CPU 不是专用的,可以执行任何类型的计算,无论完成工作需要多长时间。事实上,CPU 可以做 GPU 可以做的任何事情,只是速度不够快,无法在实时图形应用程序中发挥作用。

如果是这样的话,那么在一定程度上反过来也是如此。 GPU 可以执行我们通常要求 CPU 执行的一些相同计算,但由于它们具有类似于超级计算机的并行处理设计,它们可以更快地完成计算。这就是 GPGPU:使用 GPU 来处理传统的 CPU 工作负载。

主要 GPU 制造商(NVIDIA 和 AMD)使用特殊的编程语言和架构来允许用户访问 GPGPU 功能。对于 Nvidia,这就是 CUDA 或 Compute Unified Device Architecture。这就是为什么您会看到他们的 GPU 处理器被称为 CUDA 内核的原因。

由于 CUDA 是专有的,因此 AMD 等竞争性 GPU 制造商无法使用它。相反,AMD 的 GPU 使用 OpenCL 或开放计算语言)。这是由包括 Nvidia 和 Intel 在内的公司联盟创建的 GPGPU 语言。

科学研究中的 GPU

GPU 计算彻底改变了科学家们可以用比以前少得多的预算做的事情。数据挖掘,计算机在堆积如山的数据中寻找有趣的模式,获得原本会在噪音中丢失的洞察力。

Folding@Home 等项目使用用户捐赠的家庭 GPU 处理时间来解决癌症等严重问题。 GPU 可用于各种科学和工程模拟,这些模拟在过去需要数年才能完成,并且需要在大型超级计算机上租用数百万美元的时间。

人工智能中的 GPU

GPU 还擅长某些类型的人工智能工作。 GPU 上的机器学习 (ML) 比 CPU 快得多,而且最新的 GPU 模型内置了更专业的机器学习硬件。

自动驾驶汽车的出现是 GPU 如何在现实世界中推动 AI 应用的一个实际例子。据特斯拉称,他们的 Autopilot 软件需要 70,000 GPU 小时来“训练”具有驾驶车辆技能的神经网络。在 CPU 上做同样的工作会过于昂贵和耗时。

加密货币挖掘中的 GPU

GPU 在破解密码难题方面也非常出色,这就是它们在加密货币挖掘中变得流行的原因。尽管 GPU 不像 ASIC(专用集成电路)那样快速挖掘加密货币,但它们具有通用性的独特优势。 ASIC 通常只能挖掘一种特定类型或一小组加密货币,除此之外别无他法。

加密货币矿工是 GPU 如此昂贵且难以找到的主要原因之一,至少在撰写本文时是在 2022 年初。体验 GPU 技术的高度意味着付出高昂的代价,NVIDIA GeForce RTX 3090 的现行价格是超过 2,500 美元。 NVIDIA 人为地限制了游戏 GPU 的加密性能,并推出了专门用于挖矿的 GPU 产品,这已经成为一个问题。

您也可以使用 GPGPU!

虽然您可能并不总是意识到这一点,但您每天使用的某些软件会将其部分处理任务卸载到您的 GPU。例如,如果您使用视频编辑软件或音频处理工具,您的 GPU 很可能会承担一些负载。如果您想在家处理诸如制作自己的 Deepfakes 之类的项目,您的 GPU 再次成为使之成为可能的组件。

您智能手机的 GPU 还负责运行许多本应发送到云计算机来完成的人工智能和机器视觉工作。因此,我们都应该感谢 GPU 不仅仅可以在屏幕上绘制吸引人的图像。