Řídké matice násobení: distribuovaný blok-compressed sparse row knihovna
Efektivní paralelní násobení řídké matice je klíčem k tomu, aby mnoho rozsáhlých výpočtů. Tento článek představuje knihovnu DBCSR (Distributed Block Compressed Sparse Row) pro škálovatelné řídké násobení matic a matic a její použití v programu CP2K pro kvantově-chemické výpočty lineárního měřítka. Knihovna kombinuje několik přístupů k implementaci řídkého násobení matic způsobem, který funguje dobře a je prokazatelně škálovatelný. Paralelní komunikace má dobře definované limity. Objem dat klesá s O (1 / P) se zvyšujícím se počtem procesů P a každý proces komunikuje nanejvýš s O (P) ostatními. Místní řídké matice násobení je nakládáno efektivně pomocí kombinace technik: blokování prvky v aplikaci relevantní způsob, automatického ladění knihovna pro malé matice násobení, cache-oblivious rekurzivní násobení, a multithreading. Filtrování za běhu navíc nejen zvyšuje řídkost, ale také zabraňuje provádění výpočtů, které spadají pod prahovou hodnotu filtrování. Demonstrujeme a analyzujeme výkon knihovny DBCSR a její různá škálovací chování.