Hello Sergey -- Just to add a few comments to Stephane's.
Northbridge resources are shared across all cores in the "node" (the cores that are local to the Northbridge and communicate directly with the NB). Northbridge events measure memory controller events, crossbar events, HyperTransport(tm) events and L3 cache events. The events generally do not break out by core, i.e., these X events belong to core 0, these Y events belong to core 1, etc. They measure events due to requests, etc. across all local cores. If all cores are measuring the same NB event, the events will be counted multiple times -- not good. So, perfmon2 follows the recommended practice, which is to measure NB events on a single core belonging to a given NB. There's one potential gotcha. The core measuring the NB events cannot go into halt mode (idle) as the clock for the performance counter logic may be stopped and events are not counted. It may be necessary to keep the core awake by running a low-priority background task. More information concerning Northbridge events can be found in Section 3.12 of the BIOS and Kernel Developer's Guide (BKDG) for AMD Family 10h processors. -- pj -----Original Message----- From: stephane eranian [mailto:eran...@googlemail.com] Sent: Friday, October 30, 2009 6:59 PM To: Sergey Blagodurov Cc: perfmon2-devel@lists.sourceforge.net Subject: Re: [perfmon2] same counter values for several processes onBarcelona Sergey, On Fri, Oct 30, 2009 at 11:23 PM, Sergey Blagodurov <blagodu...@gmail.com> wrote: > Hello, > > I have the following problem while trying to gather hardware counters > on Barcelona: whenever I start several programs with the same counter > profiling on AMD Barcelona, all of the program invocations except the > first failing with conflicting monitoring session error. The problem > can be revealed with smth like that: > > $ pfmon --events=MEMORY_CONTROLLER_REQUESTS:READ_REQUESTS sleep 20 & > [1] > $ pfmon --events=MEMORY_CONTROLLER_REQUESTS:READ_REQUESTS sleep 20 & > error conflicting monitoring session exists > This is due to a constraint on all Northbridge events. The way the current perfmon code implements the restriction is to limit the number of perfmon sessions which have access to NB events to 1 per socket in system-wide and 1 global in per-thread mode. > There is no such behaviour on Intel Xeon processors. I wonder what may > cause this strange problem and are there any workarounds to it (i.e. > is it still possible to gather same counter info for several > programs/threads at the same time)? > > Thank you! > > -- > Sincerely, > > Sergey Blagodurov > ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ perfmon2-devel mailing list perfmon2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/perfmon2-devel