胶合与协处理器架构:现代计算的新趋势
现代计算中,资源密集型任务通常可分为两部分:少量的复杂“业务逻辑”和大量的结构化“昂贵工作”。这两种计算最好用不同的方式处理:业务逻辑需要高通用性,而昂贵工作需要高效率。
以太坊虚拟机 (EVM) 就是一个很好的例子。大部分 EVM 执行都集中在少数昂贵操作上,例如存储读写和加密。其余执行是处理数据的“业务逻辑”。EVM 使用不同的方式处理这两种执行形式:高级业务逻辑用 Solidity 等语言编写,而昂贵工作由 EVM 操作码触发,并在客户端代码中执行。
另一个例子是用 Python 编写的 AI 代码。少量的 Python 代码描述了操作的结构,而大部分计算是用高度优化的代码执行的,例如在 GPU 上运行的 CUDA 代码。
这种“胶合和协处理器”架构在其他领域也很常见,例如可编程密码学。例如,ZK-SNARK 证明器可以分解为用于通用业务逻辑的低效但通用的组件,以及用于昂贵操作(例如哈希和签名)的高效但专业的组件。
这种架构有几个重要意义:
1. 胶合器应优化通用性,而协处理器应优化效率。 例如,EVM 不需要高效,只需要熟悉即可。可以通过添加专门的协处理器(预编译)来提高效率。
2. 安全计算和开放硬件可以专注于安全性,而将效率留给协处理器。 这可以通过将敏感计算卸载到针对安全性优化的开放硬件,并将密集计算卸载到专用 ASIC 来实现。
3. 密码学,特别是可编程密码学,非常适合这种架构。 因为密码学本身就是“昂贵的结构化计算”的一个主要例子,这种架构可以大大提高密码学操作的效率。
4. 胶合层应优化延迟和数据带宽。 因为低效的胶合层会导致性能瓶颈,尤其是在涉及对相同数据进行重复操作时。
总的来说,“胶合和协处理器”架构是现代计算中一个积极的趋势。它在保持开发人员友好性的同时最大化了计算效率,并为安全、开放和简单的计算创造了机会。
发表评论