Optimalizace datových struktur výpočetních programů s ohledem na využití cache
dc.contributor | Jeníček Jiří, Ing. Ph.D. : 56852 | |
dc.contributor.advisor | Březina Jan, Mgr. Ph.D. : 58132 | |
dc.contributor.author | Král, Petr | |
dc.contributor.other | Pěničková Zuzana, doc. Ing. Ph.D. Skolitel : 59645 | |
dc.contributor.other | Rozkovec Jiří, Mgr. Konzultant : 56638 | |
dc.contributor.other | Kysela Jaroslav, Ing. Konzultant2 : 65866 | |
dc.date.accessioned | 2018-10-15T11:53:53Z | |
dc.date.available | 2018-10-15T11:53:53Z | |
dc.date.committed | 2018-5-14 | |
dc.date.defense | 2018-6-12 | |
dc.date.submitted | 2017-10-19 | |
dc.date.updated | 2018-10-15 | |
dc.degree.level | Bc. | |
dc.description.abstract | Simulátor proudění podzemní vody s názvem Flow123d (Březina a kol. [2]) využívá za účelem zefektivnění výpočtů s malými vektory a maticemi knihovnu Armadillo, která je schopna tyto výpočty díky optimalizacím například s pomocí výrazových šablon provádět velmi efektivně. Armadillo si však předem pro každou datovou strukturu alokuje prostor v paměti o minimální velikost 16xdouble. To má při použití velkého množství malých vektorů (typicky 3x double) negativní dopad na využití cache paměti procesoru a následné zpomalení výpočtů.V této práci je popsán způsob, jakým lze tuto negativní vlastnost knihovny Armadillo obejít. Byla vytvořena knihovna Armor, která umožňuje provádět výpočty pomocí knihovny Armadillo nad efektivně uloženými daty. Byla provedena analýza využití cache paměti celým programem, následně byla knihovna Armor aplikována ve Flow123d a vliv těchto a dalších optimalizací na běh programu a jeho částí byl otestován. Zároveň byly provedeny celkové testy efektivity využití cache paměti. | cs |
dc.description.abstract | A simulator of underground water flow named Flow123d (Březinaet al. citeFlow123d) uses the Armadillo library for higher effici-ency of calculations with small vectors and matrices. This softwareis capable of performing these calculations very effectively not onlythanks to its use of expression templates. Armadillo, however, alwa-ys prealocates a space in memory of 16 times verb'double'. This hasa negative effect on the use of cache when using a large number ofsmall vectors (typically 3 times verb'double') which is then causinga considerable slowdown.This thesis describes a way to eliminate this negative feature ofArmadillo. A new library named Armor was created. This librarycan perform these calculations using Armadillo with efficiently sto-red data. An analysis of cache memory usage of the whole programwas performed. This library was then applied in Flow123d and theimpact of these optimization's on the run-time of the program andits parts was tested. Complete tests of the cache usage efficiencywere performed. | en |
dc.description.mark | ||
dc.format | 30 | |
dc.format.extent | Ilustrace , Grafy, Tabulky 1 ROM | |
dc.identifier.uri | https://dspace.tul.cz/handle/15240/32209 | |
dc.language.iso | cs | |
dc.relation.isbasedon | [1] Kowarschik M., Weiß C. (2003) An Overview of Cache Optimization Techniques and Cache-Aware Numerical Algorithms. In: Meyer U., Sanders P., Sibeyn J. (eds) Algorithms for Memory Hierarchies. Lecture Notes in Computer Science, vol 2625. Springer, Berlin, Heidelberg | |
dc.relation.isbasedon | [2] Cachegrind: a Cache-miss Profiler. [online]. [cit. 1.10. 2017] Dostupné na: http://valgrind.org/docs/manual/cg-manual.html | |
dc.relation.isbasedon | [3] J. Levon, OProfile Manual, http://oprofile.sourceforge.net/doc/, Victoria University of Manchester. | |
dc.rights | Vysokoškolská závěrečná práce je autorské dílo chráněné dle zákona č. 121/2000 Sb., autorský zákon, ve znění pozdějších předpisů. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem https://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou https://knihovna.tul.cz/document/26 | cs |
dc.rights | A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act. https://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics https://knihovna.tul.cz/document/26 | en |
dc.rights.uri | https://knihovna.tul.cz/document/26 | |
dc.rights.uri | https://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf | |
dc.subject | Armadillo | cs |
dc.subject | C++ | cs |
dc.subject | cache | cs |
dc.subject | Flow123d | cs |
dc.subject | vektor | cs |
dc.subject | matice | cs |
dc.subject | výrazové šablo-ny | cs |
dc.subject | Armadillo | en |
dc.subject | C++ | en |
dc.subject | cache | en |
dc.subject | expression templates | en |
dc.subject | Flow123d | en |
dc.subject | matrix | en |
dc.subject | vector | en |
dc.title | Optimalizace datových struktur výpočetních programů s ohledem na využití cache | cs |
dc.title | Cache optimization of data structures in numerical software | en |
dc.title.alternative | cs | |
dc.type | bakalářská práce | cs |
local.degree.abbreviation | Bakalářský | |
local.degree.discipline | IT | |
local.degree.programme | Informační technologie | |
local.degree.programmeabbreviation | B2646 | |
local.department.abbreviation | NTI | |
local.faculty | Fakulta mechatroniky, informatiky a mezioborových studií | cs |
local.faculty.abbreviation | FM | |
local.identifier.author | M15000029 | |
local.identifier.stag | 37048 | |
local.note.administrators | automat |
Files
Original bundle
1 - 4 of 4
Loading...
- Name:
- bakalarska_prace_2018_petr_kral.pdf
- Size:
- 2.27 MB
- Format:
- Adobe Portable Document Format
- Description:
- VSKP
Loading...
- Name:
- Kral__posudek_oponenta.pdf
- Size:
- 617.54 KB
- Format:
- Adobe Portable Document Format
- Description:
- Posudek_oponenta_VSKP
Loading...
- Name:
- Kral__posudek_vedouciho.pdf
- Size:
- 605.91 KB
- Format:
- Adobe Portable Document Format
- Description:
- Posudek_vedouciho_VSKP
Loading...
- Name:
- kral.pdf
- Size:
- 242.22 KB
- Format:
- Adobe Portable Document Format
- Description:
- Prubeh_obhajoby_VSKP