Detail publikace
Cache Efficient Implementation for Block Matrix Operations
Ila Viorela S., Ing., Ph.D. (UPGM FIT VUT)
Smrž Pavel, doc. RNDr., Ph.D. (UPGM FIT VUT)
Efektivní manipulace a operace nad blokovými maticemi jsou užitečné v mnoha aplikacích, například těmi jež zahrnují iterativní řešení nelineárních systémů. Tyto typy problémů sestávají z opakovaného skládání a řešení lineárních soustav rovnic. Bez opatrné manipulace s odpovídajícími maticemi může být řešení časově velmi náročné, zejména ve velkých systémech.
Tento článek navrhuje paměťovou strukturu, vhodnou k ukládání blokových matic, výhodnou pro jejich strukturální i numerickou modifikaci a efektivní aritmetické operace. Tato struktura byla využita při implementaci jednoduché knihovny s rozhraním typu BLAS. Výhody navržené struktury jsou demonstrovány vyčerpávající sadou testů na datasetu UFLSMC. Tato knihovna byla dále použita k řešení několika nelineárních optimizací grafových problémů.
Tento článek se zabývá efektivní implementací operací nad řídkými blokovými maticemi na CPU, pomocí efektivního návrhu struktur pro uložení matic v paměti a pomocí agresivní optimalizace pomocí instrukčních sad SSE, AltiVec nebo NEON.
Dosahuje se velmi dobrých výsledků, jak s implementací samotnou, tak s jejím využití při řešení robotických problémů typu nonlinear least squares.
@INPROCEEDINGS{FITPUB10265, author = "Luk\'{a}\v{s} Polok and S. Viorela Ila and Pavel Smr\v{z}", title = "Cache Efficient Implementation for Block Matrix Operations", pages = "698--706", booktitle = "Proceedings of the 21st High Performance Computing Symposium (HPC'13)", year = 2013, location = "San Diego, US", publisher = "Association for Computing Machinery", ISBN = "1-56555-350-0", language = "english", url = "https://www.fit.vut.cz/research/publication/10265" }