Linux accel 子系统
Linux 计算加速器子系统旨在以通用的方式向用户空间开放计算加速器的接口。这些计算加速器可以是独立的 ASIC, 也可以是 SoC/GPU 内的 IP 块。通常计算加速器包括以下几种类型:
- 边缘 AI - 在边缘设备上进行推理计算
- 推理数据中心 - 大型服务器中的单用户/多用户设备
- 训练数据中心 - 类似于推理数据中心卡,但通常具有更强的计算能力和更高的存储带宽
Linux 计算加速器子系统旨在以通用的方式向用户空间开放计算加速器的接口。这些计算加速器可以是独立的 ASIC, 也可以是 SoC/GPU 内的 IP 块。通常计算加速器包括以下几种类型:
高端硅片可以构建市场,但最终,软件支持往往决定了赢家和输家
– Jack Huynh, AMD 高级副总裁兼计算和图形业务集团总经理
AMD 的通用计算平台 ROCm (Radeon Open Compute) 是在通用计算领域与 NVIDIA 的 CUDA (Compute Unified Device Architecture) 相抗衡的软件基础设施。ROCm 实现的其实是由 AMD 发起的 HSA (Heterogeneous System Architecture) 标准,所以它的运行时主要由 3 个部分组成:
OOC: ROCm 平台又叫 Boltzmann 平台,原因据说是为了纪念统计力学和热力学领域著名物理学家路德维希·玻尔兹曼,他的工作对理解物质的微观行为和能量分布有着深远的影响。AMD 选取这个名字,可能是为了强调该平台在高性能计算领域的强大计算力和科学计算的应用前景。
AMD 在 Linux 下维护着两套开源 Vulkan 驱动:
Hantro Products OY 是一家专注于视频编解码技术的芬兰公司,它的视频编码 IP (Hantro H1) 和解码 IP(Hantro G1) 被集成在瑞芯微 RK3288 SoC 上。其开源驱动在 drivers/media/platform/verisilicon
Perfetto 是一个用于 Linux 和 Android 系统上进行系统级和应用级的跟踪和性能分析的开源工具。Perfetto 捆绑了许多数据源,这些数据源能够从不同的系统接口收集详细的性能数据,包括 ftrace, /proc, /sys, native heap profiling 等。Perfetto 还提供了一个基于 Web 的用户界面,用于跟踪数据的可视化和分析。这里主要是对第一次使用 perfetto 做一下记录,方便以后继续学习和整理。
GLSL 是一种高级着色语言,语法接近 C 语言。它由 OpenGL ARB 创建,旨在让开发者能够更直接地控制图形管线,而无需使用 ARB 汇编语言或特定硬件语言。
实际上 GLSL 包括大概 6 种着色语言:
WSL (Windows Subsystem for Linux)是一个能够在 Windows 系统(Windows 10及以上版本)上原生运行 Linux 可执行文件的兼容层。目前有两个版本: WSL, WSL2
同步原语(Synchronization Primitive)的确切定义没有一个官方的。但大体来说同步原语可能有以下几种: