JavaScript is currently disabled.Please enable it for a better experience of Jumi. Trimma din egen Linuxkärna

Klicka på en C-funktion eller en programrad så får du veta hur mycket programkörningstid som spenderas där. Så ser det ut när du använder MIPS nya verktyg för att analysera en Linuxkärna när den körs på en MIPS-processor.
Du som gör hårdvarunära programmering i Linux på MIPS får nu ett bättre verktyg för att analysera prestandan. Det är MIPS egen verktygsavdelning som tagit fram det. Verktyget heter Hot Spot Analyzer (HSA) och är en modul till den öppna utvecklingsmiljön Eclipse.

De senaste MIPS-kärnorna är kapabla att själva samla in statistik på vilka programrader de exekverar. Porgrammeraren behöver inte instrumentera koden, avbryta med interrupt, eller på annat sätt störa processningen. Kärnorna har ett block som läser av programräknaren och skickar ut den på EJTAG-porten. Blocket kallas Zero Overhead Program Counter Sampling.

Tidigare har det inte funnits ett bra gränssnitt till detta block.
Rick Leatherman
Rick Leatherman

MIPS har valt att konstruera ett verktyg för den plattform där de upplevt att behovet varit som störst, för optimering av Linuxprogramvara, inklusive den fasta Linuxkärnan och kärnans laddbara moduler.

- Folk bygger settopboxar, dvd-spelare och trådlösa routers, och överallt används Linux som operativsystem, berättar Rick Leatherman, chef för First Silicon Solutions, vilket är namnet på MIPS avdelning för utvecklingsverktyg.

Med hjälp av programräknarvärdet och den så kallade symboltabellen, som skapas vid kompileringen av källkoden, räknar verktyget ut hur ofta olika programinstruktioner exekveras. Verktyget pekar alltså ut de instruktioner, funktioner och filer som exekveras oftast. Och där det därför kan lönas sig bäst att optimera programvaran.

Lösningen har inget tidsoverhead och påverkar inte alls programlogiken. Det kan därför användas under drift. under körningen kan du sampla periodiskt för att få se ny statistik, eller klicka på refreshknappen.

Verktyget levererar inte en fullständig lista på alla instruktioner som passeras, utan nöjer sig med att sampla 50 000 gånger i sekunden.

Verktyget kräver MIPS EJTAG-prob System Navigator.

Prenumerera på Elektroniktidningens nyhetsbrev eller på vårt magasin.


MER LÄSNING:
 
KOMMENTARER
Kommentarer via Disqus

Rainer Raitasuo

Rainer
Raitasuo

+46(0)734-171099 rainer@etn.se
(sälj och marknads­föring)
Per Henricsson

Per
Henricsson
+46(0)734-171303 per@etn.se
(redaktion)

Jan Tångring

Jan
Tångring
+46(0)734-171309 jan@etn.se
(redaktion)