linux/arch
Suravee Suthikulpanit f125be1469 oprofile/x86: implement lsfr pseudo-random number generator for IBS
This patch implements a linear feedback shift register (LFSR) for
pseudo-random number generation for IBS.

For IBS measurements it would be good to minimize memory traffic in
the interrupt handler since every access pollutes the data
caches. Computing a maximal period LFSR just needs shifts and ORs.

The LFSR method is good enough to randomize the ops at low
overhead. 16 pseudo-random bits are enough for the implementation and
it doesn't matter that the pattern repeats with a fairly short
cycle. It only needs to break up (hard) periodic sampling behavior.

The logic was designed by Paul Drongowski.

Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Signed-off-by: Robert Richter <robert.richter@amd.com>
2010-02-26 15:14:02 +01:00
..
alpha alpha: cpumask_of_node() should handle -1 as a node 2010-01-14 13:21:35 -05:00
arm OMAP: hsmmc: fix memory leak 2010-02-10 09:20:33 -08:00
avr32 avr32: clean up memory allocation in at32_add_device_mci 2009-12-28 12:33:00 +01:00
blackfin blackfin,kgdb: Do not put PC in gdb_regs into retx. 2010-01-07 11:58:37 -06:00
cris Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
frv FDPIC: Respect PT_GNU_STACK exec protection markings when creating NOMMU stack 2010-01-06 18:16:02 -08:00
h8300 Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
ia64 [IA64] move fnptr definition inside #ifdef __KERNEL__ 2010-01-08 10:53:28 -08:00
m32r elf: kill USE_ELF_CORE_DUMP 2009-12-16 07:20:12 -08:00
m68k m68knommu: fix definitions of __pa() and __va() 2010-01-12 20:51:45 -08:00
m68knommu m68knommu: fix invalid flags on coldfire pit clocksource 2010-01-16 12:15:38 -08:00
microblaze microblaze: Invalidate dcache before enabling it 2010-02-08 11:39:18 +01:00
mips MIPS: Don't probe reserved EntryHi bits. 2010-02-10 22:15:46 +01:00
mn10300 mn10300: update the ASB2303 defconfig 2010-01-11 09:34:10 -08:00
parisc parisc: fix tracing of signals 2010-02-12 08:51:58 -08:00
powerpc powerpc: Fix address masking bug in hpte_need_flush() 2010-02-10 13:58:06 +11:00
s390 [S390] Fix struct _lowcore layout. 2010-02-09 09:46:23 +01:00
score mm: make totalhigh_pages unsigned long 2010-01-11 09:34:03 -08:00
sh sh: Remove superfluous setup_frame_reg call 2010-02-08 10:47:11 +09:00
sparc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2010-02-11 14:00:27 -08:00
um Unrot uml mconsole a bit 2010-01-14 09:05:26 -05:00
x86 oprofile/x86: implement lsfr pseudo-random number generator for IBS 2010-02-26 15:14:02 +01:00
xtensa Merge branch 'for-33' of git://repo.or.cz/linux-kbuild 2009-12-17 07:23:42 -08:00
.gitignore
Kconfig oprofile/x86: remove OPROFILE_IBS config option 2010-02-26 15:13:55 +01:00