Date: Fri, 30 Dec 2005 08:57:58 +1100 From: Michael Vince <mv@roq.com> To: freebsd-performance@freebsd.org Subject: Re: Benchmark MySQL Performance On FreeBSD And Linux Message-ID: <43B45BE6.7000401@roq.com> In-Reply-To: <3aaaa3a0512272202u715ccb4fo@mail.gmail.com> References: <20051216064615.GA41775@gslin.org> <20051216070609.GA3216@il.fontys.nl> <20051216204322.GA66409@gslin.org> <43A35A1E.3020408@samsco.org> <3aaaa3a0512221304p3a35b1ecj@mail.gmail.com> <43B0BB44.40708@roq.com> <3aaaa3a0512272202u715ccb4fo@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Chris wrote: >>Make sure your compile your MySQL dynamically which is done by default, >>if you include 'BUILD_STATIC=yes' you ruin your ability to change >>threading libs. >> >>portupgrade -N -m 'BUILD_OPTIMIZED=yes' >>/usr/ports/databases/mysql41-server >>Or upgrade >>portupgrade -R -m 'BUILD_OPTIMIZED=yes'/var/db/pkg/mysql-server-4.1.14 >> >> >>Use 'ldd' to find which threading library you are using. >> >>ldd /usr/local/libexec/mysqld >>/usr/local/libexec/mysqld: >> libz.so.3 => /lib/libz.so.3 (0x800978000) >> libwrap.so.4 => /usr/lib/libwrap.so.4 (0x800a8b000) >> libcrypt.so.3 => /lib/libcrypt.so.3 (0x800b94000) >> libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x800cad000) >> libm.so.4 => /lib/libm.so.4 (0x800ea4000) >> libpthread.so.2 => */usr/lib/libpthread.so.2* (0x800fc0000) >> libc.so.6 => /lib/libc.so.6 (0x8010eb000) >> >>Put something like this into your /etc/libmap.conf to change your >>threading library, and restart the service in question for the library >>change to take effect. >>[/usr/local/libexec/mysqld] >>libpthread.so.2 libthr.so.2 >>libpthread.so libthr.so >> >># ldd /usr/local/libexec/mysqld >>/usr/local/libexec/mysqld: >> libz.so.3 => /lib/libz.so.3 (0x800978000) >> libwrap.so.4 => /usr/lib/libwrap.so.4 (0x800a8b000) >> libcrypt.so.3 => /lib/libcrypt.so.3 (0x800b94000) >> libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x800cad000) >> libm.so.4 => /lib/libm.so.4 (0x800ea4000) >> libpthread.so.2 => */usr/lib/libthr.so.2* (0x800fc0000) >> libc.so.6 => /lib/libc.so.6 (0x8010d7000) >> >> >> >>Ok thanks just 2 more questions. >> >> > >(a) if I build dynamic there is no performance penalty? since the Makefile >states build static for performance. >(b) I have no /etc/libmap.conf it doesnt exist, so if I just create one and >enter what you say it will work? > >Chris > > Yes check the URL below http://dev.mysql.com/doc/refman/4.1/en/compile-and-link-options.html The first line of the Optimizing the MySQL Server <http://dev.mysql.com/doc/refman/4.1/en/optimizing-the-server.html> in the Compiling section says "You obtain the fastest executables when you link with |-static|." And then again further down " If you link dynamically (without |-static|), the result is 13% slower on Linux. Note that you still can use a dynamically linked MySQL library for your client applications. It is the server that is most critical for performance." It would be great if some one could do the benchmarks on FreeBSD to verify that. > (b) I have no /etc/libmap.conf it doesnt exist, so if I just create > one and enter what you say it will work? Yes, its never there by default so just create it. FYI there is a man page on libmap.conf Mike
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43B45BE6.7000401>