Devoxx france 2014 compteurs de perf

Post on 08-Jul-2015

317 views 1 download

description

Les CPUs intègrent une unité de mesure de performance (PMU) que l'on peut utiliser pour collecter des données sur l'utilisation des caches (hit/miss) des prédictions de branches, du nombre d'instructions, des cycles, etc. Ces compteurs de performance (HPC) peuvent être accédés en Java grâce à la librairie overseer. Cette présentation montrera comment les mettre en oeuvre avec des exemples de situation où ils sont pertinents pour la compréhension des performances.

Transcript of Devoxx france 2014 compteurs de perf

@jpbempel#CompteursDePerf

Mesurer directement depuis le CPU:

les compteurs de performance

Jean-Philippe BEMPEL, ULLINK

Architecte Performance

jpbempel@ullink.com

http://jpbempel.blogspot.com

@jpbempel#CompteursDePerf

Compteurs de performance

•CPUs embarquent un PMU (Processing Monitoring Unit)

•Compteurs matériels sur le comportement du CPU

•Cycles

• Instructions

•Caches

•Accès mémoire

•Prédéfinis ou Programmables

@jpbempel#CompteursDePerf

Perf

•Outil dispo sur pratiquement tous les linux

•Permet d’accéder aux compteurs de perf

mais permet bien d’autres choses

(profiling, compteurs OS, …)

•Lister des compteurs de perf : perf list

•Profiler avec compteurs par défautperf stat java …

•Programmer un compteur de perfperf stat –e LLC-load-misses java …

@YourTwitterHandle@jpbempel#CompteursDePerf

@jpbempel#CompteursDePerf

Overseer

•Librairie java (JNI – linux only)

•Permet de programmer tous les compteurs disponibles

•Basée sur libpfm4

•Encodage des compteurs en fonction du CPU

•Profiler précisément des portions de code d’applications

@YourTwitterHandle@jpbempel#CompteursDePerf

@YourTwitterHandle#DVXFR14{session hashtag} @YourTwitterHandle#YourSessionHashtag

@jpbempel#CompteursDePerf

Liens

•Librairie Overseer

• http://www.peternier.com/projects/overseer/overseer.php

• libpfm4

• http://perfmon2.sourceforge.net/

@jpbempel#CompteursDePerf

Crédit image / Creative Commons

• Rue pavée — By-Nc-Sa

• http://www.flickr.com/photos/22914687@N05/4957591422/sizes/l/

• Sous la Tour Eiffel — By-Nc-Sa

• http://www.flickr.com/photos/stewiedewie/244850735/sizes/l/in/photostream/

• Sous le pont — photo par B.Monginoux - By-Nc-Nd

• http://www.landscape-photo.net/displayimage.php?pid=5194

• Le Louvre – Photo par Anthony Gaudun - By-Nc-Sa

• http://www.flickr.com/photos/anthonygaudun/7474397964/sizes/o/in/photostream/

• Slide template created by @glaforge, completed by @nmartignole for Devoxx FR2014