Search Postgresql Archives

Re: Some pgbench results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Just Someone wrote:
> 
> Initialized the data with: pgbench -i -s 100
> Test runs: pgbench -s 100 -t 10000 -c 20
> I did 20 runs, removed the first 3 runs from each sample to account
> for stabilization.

Did you re-initialize the test pgbench database between runs?
I get weird results otherwise since some integers gets overflowed in the
test (it doesn't complete the full 10000 transactions after the first run).

> Here are the results in tps without connection
> establishing:
> 
> FS:       JFS     XFS     EXT3
> Avg:     462      425       319
> Stdev:  104        74       106
> 

Could you please tell me what stripe size you have on the raid system?
Could you also share the mkfs and mount options on each filesystem you
tried?

I ran some tests on an somewhat similar system:
A supermicro H8SSL-i-B motherboard with one dual core opteron 165 with
4gb of memory, debian sarge amd64 (current stable) but with a pristine
kernel.org 2.6.16 kernel (there's no debian patches or packages yet).

It has a 3ware 9550 + BBU sata raid card with 6 disks in a raid 10
configuration with 256kb stripe size. I think this results in about
200mb/s raw read performance and about 155mb/s raw write performance (as
in tested with dd:ing a 10gb file back and forth).
I had no separate WAL device/partition, only tweaked postgresql.conf.

I get about 520-530 tps with your pgbench parameters on ext3 but very
poor (order of magnitude) performance on xfs (that's why I ask of your
mkfs parameters).

A hint on using a raided ext3 system is to use whole block device
instead of partitions to align the data better and use data=journal with
a big journal. This might seem counter-productive at first (it did to
me) but I increased my throughput a lot when using this.

My filesystem parameters are calculated like this:
stripe=256 # <- 256k raid stripe size
bsize=4 # 4k blocksize
bsizeb=$(( $bsize * 1024 )) # in bytes
stride=$(( $stripe / $bsize ))

mke2fs -b $bsizeb -j -J size=400 -m 1 -O sparse_super \
  -T largefile4 -E stride=$stride /dev/sdb

Mounted with: mount -t ext3 -o data=journal,noatime /dev/sdb /mnt/test8

I'm a little surprised that I can get more pgbench performance out of my
system since you're using 10K scsi disks. Please try the above settings
and see if it helps you...

I've not run so many tests yet, I'll do some more after the weekend...

Regards,
Magnus



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux