Vojtěch Hájek: Performance Analysis of C# Programs

Disclaimer: This thesis was mainly supervised by Ing. Jiří Pavela; I have served as additional technical consultant. The goal of this thesis was to extend our profilers with profiler for programs written in C#, potentially extending our support for Windows (sub)systems. The results were interpreted using tree-like views similar to outputs of kcachegrind.

Abstract

The goal of this thesis is to extend the Performance Version System – Perun by implementing a module for profiling programs written in C# language. This extension implements a tracing profiler with the use of .NET runtime profiling aplication interface. Profiler can collect metrics about trace functions and memory consumption. Measured profiles can then be interpreted into graphs like a scatter plot or a treemap.