so.. why does mysql run so slowly?

Posted by Ian Holsman Wed, 05 Apr 2006 22:13:00 GMT

this is the output of dtrace -n 'pid$target:::entry{ @[probefunc] = count() }'

when I run mysqlslap -c 20 -i 20

  pthread_getspecific                                             365
  malloc_internal                                                 377
  my_malloc                                                       377
  free                                                            378
  malloc                                                          378
  my_wc_mb_filename                                               399
  my_no_flags_free                                                420
  strmake                                                         444
  pthread_self                                                    468
  memset                                                          582
  alloc_root                                                      630
  strmov                                                          651
  strlen                                                          655
  memcpy                                                          897
  mutex_trylock                                                   936
  my_pthread_fastmutex_lock                                       936
  mutex_lock                                                     1133
  mutex_lock_impl                                                1133
  my_utf8_uni                                                    1365
  mutex_unlock                                                   2069

I’m about to prepare a more formal analysis (and benchmark) about this. but in order for me not to compete with colm I’m going to wait until the 24th to submit it.

I switched to using sysbench as I thought there might be a bug in actual mysqlslap code, but it is also showing the same results. those being mysql runs 10x slower on the sunfire than on a linux x86-64 machine.

If you are from sun, mysql, or a apache member, and want to check out the configuration to see how I screwed up, send an email from your @sun.com/@mysql.com/@apache.org email address with a public key and I’ll mail you the IP#/account details (ian at holsman.net).

the machine is only available while I’m awake (I live in Australia so it probably means your nighttime), as I haven’t put it in a colo (until I win it of course) and my ‘server room’ is my walk in robe.

Posted in  | Tags , , ,  | 5 comments | no trackbacks

Comments

  1. Avatar Ian Holsman said 39 minutes later:

    woops.. that was from a myisam run I think.

    here is another
      mutex_get_waiters                                             14777
      mutex_reset_lock_word                                         14777
      mutex_enter_func                                              14778
      mutex_test_and_set                                            14917
      os_fast_mutex_trylock                                         14917
      btr_pcur_get_page_cur                                         15886
      btr_cur_get_page_cur                                          16539
      rec_get_nth_field                                             16887
      page_header_get_field                                         17344
      os_fast_mutex_unlock                                          17925
      mutex_trylock                                                 19555
      rec_get_status                                                22230
      ut_align_down                                                 22864
      mutex_unlock                                                  26089
      ut_align_offset                                               31485
      os_aio_array_get_nth_slot                                     32282
      rec_get_bit_field_1                                           32833
      mach_read_from_1                                              35061
      memcpy                                                        36680
      rec_offs_n_fields                                             41815
      dtype_get_prtype                                              42181
      dict_field_get_col                                            45211
      dict_col_get_type                                             46059
      dict_index_get_nth_field                                      46213
      mach_read_from_2                                              46855
      sync_array_get_nth_cell                                      250172
    

    slightly different ;-)

  2. Avatar Colm said about 4 hours later:

    Hey, you don’t have to put anything off. The T2000 we got was entirely outisde of the current competition, they decided that since my posts predated the announcement of the new rules and so on, it didn’t apply. There’s still a machine for April! (and possibly March – I don’t know).

  3. Avatar Stephen Pierzchala said about 4 hours later:

    Yah know…that set up looks strangely familiar…

    Improvised hosting is always so…individual!

    smp

  4. Avatar C.J. said 1 day later:

    (until I win it of course)

    Woah! Hold on a sec here… who’s going to win?

    Muahahhaa

  5. Avatar Brian Aker said 2 days later:

    Hi!

    I’ll drop you a piece of email with the name of someone internally in MySQL who can help you with this. I’d be curious to find out what bottlenecks you are discovering.

    Thanks!

    -Brian

Trackbacks

Use the following link to trackback from your own site:
http://feh.holsman.net/trackbacks?article_id=so-why-does-mysql-run-so-slowly&day=05&month=04&year=2006

Comments are disabled