Kevin, On Thu, Aug 24, 2006 at 10:10:17AM -0500, Kevin Corry wrote: > On Mon August 21 2006 10:42 am, Stephane Eranian wrote: > > I have also released a new libpfm, libpfm-3.2-060821, which includes: > > > > - preliminary support for P4 32 and 64 bit mode by Kevin Corry from IBM > > > > Also a new version of pfmon, pfmon-3.2-060821, to take advantage of the > > update in libpfm: > > > > - preliminary support for P4 32 and 64 bits by Kevin Corry from IBM. > > Do not get too excited and it does not count anything just yet! > > I've definitely been able to count things on P4 with pfmon.
That's excellent. No offense for the comment, I think I was still under the impression it was very preliminary (from your own comments) and that it was not counting yet. Obviously, I was wrong, my apologies. Now, I ran some tests just now and it seems to work for me as well. Here is what I could get with my stupid noploop program and by increasing the number of iterations: $ pfmon --us-c -einstr_retired:NBOGUSNTAG ~/noploop 100000 loop=100000 609,960 instr_retired:NBOGUSNTAG $ pfmon --us-c -einstr_retired:NBOGUSNTAG ~/noploop 1000000 loop=1000000 6,009,996 instr_retired:NBOGUSNTAG $ pfmon --us-c -einstr_retired:NBOGUSNTAG ~/noploop 10000000 loop=10000000 60,010,027 instr_retired:NBOGUSNTAG But when I use instr_completed, it gets more flaky. But maybe I do not undertstand what the event actually measures: $ pfmon -iinstr_completed Name : instr_completed Code : 0x7 Counters : [ 6 7 8 15 16 17 ] Desc : Instructions that have completed and retired during a clock cycle Umask : 0x01 : [NBOGUS] : Non-bogus instructions. Umask : 0x02 : [BOGUS] : Bogus instructions. Does anyone get something meaningful out of this one? > [EMAIL PROTECTED] /home/corry]$ pfmon -i global_power_events > Name : global_power_events > Code : 0x13 > counter: [ 0 1 9 10 ] > Unit-mask 0: RUNNING > Desc : Counts the time during which a processor is not stopped. > In the rewritten AMD K8 event table, I have use the rule that if an event only has one unit mask, then we implement it without a unit mask, i.e., it is collapsed with the event name. It makes it much easier to use. On AMD K8, I have encoded the umask value starting at bit position 8. On P4, you probably need to use another trick, though. -- -Stephane _______________________________________________ perfmon mailing list [email protected] http://www.hpl.hp.com/hosted/linux/mail-archives/perfmon/
