ValeevGroup/tiledarray

A massively-parallel, block-sparse tensor framework written in C++

解決的問題

TiledArray 是一個為高效率張量運算設計的可擴展區塊稀疏張量框架。它簡化了在 C++ 中組合複雜張量表達式的過程,同時確保系統能從單一多核心電腦擴展至大型分散式記憶體多處理器,這在多體量子力學等領域尤其實用。

工作原理

建構於 MADNESS 並行執行環境(MADWorld)之上,此框架允許使用者使用極其接近標準數學符號與愛因斯坦求和慣例的語法撰寫張量表達式。支援密集與區塊稀疏張量,並提供高度可客製化的框架,可自訂區塊類型與稀疏張量結構,以支援磁碟儲存或即時運算張量等特性。

適用對象

適合需要在分散式記憶體系統上執行大規模張量運算的科學計算與高效能運算(HPC)領域的研究人員與開發者。

主要特色

  • 數學化語法:使用類似數學符號與愛因斯坦求和的 C++ 程式碼,實現直覺的表達式組合。
  • 大規模平行:可在共享記憶體與分散式記憶體系統上擴展,某些基準測試中表現優於 ScaLAPACK 等標準函式庫。
  • 區塊稀疏支援:高效處理密集與區塊稀疏張量。
  • 可擴展設計:支援自訂區塊類型與稀疏張量結構的描述,具備高度彈性。

相關

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