On Tue, 2009-06-02 at 23:53 +0900, Atsushi Ogawa wrote:
> I made a faster version of AllocSetFreeIndex for x86 architecture.
> Results of benchmark script:
> Xeon(Core architecture), RedHat EL4, gcc 3.4.6
> bytes : 4 8 16 32 64 128 256 512 1024 mix
> original: 0.780 0.780 0.820 0.870 0.930 0.970 1.030 1.080 1.130 0.950
> patched : 0.380 0.170 0.170 0.170 0.170 0.180 0.170 0.180 0.180 0.280
> The effect of the patch that I measured by oprofile is:
> - test program: pgbench -c 1 -t 50000 (fsync=off)
>
> original:
> CPU: P4 / Xeon with 2 hyper-threads, speed 2793.55 MHz (estimated)
> Counted GLOBAL_POWER_EVENTS events
> with a unit mask of 0x01 (mandatory) count 100000
> samples % symbol name
> 66854 6.6725 AllocSetAlloc
> patched:
> CPU: P4 / Xeon with 2 hyper-threads, speed 2793.55 MHz (estimated)
> Counted GLOBAL_POWER_EVENTS events
> with a unit mask of 0x01 (mandatory) count 100000
> samples % symbol name
> 47610 4.9333 AllocSetAlloc
> I think this patch improves AllocSetAlloc/AllocSetFree performance.
Looks like very good work. Much appreciated.
-- Simon Riggs www.2ndQuadrant.comPostgreSQL Training, Services and Support