%0 Thesis %A Upp, Brandon Edward %D 2019 %T Computer Program Instrumentation Using Reservoir Sampling & Pin++ %U https://hammer.purdue.edu/articles/thesis/Computer_Program_Instrumentation_Using_Reservoir_Sampling_Pin_/9104771 %R 10.25394/PGS.9104771.v1 %2 https://hammer.purdue.edu/ndownloader/files/16603907 %K Pin %K Pin++ %K Instrumentation %K Sampling %K Software instrumentation %K Computer Software %X

This thesis investigates techniques for improving real-time software instrumentation techniques of software systems. In particular, this thesis investigates two aspects of this real-time software instrumentation. First, this thesis investigates techniques for achieving different levels of visibility (i.e., ensuring all parts of a system are represented, or visible, in final results) into a software system without compromising software system performance. Secondly, this thesis investigates how using multi-corecomputing can be used to further reduce instrumentation overhead. The results ofthis research show that reservoir sampling can be used to reduce instrumentation overhead. Reservoir sampling at a rate of 20%, combined with parallelized disk I/O, added 34.1% additional overhead on a four-core machine, and only 9.9% additional overhead on a sixty-four core machine while also providing the desired system visibility. Additionally, this work can be used to further improve the performance of real-time distributed software instrumentation.

%I Purdue University Graduate School