To: perfctr-devel@lists.sourceforge.net Subject: perfctr-2.6.31 released Version 2.6.31 of perfctr, the Linux performance monitoring counters kernel extension, is now available at the usual place: http://user.it.uu.se/~mikpe/linux/perfctr/2.6/ With this release it should be possible to measure northbridge events on Barcelona chips. I've been able to test this on an Opteron 8354 system, thanks to some folks @ SDSC. An erratum in earlier AMD64 processors forced perfctr to limit NB events to the system-wide API. It's my understanding that this erratum is fixed in Fam10h; however, it is still the case that at most one core at a time may measure NB events. My proposal is that if a thread starts measuring NB events on Fam10h, a CPU affinity mask is enforced restricting the thread to core #0 of each processor package. Any objections or better solutions? Last minute update: perfctr's multicore detection doesn't seem to work on Fam10h, so NB events aren't forbidden in the thread-local perfctr API as they should be. I'll try to fix that as soon as possible. Version 2.6.31, 2008-01-26 - x86: Barcelona (AMD Family 10h) updates: * Correct CPU type constant to read FAM10H with trailing H. The old spelling also remains, for now. * Barcelona event selectors are 64-bit, not 32-bit as in K8. Add evntsel_high[] array to struct perfctr_cpu_control to allow passing high 32 bits of evntsels to the driver. This array overlaps the p4 control sub-struct. (Uses a GCC anonymous union, to avoid source-incompatible changes.) Currently only some Northbridge events need the high bits. * Update driver to accept and check high evntsel bits on Barcelona, and to maintain all 64 evntsel bits in PMU context switches. * Update examples/perfex/ to indicate how to also set up the high 32 evntsel bits for Barcelona (run perfex -h). - Minor coding style (mostly obsolete whitespace style) fixes. - Updated kernel support: 2.6.24, 2.6.18-53.1.6.el5 (RHEL5), 2.6.9-67.0.1.EL (RHEL4). / Mikael Pettersson