All of lore.kernel.org
 help / color / mirror / Atom feed
From: William Cohen <wcohen@redhat.com>
To: eranian@hpl.hp.com
Cc: perfmon@napali.hpl.hp.com, oprofile-list@lists.sourceforge.net,
	linux-ia64@vger.kernel.org, linux-kernel@vger.kernel.org,
	perfctr-devel@lists.sourceforge.net
Subject: Re: [perfmon] 2.6.17.1 new perfmon code base, libpfm, pfmon available
Date: Fri, 23 Jun 2006 21:13:47 +0000	[thread overview]
Message-ID: <449C598B.7070803@redhat.com> (raw)
In-Reply-To: <20060621142447.GA29389@frankl.hpl.hp.com>

Hi Stephane,

Some quick questions about the current perfmon code.


The athlon has very similar hw to the amd64 and there is now 32-bit
x86-64 support. Wouldn't it make sense to move perfmon_amd.c to i386
and have it work in the same way as perfmon_p4.c does currently for p4
and em64t?

Could the 32-bit and 64-bit code be combined in a manner similar to
oprofile and avoid duplication between perfmon_em64t_pebs.c and
perfmon_p4_pebs.c?  pfm_{p4|em64}_ds_area and
pfm_{p4|em64t}_pebs_sample_entry have differences due to the upgrade
from 32 to 64 bit values.

Why isn't Intel family 0xf model 3 not supported?
	Model 1,2, 4, and 5 are supported.
	Model 3 Pentium4 isn't that different is it?

Why the following patch in the code and array using this constant in
sys_pfm_write_pmcs and sys_pfm_write_pmds? The the p4/em64t certainly
has more registers than that.

--- linux-2.6.17.1.old/include/asm-i386/perfmon.h	2006-06-21 
05:19:04.000000000 -0700
+++ linux-2.6.17.1/include/asm-i386/perfmon.h	2006-06-21 
04:22:51.000000000 -0700
@@ -18,6 +18,14 @@

  #ifdef __KERNEL__

+#ifdef CONFIG_4KSTACKS
+#define PFM_ARCH_PMD_ARG	2
+#define PFM_ARCH_PMC_ARG	2
+#else
+#define PFM_ARCH_PMD_ARG	4
+#define PFM_ARCH_PMC_ARG	4
+#endif
+
  #include <asm/desc.h>
  #include <asm/apic.h>


What is the purpose of PFM_MAX_XTRA_PMCS and PFM_MAX_XTRA_PMDS? Are
they used for anything other than increasing the size of PFM_MAX_PMCS
and PFM_MAX_PMDS?


-Will

WARNING: multiple messages have this Message-ID (diff)
From: William Cohen <wcohen@redhat.com>
To: eranian@hpl.hp.com
Cc: perfmon@napali.hpl.hp.com, oprofile-list@lists.sourceforge.net,
	linux-ia64@vger.kernel.org, linux-kernel@vger.kernel.org,
	perfctr-devel@lists.sourceforge.net
Subject: Re: [perfmon] 2.6.17.1 new perfmon code base, libpfm, pfmon available
Date: Fri, 23 Jun 2006 17:13:47 -0400	[thread overview]
Message-ID: <449C598B.7070803@redhat.com> (raw)
In-Reply-To: <20060621142447.GA29389@frankl.hpl.hp.com>

Hi Stephane,

Some quick questions about the current perfmon code.


The athlon has very similar hw to the amd64 and there is now 32-bit
x86-64 support. Wouldn't it make sense to move perfmon_amd.c to i386
and have it work in the same way as perfmon_p4.c does currently for p4
and em64t?

Could the 32-bit and 64-bit code be combined in a manner similar to
oprofile and avoid duplication between perfmon_em64t_pebs.c and
perfmon_p4_pebs.c?  pfm_{p4|em64}_ds_area and
pfm_{p4|em64t}_pebs_sample_entry have differences due to the upgrade
from 32 to 64 bit values.

Why isn't Intel family 0xf model 3 not supported?
	Model 1,2, 4, and 5 are supported.
	Model 3 Pentium4 isn't that different is it?

Why the following patch in the code and array using this constant in
sys_pfm_write_pmcs and sys_pfm_write_pmds? The the p4/em64t certainly
has more registers than that.

--- linux-2.6.17.1.old/include/asm-i386/perfmon.h	2006-06-21 
05:19:04.000000000 -0700
+++ linux-2.6.17.1/include/asm-i386/perfmon.h	2006-06-21 
04:22:51.000000000 -0700
@@ -18,6 +18,14 @@

  #ifdef __KERNEL__

+#ifdef CONFIG_4KSTACKS
+#define PFM_ARCH_PMD_ARG	2
+#define PFM_ARCH_PMC_ARG	2
+#else
+#define PFM_ARCH_PMD_ARG	4
+#define PFM_ARCH_PMC_ARG	4
+#endif
+
  #include <asm/desc.h>
  #include <asm/apic.h>


What is the purpose of PFM_MAX_XTRA_PMCS and PFM_MAX_XTRA_PMDS? Are
they used for anything other than increasing the size of PFM_MAX_PMCS
and PFM_MAX_PMDS?


-Will

  reply	other threads:[~2006-06-23 21:13 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-21 14:24 2.6.17.1 new perfmon code base, libpfm, pfmon available Stephane Eranian
2006-06-21 14:24 ` Stephane Eranian
2006-06-23 21:13 ` William Cohen [this message]
2006-06-23 21:13   ` [perfmon] " William Cohen
2006-06-23 21:23   ` [Perfctr-devel] " Stephane Eranian
2006-06-23 21:23     ` Stephane Eranian
2006-06-26 17:10     ` [Perfctr-devel] [perfmon] 2.6.17.1 new perfmon code base, libpfm, William Cohen
2006-06-26 17:10       ` [Perfctr-devel] [perfmon] 2.6.17.1 new perfmon code base, libpfm, pfmon available William Cohen
2006-06-26 17:33 ` Chuck Ebbert
2006-06-26 17:33   ` Chuck Ebbert
2006-06-26 19:32   ` Grant Grundler
2006-06-26 19:32     ` Grant Grundler
2006-06-26 22:37   ` Stephane Eranian
2006-06-26 22:37     ` Stephane Eranian
2006-06-27  5:57 ` Chuck Ebbert
2006-06-27  5:57   ` Chuck Ebbert
2006-06-27 14:32   ` Stephane Eranian
2006-06-27 14:32     ` Stephane Eranian
2006-06-27 16:51     ` Grant Grundler
2006-06-27 16:51       ` Grant Grundler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=449C598B.7070803@redhat.com \
    --to=wcohen@redhat.com \
    --cc=eranian@hpl.hp.com \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oprofile-list@lists.sourceforge.net \
    --cc=perfctr-devel@lists.sourceforge.net \
    --cc=perfmon@napali.hpl.hp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.