跳转至

笔记

Pip Package

导言

之前其实开发了自己的包,想写点轮子。但是那个时候并没有。按照对象编程的思想,打算重构并拓展常用内容 from PIA(uniPIM) Project。

The CUDA Execution Model

导言

The CUDA Execution Model: how the CUDA architecture handles the execution of code in parallel.

这篇将聚焦于CUDA的基础知识,基本概念,

Burnout Monitor : Healthy Body Model + hair/heart-aware exercise

导言

元旦中午不休息的看电脑,导致眼睛十分的疼痛。一直到晚上11点也没有好。

虽然我知道过犹不及,life/work balance等道理。但是实际做事情,沉浸去了就停不下来了。需要一个提醒的工具

围绕Rescuetime记录的数据,使用Rescuetime的Timer, 和其他番茄工作法的软件。 形成一套监控自身健康,给出工作建议,评估每日工作的体系。

Cuda Driver Runtime

导言

Divide the bulky and outdated content about cuda runtime env into individual posts, ensuring both the thematic integrity and a balanced size for each blog entry.

AI Hardware & Accelerators

导言

  • 牧本定律由1987年牧村次夫提出,半导体产品的发展历程总是在“标准化”和“定制化”之间交替摆动,大概每十年摆动一次,揭示了半导体产品性能功耗和开发效率之间的平衡,这对于处理器来说,就是专用结构和通用结构之间的平衡—专用结构性能功耗优先,通用结构开发效率优先。
  • 贝尔定律是由戈登贝尔在1972年提出的一个观察,即每隔10年,会出现新一代计算机(新编程平台、新网络连接、新用户接口、新使用方式),形成新的产业,贝尔定律指明了未来一个新的发展趋势,这将会是一个处理器需求再度爆发的时代,不同的领域、不同行业对芯片需求会有所不同,比如集成不同的传感器、不同的加速器等等。

生产特殊的硬件:

  1. 带来的加速比和能耗收益,达到10倍百倍都是很正常的。
  2. 但是开发成本也是巨大的,包括芯片设计,流片成本,软件栈的开发,商业化的推广。
  3. 开发周期也相当长。需要对当前的技术的未来具有前瞻性。不要生产出来就过时了。

常见的例子,用于并行计算的GPU, H265视频编解码单元, Google TPU芯片、车载芯片、手机AI芯片。

AI领域的至今不变的特点:

  1. 基于反向传播和梯度/参数更新的整体逻辑
  2. 需要保存大量的参数来表征问题,以高维矩阵的形式存储,所以矩阵运算十分常见
  3. 训练由于要计算并更新梯度,一般是计算密集。但是推理一般是访存密集。

现在大火的transformer,除非它就是AGI的最理想模型,不然为一个模型专门定制硬件,很容易钱就打水漂了。为自己的算法模型定制一块AI芯片,如特斯拉。但应用面越窄,出货量就越低,摊在每颗芯片上的成本就越高,这反过来推高芯片价格,高价格进一步缩窄了市场,因此独立的AI芯片必须考虑尽可能适配多种算法模型。1

当然,也可以从workload的应用出发,分析有什么重复的热点,值得做成专用的电路单元。