We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Successful and not (yet?) successful optimisations in Valgrind

Formale Metadaten

Titel
Successful and not (yet?) successful optimisations in Valgrind
Serientitel
Anzahl der Teile
611
Autor
Lizenz
CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache
Produktionsjahr2017

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Making Valgrind faster is a never ending challenge. In this talk, we willdescribe 2 optimisations in Valgrind. A first optimisation is a speedup of Helgrind (a race detection tool). A verysimple observation has led to an optimisation in the way helgrind capturesstack traces for its 'full recording' of where a piece of memory was modified.This optimisation gives a typical speed up of 25%. We will describe the issuesencountered during the implementation and discuss the reasons why thisoptimisation is not (yet?) committed in the Valgrind sources. The second optimisation is the implementation of the execution tree concept :this generalises the way Massif (a heap profiler) records the memory usage ofa program. We will show how a (maybe counter-intuitive) representation of atree using a hash table of flat stack traces has doubled the speed of Massiffor some workloads. This talk is aimed at Valgrind developers and any application developerinterested in data structures and algorithm optimisations.