Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilTomáš Dvořák
1
Multi-dimensional Sparse Matrix Storage J. Dvorský, jiri.dvorsky@vsb.cz M. Krátký, michal.kratky@vsb.cz Katedra informatiky, VŠB – Technická univerzita Ostrava
2
Obsah Úvod Klasické přístupy Kvadrantový strom, konečný automat Multidimenzionální přístup Experimenty
3
Úvod Maticový charakter výpočtů Metoda konečných prvků DIS – vektorový model Shlukování HW podpora (vektorové procesory, SSE3 instrukce) Husté vs. řídké matice
4
Řídká matice Řídká matice A o rozměrech n x m Ukládají se nenulové hodnoty Compressed Row Storage (CRS) Compressed Column Storage (CCS)
5
Compressed Row Storage Matice je uložena po řádcích Tři pole: val – prvky matice col ind – indexy sloupců v řádku row ptr – indexy řádků (první nenulový prvek)
6
Compressed Column Storage Matice je uložena po sloupcích Tři pole: val – prvky matice row ind – indexy řádků ve sloupci col ptr – indexy sloupců (první nenulový prvek)
7
Ukázková matice
8
Compressed Row Storage
9
Compressed Column Storage
10
Vlastnosti CRS a CCS formátů Pam. složitost: 2n z +n+1 Obecný formát, všechny operace Různá složitost CRS: řádkový vektor O(1) sloupcový O(n log 2 Δ), Δ počet nenul. prvků v řádku CCS – opačná situace
11
Cíl naší práce Náhodný přístup k prvkům matice Efektivní výběr podmatice Perzistence matice
12
Kvadrantové stromy Culik & Valenta: Komprese černobílých obrázků pomocí konečných automatů Matice – nulové/nenulové prvky Rekurzivní dělení na kvadranty Adresa kvadrantu – slovo nad abecedou Σ={0, 1, 2, 3}
13
Kvadranty - příklad Adresa černého čtverce: 3203
14
Kvadrantové stromy Matici A vnoříme do čtverce 2 N x 2 N Nenulové prvky definují jazyk L A Σ N Matice A definuje funkci L A R Náhodný přístup k prvkům Časová složitost O(log 2 N) Omezená perzistence
15
Příklad
17
Multidimenzionální přístup Matice je chápána jako množina bodů ve 2D prostoru Prvek matice je indexován svým řádkem a sloupcem Vlastní hodnota není indexována Využití (B)UB-stromů
18
Multidimenzionální přístup Založeno na rozsahových dotazech Obecná podmatice A i1,j1,i2,j2 – rozsahový dotaz (i1, j1) : (i2, j2) Sloupcový vektor – (1, i) : (n, i) Řádkový vektor – (j, 1) : (j, m) Úzké rozsahové dotazy
19
(B)UB-strom, R-stromUB-Strom Z-adresaB-Strom
20
(B)UB-strom Z-křivka mapuje multidim. prostor na jednorozměrný Z-adresa Z-region – úsek na Z-křivce Z-regiony uloženy do B-stromu
21
(B)UB-strom
22
Experimentální výsledky Matice o rozměrech 10 7 x 10 6 5 x 10 6 nenulových prvků BUB-strom 80 MB index
23
Experimentální výsledky Náhodný výběr řádků a sloupců
24
Závěr Nový způsob uložení řídké matice Perzistence Náhodný přístup k prvkům resp. podmaticím Test na reálných datech, výpočty
25
Děkuji za pozornost
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.