Fair and Square: Replacing One Real Multiplication with a Single Square and One Complex Multiplication with Three Squares When Performing Matrix Multiplication and Convolutions

该论文提出了一种通过用单次平方运算替代实数乘法、用三次平方运算替代复数乘法来显著降低矩阵乘法和卷积硬件资源消耗的新方法,并设计了相应的平方基脉动阵列和张量核心架构。

Vincenzo Liguori

发布于 Wed, 11 Ma
📖 1 分钟阅读☕ 轻松阅读

Each language version is independently generated for its own context, not a direct translation.

这篇论文提出了一种非常巧妙的数学“魔术”,旨在让计算机(特别是处理人工智能和图像时)算得更快、更省电。

简单来说,它的核心思想是:与其让计算机去“做乘法”(这很费力气),不如让它去“做平方”(这比较省力),然后稍微调整一下结果,就能得到同样的答案。

为了让你更容易理解,我们可以用几个生活中的比喻来拆解这篇论文。

1. 核心魔法:把“乘法”变成“平方”

想象一下,你有一个很重的箱子(代表乘法),你需要把它从 A 点搬到 B 点。这很费力,而且需要强壮的工人(硬件电路)。

这篇论文发现了一个数学公式(就像是一个秘密咒语):

两个数相乘,等于它们和的平方,减去它们各自平方的差,再除以 2。

用大白话讲:

  • 旧方法(乘法): 直接算 A×BA \times B。这需要专门的“大力士”电路。
  • 新方法(平方): 先算 (A+B)2(A+B)^2,再算 A2A^2B2B^2,然后做加减法。

为什么这很重要?
在芯片设计里,“平方”电路(Squaring)比“乘法”电路(Multiplier)简单得多

  • 比喻: 如果“乘法”是一个需要 100 块砖头砌成的复杂机器,那么“平方”只需要 50 块砖头就能砌成。
  • 结果: 既然平方电路只占一半的空间和电力,如果我们能把所有的乘法都换成平方,芯片就会变得更小、更省电、速度更快。

2. 场景一:矩阵乘法(AI 的大脑)

AI 做任务(比如识别猫和狗)时,本质上是在做大量的矩阵乘法(把成千上万个数字排成方阵相乘)。

  • 传统做法: 计算机要算 A×BA \times BC×DC \times D……成千上万次。每次都要调用那个“费力的 100 块砖头机器”。
  • 论文的新做法:
    1. 把乘法变成平方。
    2. 虽然看起来算式变长了(要算和的平方,再减去各自的平方),但作者发现了一个偷懒的技巧
      • 有些平方项(比如 AA 的平方)只跟 AA 有关,跟 BB 没关系。
      • 我们可以预先算好这些 AA 的平方,或者在计算过程中重复使用它们。
    3. 比喻: 就像你要给 100 个人发礼物。以前是每个人都要单独去包装(乘法)。现在你发现,包装纸(平方)可以提前切好堆在那儿,大家只需要把礼物放进去(加法)就行。虽然多了一步“切纸”的动作,但因为切纸机(平方电路)比包装机(乘法电路)便宜一半,所以总体还是省了。

结论: 对于大矩阵,平均每个乘法只需要 1 个平方操作就能搞定。

3. 场景二:复数乘法(更复杂的魔法)

在信号处理(比如 WiFi 信号、雷达)中,数字是“复数”(有实部和虚部,像是一个有方向的箭头)。

  • 传统做法: 1 个复数乘法 = 4 个实数乘法。这非常费电。
  • 论文的新做法(4 平方版): 把 4 个乘法换成 4 个平方。因为平方电路便宜,所以还是省了。
  • 论文的新做法(3 平方版): 作者还发现了一个更高级的公式,能把 1 个复数乘法压缩成3 个平方操作。
    • 比喻: 以前你要用 4 块砖头盖房子,现在你发现一种新结构,只需要 3 块砖头就能盖出同样坚固的房子。

4. 硬件实现:流水线与核心

论文不仅讲了数学,还讲了怎么在芯片里造这种机器:

  • 脉动阵列(Systolic Arrays): 想象一条工厂流水线。以前的流水线每个工位都有一个“乘法机器”。现在,作者把每个工位换成了“平方机器”,并在流水线的入口处和出口处加了一些“预处理”和“后处理”的小助手(用来算那些预先算好的平方项)。
  • 张量核心(Tensor Cores): 这是现代 AI 芯片(如 NVIDIA 显卡)里专门干重活的部件。论文建议,把这些部件里的乘法器换成平方器,就能让 AI 跑得更欢,发热更少。

5. 总结:这到底意味着什么?

这篇论文就像是一个**“芯片节能专家”**,他告诉工程师们:

“嘿,你们一直在用昂贵的‘乘法’来算矩阵、卷积(图像处理)和变换。其实,只要稍微改一下算法,用更便宜的‘平方’来代替,就能省下大约一半的硬件面积和电力,而且速度还能保持很快!”

对普通人的影响:

  • 手机更省电: 刷短视频、玩游戏的手机电池更耐用。
  • AI 更便宜: 数据中心不需要那么多空调来散热,运行 AI 的成本降低。
  • 设备更小: 未来的智能设备可以做得更轻薄。

一句话总结:
这篇论文教我们如何用更简单的“平方”积木,去搭建原本需要复杂“乘法”积木才能完成的 AI 大厦,从而让未来的智能设备更轻、更快、更省电。