The VampirTrace Plugin Counter Interface: Introduction and Examples

Research output: Contribution to book/conference proceedings/anthology/reportConference contributionContributedpeer-review


The growing complexity of microprocessors is not only driven by the current trend towards multi-core architectures, but also by new features like instruction set extensions, additional function units or specialized processing cores. The demand for more performance and scalability also results in an increasing complexity of the software stack: operating systems, libraries, and applications all need to exploit more parallelism and new functionalities in order to meet this demand. Both aspects -- hardware and software -- put pressure on performance monitoring infrastructures that face two conflictive requirements. On the one hand, performance tools need to be somewhat stable without entailing significant software changes with every additional functionality. On the other hand they need to be able to monitor the influence of new hardware and software features. We therefore present a plugin interface for our performance monitoring software VampirTrace that allows users to write libraries that feed VampirTrace with data from new (platform dependent) performance counters as well as hardware features that may not be accessed by Open Source software. This paper describes the interface in detail, analyzes its strength and weaknesses, depicts examples, and provides a comparison to other plugin-like performance analysis tools.


Original languageEnglish
Title of host publicationEuro-Par 2010 Parallel Processing Workshops
PublisherSpringer, Berlin [u. a.]
Number of pages11
ISBN (print)978-3-642-24877-4
Publication statusPublished - 2011

Publication series

SeriesLecture Notes in Computer Science, Volume 6586


TitleWorkshop on Productivity and Performance
SubtitleCo-located with Euro-Par 2010
Abbreviated titlePROPER
Conference number3
Duration31 August - 3 September 2010
Degree of recognitionInternational event

External IDs

ORCID /0000-0002-8491-770X/work/141543304
Scopus 80051681023
ORCID /0009-0003-0666-4166/work/151475603
ORCID /0000-0002-5437-3887/work/154740513


Library keywords