Influence of Resource Sharing on Performance

Abstract

Resource sharing occurs when multiple active processes or software components compete for system resources, which influences the observed performance compared to an individual execution. Isolated benchmarking of durations of key operations for solving of performance prediction models may therefore yield imprecise results. Resource sharing also occurs between the measured code and the benchmark infrastructure for obtaining and storing samples, imposing an indirect overhead. This thesis quantifies the effects of sharing on performance for several resources that are often shared, namely the processor caches and the file systems. The highest possible performance impact of cache sharing is determined by synthetic benchmarks. Impact on practical code and its dependency on a number of factors such as cache trashing frequency and intensity are then determined by experiments with existing implementations of FFT and LZW algorithms and a video stream processing application. Effects of file system sharing are measured by experiments that read and write multiple files simultaneously. For both resources, situations with significant performance impact of sharing have been observed. Based on the results of the experiments, several suggestions for dealing with the overhead of performance monitoring infrastructure are...Sdílení prostředků nastává v případech, kdy několik současně aktivních procesů či softwarových komponent využívá stejné systémové prostředky, což ovlivňuje výkon v porovnání s individuálním během. Izolované měření dob trvání klíčových operací pro řešení modelů predikce výkonu tudíž může přinášet nepřesné výsledky. Sdílení prostředků také nastává mezi měřeným kódem a měřící infrastrukturou, která sbírá a ukládá výsledky, což nepřímo zvyšuje její režii. Tato práce kvantifikuje vlivy sdílení na výkon pro několik často sdílených prostředků, jmenovitě procesorových caches a souborových systémů. Horní odhad možného ovlivnění výkonu sdílením caches je stanoven pomocí syntetických testů. Účinky na praktický kód a jejich závislosti na různých faktorech, jako frekvence a intenzita trashování cache, jsou poté změřeny pomocí experimentů s existujícími implementacemi algoritmů FFT a LZW a aplikací pro zpracování videa. Efekty sdílení souborového systému na rychlost jsou změřeny pomocí experimentů provádějících hromadný zápis a čtení z několika souborů. Za určitých okolností lze pozorovat významné dopady sdílení u každého z uvažovaných prostředků. Na základě výsledků těchto měření je nadále navrženo několik rad pro řešení problému režie měřící infrastruktury. Také je zde diskutována použitelnost provedených experimentů a...Department of Software EngineeringKatedra softwarového inženýrstvíFaculty of Mathematics and PhysicsMatematicko-fyzikální fakult

    Similar works