Date: Fri, 28 Oct 2005 19:24:35 +1000 From: Michael VInce <mv@roq.com> To: Marian Hettwer <MH@kernel32.de> Cc: current@freebsd.org Subject: Re: MySQL Performance 6.0rc1 Message-ID: <4361EE53.80603@roq.com> In-Reply-To: <4361DDBB.4060903@roq.com> References: <435F48DA.6060009@kernel32.de> <20051026105411.L32255@fledge.watson.org> <435F6B01.5020003@kernel32.de> <4361DDBB.4060903@roq.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Michael VInce wrote: > Marian Hettwer wrote: > >> Hi Robert, >> >> Robert Watson wrote: >> >>> >>> On Wed, 26 Oct 2005, Marian Hettwer wrote: >>> >>>> I'm using RC1 on some of my test servers and workstations. So far, >>>> it runs very good (as in stable and fast) :) However, I thought of >>>> doing a small benchmark of MySQL in comparison to Linux 2.6.8 >>>> (Debian Sarge) and the results are kinda... shocking. >>>> >>>> On FreeBSD I took a pretty much generic kernel, I just removed >>>> debugging options, added SMP and changed the scheduler from BSD to >>>> ULE. I used super-smack to do a select-key test. MySQL 4.1 was >>>> build from ports with BUILD_OPTIMIZED and BUILD_STATIC >>> >>> >>> >>> >>> Could you: >>> >>> - Switch back to 4BSD >>> >> yep. >> by the way, back in the days of FreeBSD 4.x and 5.x, after I did a >> config MYKERNEL, it doesn't said I need to do a "make cleandepend" >> before doing a "make depend"... why that? Seems like this additional >> step in compiling the Kernel is around since 6-CURRENT, right? >> >> Here we go with a super-smack with 4BSD (but unchanged libmap.conf)... >> Kernel is apart from scheduler still the same like the on uploaded at >> http://unixoid.de/rabauke/freebsd/ >> I did the select-smack 4 times. This is now: 4BSD, MySQL 4.1.14, >> BUILD_STATIC, BUILD_OPTIMIZED: >> >> select_index 200000 2 0 3776.34 >> select_index 200000 2 0 3802.04 >> select_index 200000 2 0 3809.38 >> select_index 200000 2 0 3796.41 >> >> Numbers are quite the same with 4BSD... >> >> >>> - Use libmap to configure the mysql server to use libthr instead of >>> libpthread >>> >> uh. Last time I fiddled around with libmap.conf was back in FreeBSD >> 5.1 ... could you enlighten me a wee bit in regards to libmap.conf ? :) >> If not, I'll stress google a bit and hopefully find something useful... >> >> >>> And see what that does to performance using otherwise identical >>> configurations? >>> >> my.cnf is pretty much my-medium.cnf on Debian and FreeBSD. Although, >> Debian has MySQL 4.1.11 and FreeBSD Ports has MySQL 4.1.14. >> As mentioned before, this benchmark here is a quick shot. However, >> the difference shouldn't be _that_ large (3600 vs. 14000). >> >> > I have run the exact same test and have had much higher benchmarks > (close to double) using my-large.cnf or my-huge.cnf. > > I am able to get 23,626 compared to your 3,800 on the 5.4 and I am > sure with out a doubt I could get higher on 6.0. > > The most important thing to remember about this benchmark is that its > not really a good test for MySQL performance for a lot of database > setups as its testing many queries at the same time performance, the > services I run largely have only 1 or maybe 2 connected constantly > querying clients. So its much more important for a single query to > just be able to get its data fast more them having 50 different > clients doing a queries at the same time for me and a lot of other db > setups out there. > > Here is a copy and paste of a post I did a while ago > > I compiled 4.0 MySQL with some optimizations > portupgrade -RN -m 'BUILD_STATIC=yes BUILD_OPTIMIZED=yes' > /usr/ports/databases/mysql40-server/ > > Copied the default large my.cnf profile cp > /usr/local/share/mysql/my-large.cnf /var/db/mysql/my.cnf > > # super-smack /usr/share/smacks/select-key.smack 50 1000 > Query Barrel Report for client smacker1 > connect: max=44ms min=11ms avg= 20ms from 50 clients > Query_type num_queries max_time min_time q_per_s > select_index 100000 3 0 23626.76 > > If I delete the /var/db/mysql/my.cnf and restart mysql so I get > default configuration, I get 13398.76 > # super-smack /usr/share/smacks/select-key.smack 50 1000 > Query Barrel Report for client smacker1 > connect: max=29ms min=7ms avg= 17ms from 50 clients > Query_type num_queries max_time min_time q_per_s > select_index 100000 7 0 13398.76 > > > Mike I realized I read your email wrong and noticed you used 10 clients and 200,000 queries, I have re-run the test and I scored 24,138 this is on a 4.1 MySQL install, to me it seems like there is something really wrong with your box. This is a Dual Pentium 4 box on 6.0RC1 generic SMP kernel. # super-smack /usr/share/smacks/select-key.smack 10 10000 Query Barrel Report for client smacker1 connect: max=4ms min=2ms avg= 2ms from 10 clients Query_type num_queries max_time min_time q_per_s select_index 200000 0 0 24138.77 My results from timer.c null function: 0.00339 getpid(): 0.29227 time(): 1.14151 gettimeofday(): 1.14168
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4361EE53.80603>