Re: New to PostgreSQL, performance considerations - Mailing list pgsql-performance

From Chris Browne
Subject Re: New to PostgreSQL, performance considerations
Date
Msg-id 60psaq5t94.fsf@dba2.int.libertyrms.com
Whole thread Raw
In response to New to PostgreSQL, performance considerations  ("Daniel van Ham Colchete" <daniel.colchete@gmail.com>)
Responses Re: New to PostgreSQL, performance considerations
Re: New to PostgreSQL, performance considerations
List pgsql-performance
daniel.colchete@gmail.com ("Daniel van Ham Colchete") writes:
> You are right Christopher.
>
> Okay. Let's solve this matter.
>
> What PostgreSQL benchmark software should I use???

pgbench is one option.

There's a TPC-W at pgFoundry
(<http://pgfoundry.org/projects/tpc-w-php/>).

There's the Open Source Database Benchmark.
(<http://osdb.sourceforge.net/>)

Those are three reasonable options.

> I'll test PostgreSQL 8.1 on a Fedora Core 6 and on a Gentoo. I'll get
> the same version FC6 uses and install it at my Gentoo. I'll use the
> same hardware (diferent partitions to each).

Wrong approach.  You'll be comparing apples to oranges, because Gentoo
and Fedora pluck sources from different points in the source code
stream.

In order to prove what you want to prove, you need to run the
benchmarks all on Gentoo, where you run with 4 categorizations:

 1.  Where you run PostgreSQL and GLIBC without any processor-specific
     optimizations

 2.  Where you run PostgreSQL and GLIBC with all relevant
     processor-specific optimizations

 3.  Where you run PostgreSQL with, and GLIBC without
     processor-specific optimizations

 4.  Where you run PostgreSQL without, and GLIBC with processor-specific
     optimizations

That would allow one to clearly distinguish which optimizations are
particularly relevant.

> I'm not saying that Gentoo is faster than FC6. I just want to prove
> that if you compile your software to make better use of your
> processor, it will run faster.
>
> It might take a few days because I'm pretty busy right now at my
> job.

I expect that you'll discover, if you actually do these tests, that
this belief is fairly much nonsense.

- Modern CPUs do a huge amount of on-CPU self-tuning.

- CPU features that could have a material effect tend to be unusable
  when compiling general purpose libraries and applications.  GCC
  doesn't generate MMX-like instructions.

- Database application performance tends to be I/O driven.

- When database application performance *isn't* I/O driven, it is
  likely to be driven by cache management, which compiler options
  won't affect.
--
output = reverse("ofni.secnanifxunil" "@" "enworbbc")
http://linuxdatabases.info/info/sgml.html
"very few people approach me in real life and insist on proving they
are drooling idiots."  -- Erik Naggum, comp.lang.lisp

pgsql-performance by date:

Previous
From: Tom Lane
Date:
Subject: Re: Low throughput of binary inserts from windows to linux
Next
From: Tom Lane
Date:
Subject: Re: Postgresql - Threshold value.