SHI-Labs/NATTEN

Fast Multi-dimensional Sparse Attention

What it solves

NATTEN 解決了標準自注意力機制的高計算成本問題,其計算量通常隨着 token 的數量呈平方級增長。它提供了一種在注意力機制中引入局部性和稀疏性的方法,使其對於圖像(2D)和體積數據(3D)等多維數據更加高效。

How it works

NATTEN 實施了鄰域注意力(Neighborhood Attention, NA),一種滑動窗口自注意力機制。與卷積(convolutions)類似,它允許用戶定義 kernel_sizestridedilation 來控制每個維度中的注意力範圍。它也支持因果掩碼(causal masking)以防止 token 參與未來 token 的注意力計算。

為了實現高性能,該項目提供了針對 NVIDIA GPU 優化的 Fused Multi-Headed Attention (FMHA) 和 Fused Neighborhood Attention (FNA) 內核,包括針對 Hopper (SM90) 和 Blackwell (SM100, SM103) 架構的原生內核。

Who it’s for

它專為構建用於多維特徵圖的 Transformer 模型的研究人員和開發人員設計,特別是從事電腦視覺或 3D 數據處理的工作者。

Highlights

  • Multi-dimensional support: 2D 和 3D token 佈局的原生支持。
  • High-performance kernels: 針對從 Maxwell (SM50) 到 Blackwell (SM100/103) 的所有 NVIDIA 架構優化的融合內核。
  • Flexible configuration: 可針對每個維度控制 kernel_sizestridedilation
  • Causal masking: 為多維稀疏注意力提供切換因果注意力的能力。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案