Sparse matrix – kertolasku: hajautettu lohkopakattu sparse row library

tehokas rinnakkaiskertolasku harvoille matriiseille on avain monien suurten laskutoimitusten mahdollistamiseen. Tässä artikkelissa esitellään dbcsr (Distributed Block Compressed Sparse Row)–kirjasto scalable sparse-matriisi-matriisi-kertolaskua varten ja sen käyttö cp2k-ohjelmassa lineaarisen skaalauksen kvanttikemiallisissa laskelmissa. Kirjasto yhdistää useita lähestymistapoja harvan matriisin kertolaskun toteuttamiseksi tavalla, joka toimii hyvin ja on todistettavasti skaalautuva. Rinnakkaisella viestinnällä on hyvin määritellyt rajat. Datamäärä pienenee O: N(1/P) myötä prosessimäärien kasvaessa P: n kanssa ja jokainen prosessi kommunikoi korkeintaan O(P) muiden kanssa. Paikallinen harvamatriisin kertolasku hoidetaan tehokkaasti eri tekniikoiden yhdistelmällä: blokataan elementit yhteen sovelluskelpoisella tavalla, autotuning-kirjasto pienille matriisikertoimille, välimuisti-tietämätön rekursiivinen kertolasku ja monilukutekniikka. Lisäksi lennossa tapahtuva suodatus paitsi lisää harvuutta myös välttää suodatuskynnyksen alle jäävien laskelmien tekemistä. Demonstroimme ja analysoimme dbcsr-kirjaston suorituskykyä ja sen erilaisia skaalauskäyttäytymistä.

Vastaa

Sähköpostiosoitettasi ei julkaista.