PAPI (mit PerfCtr/PerfMon Patch) auf Debian Lenny (2.6.26-2)
-
- Beiträge: 15
- Registriert: 28.02.2010 21:59:04
PAPI (mit PerfCtr/PerfMon Patch) auf Debian Lenny (2.6.26-2)
Hallo!
Ich bin neu hier im Forum, und relativ neu mit Linux (ich bin vor ca. einem halben Jahr von Windows umgestiegen). Aber ich komm schon gut zurecht und hab den Umstieg nie bereut .
Jetzt brauch ich für die Uni PAPI. Ich habe Debian Lenny mit dem 2.6.26-2 Kernel. Ich hab mir mal die INSTALL.txt von PAPI 3.7.2 angesehen und weiß schon mal, dass ich meinen Kernel mit PerfCtr oder PerfMon2 patchen muss um PAPI zu verwenden.
Dazu hätt' ich jetzt ein paar Fragen:
1) Wie geht das?
Ok, also ganz ahnungslos bin ich nicht, ich hab ja die INSTALL.txt gelesen. Aber was mich interessieren würde, gibt es da eine Debian spezifische Methode, die dann auch mit dem Package Management zusammenspielt? Oder muss ich irgendwas Debian-spezifisches beachten?
2) Kann ich den ganzen Kernel-Patch-Prozess irgendwie testen bevor ich ihn wirklich ausfür, so dass ich sicher sein kann das nichts schiefgeht.
3) Nicht so wichtig, aber rein aus Interesse: Was is der Unterschied zwischen PerfCtr und PerfMon2, bzw. welchen soll ich verwenden?
'Bin für jede Hilfe dankbar,
lG
Ich bin neu hier im Forum, und relativ neu mit Linux (ich bin vor ca. einem halben Jahr von Windows umgestiegen). Aber ich komm schon gut zurecht und hab den Umstieg nie bereut .
Jetzt brauch ich für die Uni PAPI. Ich habe Debian Lenny mit dem 2.6.26-2 Kernel. Ich hab mir mal die INSTALL.txt von PAPI 3.7.2 angesehen und weiß schon mal, dass ich meinen Kernel mit PerfCtr oder PerfMon2 patchen muss um PAPI zu verwenden.
Dazu hätt' ich jetzt ein paar Fragen:
1) Wie geht das?
Ok, also ganz ahnungslos bin ich nicht, ich hab ja die INSTALL.txt gelesen. Aber was mich interessieren würde, gibt es da eine Debian spezifische Methode, die dann auch mit dem Package Management zusammenspielt? Oder muss ich irgendwas Debian-spezifisches beachten?
2) Kann ich den ganzen Kernel-Patch-Prozess irgendwie testen bevor ich ihn wirklich ausfür, so dass ich sicher sein kann das nichts schiefgeht.
3) Nicht so wichtig, aber rein aus Interesse: Was is der Unterschied zwischen PerfCtr und PerfMon2, bzw. welchen soll ich verwenden?
'Bin für jede Hilfe dankbar,
lG
- Saxman
- Beiträge: 4233
- Registriert: 02.05.2005 21:53:52
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: localhost
Re: PAPI (mit PerfCtr/PerfMon Patch) auf Debian Lenny (2.6.2
Hallo und Willkommen im Forum.
Zu deiner Frage kann Ich leider nichts sagen da Ich dieses PAPI nicht kenne und mir google da auch nur Mist ausspuckt.
Das wird aber anderen auch so gehen deswegen solltest du vielleicht mal einen link posten.
Dann kann man sich das mal anschauen und vielleicht was dazu sagen.
Zum kernel backen kann Ich dir sagen daß du keine Angst zu haben brauchst da etwas falsch zu machen.
Solange der Stock kernel installiert ist kannst du den immer booten.
Ich glaub jeder hat schon mal den ein oder anderen kernel beim bauen vermurkst..
Zu deiner Frage kann Ich leider nichts sagen da Ich dieses PAPI nicht kenne und mir google da auch nur Mist ausspuckt.
Das wird aber anderen auch so gehen deswegen solltest du vielleicht mal einen link posten.
Dann kann man sich das mal anschauen und vielleicht was dazu sagen.
Zum kernel backen kann Ich dir sagen daß du keine Angst zu haben brauchst da etwas falsch zu machen.
Solange der Stock kernel installiert ist kannst du den immer booten.
Ich glaub jeder hat schon mal den ein oder anderen kernel beim bauen vermurkst..
"Unix is simple. It just takes a genius to understand its simplicity." - Dennis Ritchie
Debian GNU/Linux Anwenderhandbuch | df.de Verhaltensregeln | Anleitungen zum Review und zum Verfassen von Wiki Artikeln.
Debian GNU/Linux Anwenderhandbuch | df.de Verhaltensregeln | Anleitungen zum Review und zum Verfassen von Wiki Artikeln.
-
- Beiträge: 15
- Registriert: 28.02.2010 21:59:04
Re: PAPI (mit PerfCtr/PerfMon Patch) auf Debian Lenny (2.6.2
Ok stimmt, dass das nicht jeder kennt, hab ich jetzt gar nicht bedacht... sorry
Also PAPI steht für Performance Application Programming Interface, und ist ein Interface um auf Hardware Performance Counter zugreifen zu können.
Hier die Homepage: http://icl.cs.utk.edu/papi/
Und das man bei google nicht viel findet, ist leider wahr...
Ich werds dann das Kernel kompilieren einfach mal versuchen...
Bleibt noch die Frage, gibt es einen "Debian Way" um das zu machen? (Jetzt mal ganz allgemein und unabhängig von PAPI)
Danke,lG
Also PAPI steht für Performance Application Programming Interface, und ist ein Interface um auf Hardware Performance Counter zugreifen zu können.
Hier die Homepage: http://icl.cs.utk.edu/papi/
Und das man bei google nicht viel findet, ist leider wahr...
Ich werds dann das Kernel kompilieren einfach mal versuchen...
Bleibt noch die Frage, gibt es einen "Debian Way" um das zu machen? (Jetzt mal ganz allgemein und unabhängig von PAPI)
Danke,lG
- Saxman
- Beiträge: 4233
- Registriert: 02.05.2005 21:53:52
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: localhost
Re: PAPI (mit PerfCtr/PerfMon Patch) auf Debian Lenny (2.6.2
Die Anleitung im wiki ist recht aktuell.captaincomic hat geschrieben: Bleibt noch die Frage, gibt es einen "Debian Way" um das zu machen? (Jetzt mal ganz allgemein und unabhängig von PAPI)
/Edit
Beim Aufruf von make-kpkg würde Ich nicht wie im wiki empfohlen nur mit kernel_image den kernel backen sondern gleich mit buildpackage alle Pakete. d.h auch headers und docs etc bauen.
"Unix is simple. It just takes a genius to understand its simplicity." - Dennis Ritchie
Debian GNU/Linux Anwenderhandbuch | df.de Verhaltensregeln | Anleitungen zum Review und zum Verfassen von Wiki Artikeln.
Debian GNU/Linux Anwenderhandbuch | df.de Verhaltensregeln | Anleitungen zum Review und zum Verfassen von Wiki Artikeln.
-
- Beiträge: 15
- Registriert: 28.02.2010 21:59:04
Re: PAPI (mit PerfCtr/PerfMon Patch) auf Debian Lenny (2.6.2
Hatte bis jetzt noch keine Zeit das auszuprobieren, werd mich aber wieder melden, wenns geklappt hat - und natürlich auch, wenns nicht klappen sollte
lg
lg
-
- Beiträge: 15
- Registriert: 28.02.2010 21:59:04
Re: PAPI (mit PerfCtr/PerfMon Patch) auf Debian Lenny (2.6.2
Hallo nochmal!
Ich möchte jetzt endlich mal das kernel patchen in Angriff nehmen.
Ich habe mir selbst mal die Schritte zusammengeschieben die notwendig sind (soweit ich das versteh'):
Ich habe folgende nützliche Quellen gefunden und verwendet:
http://debiananwenderhandbuch.de/kernel ... figuration
http://wiki.debianforum.de/DebianizedLinuxKernel
http://www.howtoforge.com/kernel_compil ... ebian_etch
Alles als root (mit sudo):
1) packages installieren
2) kernel source installieren
3) /etc/kernel-pkg.conf ändern (maintainer and email eintragen)
4) kernel source entpacken, symlink /usr/src/linux erstellen
5) make clean and make mrproper
6) perfctr patch anwenden, <PDIR> bezeichnet das perfctr source directory
7) copy configuration vom jetztigen kernel
8 ) configuration ändern
oder
Für perfctr brauche ich laut deren Anleitung:
CONFIG_MODULES=y
CONFIG_MODVERSIONS=y
CONFIG_PERFCTR=y
CONFIG_PERFCTR_VIRTUAL=Y
CONFIG_PERFCTR_GLOBAL=y
to build perfctr as a loadable kernel module, set
CONFIG_PERFCTR=m
and turn on APIC support in the "Processor type and features" section
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
and also set
EXTRAVERSION
CONFIG_MODVERSIONS
9) Soweit sogut, das habe ich mal gemacht, jetzt würde ich dann mit
das kernal package erzeugen.
Jetzt noch ein paar Fragen, vielleicht könnt ihr mir da helfen:
1) Zuerst mal: War das soweit richtig?
2) In dem debian wiki steht:
3) Bei make-kpkg kann man
--revision
und
--append-to-version
angeben, wo ist da der Unterschied, was soll ich nehmen?
4) Und was sind die Optionen (Diese soll ich laut der perfctr Anleitung setzten):
EXTRAVERSION
CONFIG_MODVERSIONS
?
5) Und gibt es noch irgendwelchen Optionen die ich setzten sollte/muss? Bzw. gibt es noch etwas das ich beachten muss?
Ich weiß, sehr viele Fragen, aber ich bin für jede Hilfe dankbar!
lg
Ich möchte jetzt endlich mal das kernel patchen in Angriff nehmen.
Ich habe mir selbst mal die Schritte zusammengeschieben die notwendig sind (soweit ich das versteh'):
Ich habe folgende nützliche Quellen gefunden und verwendet:
http://debiananwenderhandbuch.de/kernel ... figuration
http://wiki.debianforum.de/DebianizedLinuxKernel
http://www.howtoforge.com/kernel_compil ... ebian_etch
Alles als root (mit sudo):
1) packages installieren
Code: Alles auswählen
aptitude install kernal-package gcc libc6-dev binutils make gawk gzip shellutils grep bin86 libncurses5-dev qt3-dev-tools pkg-config
Code: Alles auswählen
aptitude install linux-source-2.6.26
Code: Alles auswählen
nano /etc/kernel-pkg.conf
Code: Alles auswählen
cd /usr/src
tar xvjf linux-source-2.6.26.tar.bz2
ln -s linux-source-2.6.26 linux
cd linux
Code: Alles auswählen
make clean
make mrproper
Code: Alles auswählen
<PDIR>/update-kernel
Code: Alles auswählen
cp /boot/config-2.6.26-2-amd64 ./.config
Code: Alles auswählen
make menuconfig
Code: Alles auswählen
make xconfig
CONFIG_MODULES=y
CONFIG_MODVERSIONS=y
CONFIG_PERFCTR=y
CONFIG_PERFCTR_VIRTUAL=Y
CONFIG_PERFCTR_GLOBAL=y
to build perfctr as a loadable kernel module, set
CONFIG_PERFCTR=m
and turn on APIC support in the "Processor type and features" section
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
and also set
EXTRAVERSION
CONFIG_MODVERSIONS
9) Soweit sogut, das habe ich mal gemacht, jetzt würde ich dann mit
Code: Alles auswählen
make-kpkg --config menuconfig --initrd --revision 1.custom buildpackage
Jetzt noch ein paar Fragen, vielleicht könnt ihr mir da helfen:
1) Zuerst mal: War das soweit richtig?
2) In dem debian wiki steht:
Das versteh ich nicht ganz, und das steht auch sonst in keinen Anleitungen. Muss ich das machen?Einmalig muss man nun (seit kernel-package 12.001), sollte man einen Kernel mit initrd erstellen wollen, noch je ein Script in /etc/kernel/post{inst,rm}.d ablegen, welches die Erzeugung übernimmt. Im Falle einer initrd findet man ein gutes Beispiel-Script unter /usr/share/doc/kernel-package/examples/etc/kernel/post{inst,rm}.d, welches man bedenkenlos einsetzen kann (ein Symlink genügt, der hat den Vorteil, das beim Aktualisieren von kernel-package auch automatisch die Scripte für den nächsten Bau auf den neusten Stand gebracht werden). An dieser Stelle vielleicht auch noch der Hinweis auf andere neue (seit Version 12.000) Funktionen/Optionen: man kann jetzt einfachen Einfluss auf den Inhalt des debian-Verzeichnisses nehmen und die Installations-Routinen um eigene Scripte erweitern ({post,pre}{inst,rm}). Da diese Optionen recht umfangreich sind, verweise ich hier auf die im Paket enthaltene Dokumentation, unter /usr/share/doc/kernel-package und in der Manualpage.
3) Bei make-kpkg kann man
--revision
und
--append-to-version
angeben, wo ist da der Unterschied, was soll ich nehmen?
4) Und was sind die Optionen (Diese soll ich laut der perfctr Anleitung setzten):
EXTRAVERSION
CONFIG_MODVERSIONS
?
5) Und gibt es noch irgendwelchen Optionen die ich setzten sollte/muss? Bzw. gibt es noch etwas das ich beachten muss?
Ich weiß, sehr viele Fragen, aber ich bin für jede Hilfe dankbar!
lg