Hi Atle, We are using Asianux 2.0 (RHEL 4 compatible, linux kernel 2.6.9) MySQL is the latest one. 5.0.x
Thanks in advance, Hiro From: Atle Veka <[EMAIL PROTECTED]> Subject: Re: MySQL and Hyperthreading Date: Thu, 2 Mar 2006 10:12:09 -0800 (PST) Message-ID: <[EMAIL PROTECTED]> > Hi Hiro, we have noticed severe performance loss with HT enabled under > FreeBSD but not with MySQL. However, we could be having problems with > MySQL as well without knowing as we haven't done any testing as it is > operating fine. What operating system are you running? > > We now disable HT on all servers wherever possible.. > > > Atle > - > Flying Crocodile Inc, Unix Systems Administrator > > On Thu, 2 Mar 2006, Hiro Yoshioka wrote: > > > Hi, > > > > We found a severe performance degradation when Hyperthreading is on > > and thread_concurrency=20. > > > > We are using OSDL DBT-1 as the benchmark and got about 200 to 250 > > BT (bogotransactions per second) HT is OFF normal case but 30 to > > 50 BT on HT is ON. > > > > innodb_thread_concurrency=20 > > > > So we did profile (using oprofile tool) and got the following profiling > > data. My impression is that mutex_spin_wait (and ut_delay) is > > something wrong if HT is ON. (Spin-wait loop is too expensive if it is > > hyperthreading.) > > > > I added the following code but it does not help it. > > > > $ diff -pu ut0ut.c.orig ut0ut.c > > --- ut0ut.c.orig 2005-10-17 10:27:43.000000000 +0900 > > +++ ut0ut.c 2006-02-28 11:59:16.777840496 +0900 > > @@ -290,6 +290,13 @@ ut_delay( > > j = 0; > > > > for (i = 0; i < delay * 50; i++) { > > + /* When executing a spin-wait loop on the Hyper-Threading > > + processor, the processor can suffer a severe performance > > + penalty. The pause instruction provides a hint to the > > + processor. Please refer IA-32 Intel Architecture > > + Software Developers Manual, Vol 3. */ > > + __asm__ __volatile__( > > + "pause; \n"); > > j += i; > > } > > > > What do you think? Is there any hints? > > > > HT is OFF > > CPU: P4 / Xeon, speed 2793.26 MHz (estimated) > > Counted GLOBAL_POWER_EVENTS events (time during which processor is not > > stopped) with a unit mask of 0x01 (mandatory) > > count 100000 > > samples % image name app name symbol > > name > > 13159082 8.8445 libc-2.3.4.so libc-2.3.4.so memcpy > > 12565549 8.4456 libpthread-2.3.4.so libpthread-2.3.4.so > > pthread_mutex_trylock > > 11387363 7.6537 mysqld mysqld > > rec_get_offsets_func > > 9631916 6.4738 libpthread-2.3.4.so libpthread-2.3.4.so > > pthread_mutex_unlock > > 8794484 5.9110 mysqld mysqld > > btr_search_guess_on_hash > > 4949248 3.3265 mysqld mysqld > > row_search_for_mysql > > 4022481 2.7036 mysqld mysqld ut_delay > > 3754265 2.5233 mysqld mysqld > > cmp_dtuple_rec_with_match > > 2535190 1.7040 mysqld mysqld > > row_sel_store_mysql_rec > > 2520957 1.6944 mysqld mysqld > > btr_cur_search_to_nth_level > > > > HT is ON > > CPU: P4 / Xeon with 2 hyper-threads, speed 2793.26 MHz (estimated) > > Counted GLOBAL_POWER_EVENTS events (time during which processor is not > > stopped) with a unit mask of 0x01 (mandatory) > > count 100000 > > samples % image name app name symbol > > name > > 53221317 21.4225 libpthread-2.3.4.so libpthread-2.3.4.so > > pthread_mutex_lock > > 25743323 10.3621 mysqld mysqld ut_delay > > 12345146 4.9691 vmlinux vmlinux do_futex > > 12066038 4.8568 mysqld mysqld > > mutex_spin_wait > > 10395391 4.1843 vmlinux vmlinux > > LKST_ETYPE_PROCESS_SCHED_ENTER_HEADER_hook > > 9247281 3.7222 libpthread-2.3.4.so libpthread-2.3.4.so > > pthread_mutex_unlock > > 7407229 2.9815 vmlinux vmlinux > > futex_requeue > > 5921454 2.3835 libpthread-2.3.4.so libpthread-2.3.4.so > > pthread_mutex_trylock > > 5484279 2.2075 vmlinux vmlinux > > LKST_ETYPE_PROCESS_WAKEUP_HEADER_hook > > 4846067 1.9506 vmlinux vmlinux > > __switch_to > > > > Regards, > > Hiro > > > > -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]