-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
At 03:44 PM 1/18/2002 -0500, you wrote: >We use mysql heavily in production with tables over 30GB. We are going >to purchase a new db server soon and the decision to be made now is >whether we should go with a 4 cpu 700-900MHz system or a 2 cpu 1.4GHz+ >system. Most of the time there is only one connection to this large >database doing large queries including joins. What I am trying to find >out is when (and how well) extra CPUs could speed up SQL operations when >there is only one client/connection. In the opinion of those who know, >which system would best serve our needs? The four slower processors, or the >two faster processors? Why? From the user manual: 9.3.1 MySQL Threads The MySQL server creates the following threads: * The TCP/IP connection thread handles all connection requests and creates a new dedicated thread to handle the authentication and and SQL query processing for each connection. * On Windows NT there is a named pipe handler thread that does the same work as the TCP/IP connection thread on named pipe connect requests. * The signal thread handles all signals. This thread also normally handles alarms and calls process_alarm() to force timeouts on connections that have been idle too long. * If mysqld is compiled with -DUSE_ALARM_THREAD, a dedicated thread that handles alarms is created. This is only used on some systems where there are problems with sigwait() or if one wants to use the thr_alarm() code in ones application without a dedicated signal handling thread. * If one uses the --flush_time=# option, a dedicated thread is created to flush all tables at the given interval. * Every connection has its own thread. * Every different table on which one uses INSERT DELAYED gets its own thread. * If you use --master-host, a slave replication thread will be started to read and apply updates from the master. mysqladmin processlist only shows the connection, INSERT DELAYED, and replication threads. As you are looking at having only one connection, I would say it is likely that 2 1.4 Ghz CPUs will give you better results than 4 900 Mhz CPUs, all other things being equal. Also, remember that operating systems don't scale linearly in the best of cases, though Linux scales well up to 4 CPUs. Someone more knowledgable than I will speak up, I'm sure, but I'd focus on dual CPUs with more memory rather than going for a 4 CPU machine. Also, high speed disks would be nice, too. In fact, I'd say more likely you'll see more performance with ONE CPU with more memory and faster drives than you would with a 4 CPU machine limited in RAM and hard drive speed. -----BEGIN PGP SIGNATURE----- Version: PGP Personal Security 7.0.3 iQA/AwUBPEiLrgAttZAy2w6WEQIYKgCghq00GE1/2TXOguN6FkxacH9gumMAn0Vi eUcuISI6S/W/h0KtvDeAliuy =gmoV -----END PGP SIGNATURE----- --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php