Hi Kevin, Here's a question, one that has stumped the PAPI team for quite a long time. Have you been able to get reasonable counts for L1 Dcache misses? This is a replay event, but even with the IA32 docs we've never been able to get numbers that 'make sense' out of it. L2 is no problem...
Phil On Thu, 2006-08-24 at 08:44 -0700, Stephane Eranian wrote: > 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. > _______________________________________________ perfmon mailing list [email protected] http://www.hpl.hp.com/hosted/linux/mail-archives/perfmon/
