V kontextu této práce může cachování být popsáno jako proces, kdy si program v paměti či na pevném disku uchovává výsledky výpočtů z důvodu vyhnutí se jejich opětovnému počítání v případě, kdy je stejný výsledek použit více než jedenkrát. Tento dokument popisuje několik známých politik cachování a obsahuje hlubší analýzu a popis konkrétního cachovacího systému navrženého a vyvinutého pro potřebu využití v MAF2 frameworku. Zároveň jsou zde popsány základní principy vizualizačního nástroje VTK, který je MAF2 frameworkem využíván. Z tohoto důvodu je navržený systém kompatibilní s datovými objekty nástroje VTK a zároveň je dostatečně obecný, aby bylo možné ho použít pro cachování téměř libovolného typu dat.
Annotation in English
In the context of this work, caching can be described as the process whereby a
program stores calculated data into its memory or onto a hard drive in order
to avoid recalculating it in case it is needed more than once. This document
describes various known cache policies and contains a deeper analysis and
description of a specific cache system designed and developed for the use
in MAF2 framework. It also describes the basic principles of the VTK
visualization toolkit used by the MAF2 framework. The system is therefore
compatible with VTK data objects and it is also as generic as possible so
that it can be used for caching almost any type of data.
Keywords
cache, vyrovnávací paměť, grafika, počítačová grafika, The Visualization Toolkit, VTK, MAF2, LHP, lhpBuilder, cachovací politiky, politiky cachování, C++, variadické šablony
V kontextu této práce může cachování být popsáno jako proces, kdy si program v paměti či na pevném disku uchovává výsledky výpočtů z důvodu vyhnutí se jejich opětovnému počítání v případě, kdy je stejný výsledek použit více než jedenkrát. Tento dokument popisuje několik známých politik cachování a obsahuje hlubší analýzu a popis konkrétního cachovacího systému navrženého a vyvinutého pro potřebu využití v MAF2 frameworku. Zároveň jsou zde popsány základní principy vizualizačního nástroje VTK, který je MAF2 frameworkem využíván. Z tohoto důvodu je navržený systém kompatibilní s datovými objekty nástroje VTK a zároveň je dostatečně obecný, aby bylo možné ho použít pro cachování téměř libovolného typu dat.
Annotation in English
In the context of this work, caching can be described as the process whereby a
program stores calculated data into its memory or onto a hard drive in order
to avoid recalculating it in case it is needed more than once. This document
describes various known cache policies and contains a deeper analysis and
description of a specific cache system designed and developed for the use
in MAF2 framework. It also describes the basic principles of the VTK
visualization toolkit used by the MAF2 framework. The system is therefore
compatible with VTK data objects and it is also as generic as possible so
that it can be used for caching almost any type of data.
Keywords
cache, vyrovnávací paměť, grafika, počítačová grafika, The Visualization Toolkit, VTK, MAF2, LHP, lhpBuilder, cachovací politiky, politiky cachování, C++, variadické šablony
Seznamte se se způsobem provádění výpočtů v simulačně-vizualizačním prostředí (postaveno na knihovně VTK) používaným grafickou skupinou na KIV.
Prozkoumejte existující přístupy více úrovňových vyrovnávacích pamětí(cache).
Navrhněte a naimplementujte systém, který dokáže automaticky provádět cachování náročných grafických výpočtů tak, aby tyto výpočty nebylo nutné opakovat, není-li toto nezbytné.
Vytvořené programové vybavení důkladně otestujte a dosažené výsledky zhodnoťte.
Research Plan
Seznamte se se způsobem provádění výpočtů v simulačně-vizualizačním prostředí (postaveno na knihovně VTK) používaným grafickou skupinou na KIV.
Prozkoumejte existující přístupy více úrovňových vyrovnávacích pamětí(cache).
Navrhněte a naimplementujte systém, který dokáže automaticky provádět cachování náročných grafických výpočtů tak, aby tyto výpočty nebylo nutné opakovat, není-li toto nezbytné.
Vytvořené programové vybavení důkladně otestujte a dosažené výsledky zhodnoťte.