Zobrazit minimální záznam

dc.contributor.advisorHorák, David
dc.contributor.authorBlana, Vojtěch
dc.date.accessioned2023-06-23T08:46:03Z
dc.date.available2023-06-23T08:46:03Z
dc.date.issued2023
dc.identifier.otherOSD002
dc.identifier.urihttp://hdl.handle.net/10084/150394
dc.description.abstractTato bakalářská práce se zabývá efektivitou násobení matice a vektoru jakožto klíčové operace pro velkou škálu vědeckých aplikací. Pro většinu úloh jsou matice velké, ale mají malé procento nenulových prvků - nazýváme je řídkými. Z tohoto důvodu se začali vyvíjet formáty pro uložení řídkých matic, které mají na jedné straně za úkol co nejvíce minimalizovat paměťové nároky a na straně druhé zefektivnit přístup k prvkům matice, které jsou uložené v poli hodnot a snížit tak časovou náročnost pro výpočet s nimi. Základní formáty pro ukládání řídkých matic jsou Coordinate list (COO), Compressed Sparse Row (CSR), Compressed Sparse Column (CSC), Diagonal (DIA), Jagged Diagonal (JAD), Hybrid (HYB), ELLpack (ELL) a Sliced ELL-C-σ (SELL-C-σ). Tato bakalářská práce je rozdělena do několika částí, shrnutí a vysvětlení způsobu ukládání matic v rámci jednotlivých formátů, krátkého seznámení s použitými knihovnami, představení testovaných matic, numerické experimenty a nakonec jejich analýza. Pro testování efektivity operace násobení řídké matice a vektoru v jazyce Python jsem použil knihovny SciPy, PETSc4py, PyViennaCL k měření času operace násobení matice a vektor při použití jednotlivých formátů. V jazyce C++ jsem pracoval s knihovnami Armadillo a ViennaCL. Cílem této práce je analýza výsledků a ladění parametrů formátu SELL-C-σ z hlediska efektivity operace násobení matice a vektoru jakožto klíčové pro iterační řešiče. Tento formát kombinuje CSR a ELL formáty za účelem lepší vektorizace výpočtů.cs
dc.description.abstractThis bachelor thesis deals with the efficiency of matrix-vector multiplication as a key operation for a large variety of scientific applications. For most problems, matrices are large and they contain a small percentage of non-zero elements - we call them sparse. For this reason, formats for storing sparse matrices have started to be developed to effectivelly minimize the memory requirements on one hand, and on the other hand to streamline access to the elements of the matrix that are stored in the array of values and reduce the computation time with them. The basic formats for storing sparse matrices are namely: Coordinate list (COO), Compressed Sparse Row (CSR), Compressed Sparse Column (CSC), Diagonal (DIA), Jagged Diagonal (JAD), Hybrid (HYB), ELLpack (ELL) and Sliced ELL-C-σ (SELL-C-σ). This bachelor thesis is divided into several parts, a summary and an explanation of how matrices are stored within each format, a brief introduction to the libraries used, an introduction to the matrices tested, numerical experiments and finally their analysis. To test the efficiency of the sparse matrix-vector multiplication operation in Python, I used the libraries SciPy, PETSc4py, PyViennaCL to measure the time of the matrix-vector multiplication operation using each format. In C++, I worked with the Armadillo and ViennaCL libraries. The aim of this thesis is to analyze the results and fine-tune the parameters of the SELL-C-σ format in terms of the efficiency of the matrix-vector multiplication operation as a key for iterative solvers. This format combines the CSR and ELL formats for better vectorization of the computations.en
dc.format.extent940669 bytes
dc.format.mimetypeapplication/pdf
dc.language.isocs
dc.publisherVysoká škola báňská – Technická univerzita Ostravacs
dc.subjectŘídká maticecs
dc.subjectCoordinate listcs
dc.subjectCompressed Sparse Rowcs
dc.subjectCompressed Sparse Columncs
dc.subjectHybridní formátcs
dc.subjectDiagonální formátcs
dc.subjectJagged Diagonal formátcs
dc.subjectELLpack formátcs
dc.subjectSELL-C-σcs
dc.subjectnásobení matice a vektorucs
dc.subjectPythoncs
dc.subjectC++cs
dc.subjectSparse matrixen
dc.subjectCoordinate list formaten
dc.subjectCompressed Sparse Row formaten
dc.subjectCompressed Sparse Column formaten
dc.subjectHybrid formaten
dc.subjectDiagonal formaten
dc.subjectJagged Diagonal formaten
dc.subjectELLpack formaten
dc.subjectSELL-C-σen
dc.subjectmatrix-vector multiplicationen
dc.subjectPythonen
dc.subjectC++en
dc.titleAnalýza vlivu použitého maticového formátu na efektivitu násobení matice a vektorucs
dc.title.alternativeAnalysis of an impact of used matrix format to the efficiency of matrix by vector multiplicationen
dc.typeBakalářská prácecs
dc.contributor.refereeKružík, Jakub
dc.date.accepted2023-05-30
dc.thesis.degree-nameBc.
dc.thesis.degree-levelBakalářský studijní programcs
dc.thesis.degree-grantorVysoká škola báňská – Technická univerzita Ostrava. Fakulta elektrotechniky a informatikycs
dc.description.department470 - Katedra aplikované matematikycs
dc.contributor.consultantPecha, Marek
dc.thesis.degree-programVýpočetní a aplikovaná matematikacs
dc.description.resultvelmi dobřecs
dc.identifier.senderS2724
dc.identifier.thesisBLA0287_FEI_B0541A170008_2023
dc.rights.accessopenAccess


Soubory tohoto záznamu

Tento záznam se objevuje v následujících kolekcích

Zobrazit minimální záznam