手写一个简单的 Tiling 策略:演示如何通过 L1/L2 缓存优化矩阵运算的访存局部性。
矩阵乘法(GEMM)是高性能计算中最基础且最核心的操作之一。然而,简单的三层循环实现(ijk顺序)往往效率低下,主要瓶颈在于CPU L1/L2缓存的频繁失效(Cache Miss)。这是因为在默认的行主序(Row-Major)存储中,访问矩...
矩阵乘法(GEMM)是高性能计算中最基础且最核心的操作之一。然而,简单的三层循环实现(ijk顺序)往往效率低下,主要瓶颈在于CPU L1/L2缓存的频繁失效(Cache Miss)。这是因为在默认的行主序(Row-Major)存储中,访问矩...
循环分块(Loop Tiling),也称为循环阻塞(Loop Blocking),是高性能计算中优化内存局部性(Temporal and Spatial Locality)的关键技术。通过将大型计算任务分解为可放入缓存(Cache)的小块,...