Why is MySQL nearly twice as fast on Linux/AMD64 Vs.FreeBSD/AMD64?

Steven Hartland killing at multiplay.co.uk
Thu May 20 21:27:54 PDT 2004


Ok its IO (netcard drivers).
TBH after looking at this benchmarker I'd say its pretty useless
its testing packet throughput / rpc time not the database.

Typical db load is not all insert statements its not even mostly
insert statements its selects. Saying that there's some startling results
below.
Exec summary:
FreeBSD 5.1.2 (i386)
local: 22834.872368421 records per second
fxp 100Mb: 3854.06863517 records per second
bge 100Mb: 2501.66999862 records per second
bge 1Gb: 3281.65229885 records per second

Suse 9.0 2.4.21 (i386)
local: 20590.4046296 records per second.
fxp(eepro100) 100Mb: 3983.5561828 records per second
bge(tg3) 100Mb: 3964.27682927 records per second
bge(tg3) 1Gb: 3890.86629073 records per second

Windows XP
local: 12510.2486842 records per second
fxp 100Mb: 1899.47114625 records per second
bge 100Mb: 3888.25416667 records per second
bge 1Gb: 3944.39166667 records per second


The rest of the details:

same machine but with an fxp not bge
interrupts / s hitting 4K:
Generating 500000 records...
Creation of 500000 records took 127 seconds.
Average of 3937.00787402 records per second.
Creating records for 10 seconds...
Created 37323 records in 10 seconds.
Average of 3732.3 records per second.
Creating random 50000 md5 hash records.
Creation of 50000 random md5 hash inserts took 12 seconds.
Average of 4166.66666667 records per second.
Creating random md5 hash records for 10 seconds...
Created 35803 random records in 10 seconds.
Average of 3580.3 records per second.

Your databases overall average score is 3854.06863517 records per second.

with link0 set interrupts / s 2K:
fxp0: Microcode loaded, int_delay: 1000 usec  bundle_max: 0
Generating 500000 records...
Creation of 500000 records took 250 seconds.
Average of 2000 records per second.
Creating records for 10 seconds...
Created 16862 records in 10 seconds.
Average of 1686.2 records per second.
Creating random 50000 md5 hash records.
Creation of 50000 random md5 hash inserts took 25 seconds.
Average of 2000 records per second.
Creating random md5 hash records for 10 seconds...
Created 17961 random records in 10 seconds.
Average of 1796.1 records per second.

Your databases overall average score is 1870.575 records per second.

Without link0 polling enabled 1000HZ
The specified CGI application exceeded the allowed time for processing.
The server has deleted the process. So slow :P

And out of total curiosity Windows XP fxp 100Mb:
Generating 500000 records...
Creation of 500000 records took 253 seconds.
Average of 1976.28458498 records per second.
Creating records for 10 seconds...
Created 17879 records in 10 seconds.
Average of 1787.9 records per second.
Creating random 50000 md5 hash records.
Creation of 50000 random md5 hash inserts took 25 seconds.
Average of 2000 records per second.
Creating random md5 hash records for 10 seconds...
Created 18337 random records in 10 seconds.
Average of 1833.7 records per second.

Your databases overall average score is 1899.47114625 records per second.

Windows XP bge 100Mb:
Generating 500000 records...
Creation of 500000 records took 128 seconds.
Average of 3906.25 records per second.
Creating records for 10 seconds...
Created 37393 records in 10 seconds.
Average of 3739.3 records per second.
Creating random 50000 md5 hash records.
Creation of 50000 random md5 hash inserts took 12 seconds.
Average of 4166.66666667 records per second.
Creating random md5 hash records for 10 seconds...
Created 37408 random records in 10 seconds.
Average of 3740.8 records per second.

Your databases overall average score is 3888.25416667 records per second.

Windows XP bge 1Gb:
Generating 500000 records...
Creation of 500000 records took 125 seconds.
Average of 4000 records per second.
Creating records for 10 seconds...
Created 38559 records in 10 seconds.
Average of 3855.9 records per second.
Creating random 50000 md5 hash records.
Creation of 50000 random md5 hash inserts took 12 seconds.
Average of 4166.66666667 records per second.
Creating random md5 hash records for 10 seconds...
Created 37550 random records in 10 seconds.
Average of 3755 records per second.

Your databases overall average score is 3944.39166667 records per second.

and locally:
Generating 500000 records...
Creation of 500000 records took 38 seconds.
Average of 13157.8947368 records per second.
Creating records for 10 seconds...
Created 123769 records in 10 seconds.
Average of 12376.9 records per second.
Creating random 50000 md5 hash records.
Creation of 50000 random md5 hash inserts took 4 seconds.
Average of 12500 records per second.
Creating random md5 hash records for 10 seconds...
Created 120062 random records in 10 seconds.
Average of 12006.2 records per second.

Your databases overall average score is 12510.2486842 records per second.


================================================
This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. 

In the event of misdirection, illegible or incomplete transmission please telephone (023) 8024 3137
or return the E.mail to postmaster at multiplay.co.uk.



More information about the freebsd-amd64 mailing list