PofoliaPofolia ile paylaşıldı

· 2015

SPLATT: Verimli ve Paralel Seyrek Tensör-Matris Çarpımı

SPLATT: Efficient and Parallel Sparse Tensor-Matrix Multiplication

Shaden Smith, Niranjay Ravindran, Nicholas D. Sidiropoulos, George Karypis

Kısa özet

SPLATT, yeni bir C kütüphanesi, paylaşımlı bellek paralelliği, yeni bir veri yapısı ve önbellek dostu yeniden sıralama/döşeme teknikleri kullanarak seyrek tensör-matris çarpımı için 80 kata kadar hızlanma sağlıyor.

Yapay zekâ ile başlık ve abstract'tan üretildi; tam metin okunmaz.

Ana noktalar

  • Seyrek tensör-matris çarpımı için paylaşımlı bellek paralelliğine sahip bir C kütüphanesi olan SPLATT'ı tanıtır.
  • Küçük bir bellek ayak izi için seyrekliği kullanan yeni bir veri yapısı içerir.
  • Bu bağlamda ilk olan önbellek dostu yeniden sıralama ve döşeme tekniklerini uygular.
  • 16 iş parçacığı ile ortalama 30 kat hızlanma sağlar, NELL-2 veri kümesinde 80 katın üzerine çıkar.

Yapay zekâ ile başlık ve abstract'tan üretildi; tam metin okunmaz.

Özet (abstract)

Multi-dimensional arrays, or tensors, are increasingly found in fields such as signal processing and recommender systems. Real-world tensors can be enormous in size and often very sparse. There is a need for efficient, high-performance tools capable of processing the massive sparse tensors of today and the future. This paper introduces SPLATT, a C library with shared-memory parallelism for three-mode tensors. SPLATT contains algorithmic improvements over competing state of the art tools for sparse tensor factorization. SPLATT has a fast, parallel method of multiplying a matricide tensor by a Khatri-Rao product, which is a key kernel in tensor factorization methods. SPLATT uses a novel data structure that exploits the sparsity patterns of tensors. This data structure has a small memory footprint similar to competing methods and allows for the computational improvements featured in our work. We also present a method of finding cache-friendly reordering and utilizing them with a novel form of cache tiling. To our knowledge, this is the first work to investigate reordering and cache tiling in this context. SPLATT averages almost 30x speedup compared to our baseline when using 16 threads and reaches over 80x speedup on NELL-2.

Yazarların özeti; kaynağından alınmıştır., 2015 · DOI ↗

ÇıkarımlarPremium
Makaleye SorÜcretsiz hesapla

Ücretsiz hesapla devam et

Makaleye Sor ile bu makaleye günde 3 soru ücretsiz; makaleyi kaydet, kaynakçasını al, ilgi alanına göre her gün yeni özetler. Çıkarımlar Premium.

Web'de ücretsiz devam et

Google ya da Apple hesabınla giriş; kart istemez. Bu makaleye geri dönersin.

Telefonda:

Alan: Hesaplamalı Matematik

Computational MathematicsMathematics