В статье "Using MySQL to benchmark OS performance (http://software.newsforge.com/article.pl?sid=04/12/27/1238216)" рассматривается рациональность использования MySQL к качестве средства для измерения производительности (для тестирования выбраны утилиты SysBench (http://sysbench.sourceforge.net/) и Super Smack (http://jeremy.zawodny.com/mysql/super-smack/)). Приводятся рекомендации по сборке и оптимизации MySQL для разных операционных систем, определяется общая стратегия проведения эксперимента.
Во второй части статьи "Comparing MySQL performance (http://software.newsforge.com/article.pl?sid=04/12/27/1243207)" демонстрируются графики отражающих производительнось MySQL на платформах (с включенным SMP и без) FreeBSD 4.11, FreeBSD 5.3, NetBSD 2.0, Linux 2.6, Linux 2.4, Solaris 10 x86 (build 69), OpenBSD 3.6.
Кратко о результатах:
- В конфигурации без SMP, в тесте select-key, победу одержала NetBSD (в других тестах она часто была на последних местах), затем Linux 2.6, Linux 2.4, OpenBSD и худшие результаты продемонстрировала FreeBSD.
- Тот же select-key тест, но при сборке с поддержкой SMP поменял расстановку сил - Linux 2.6, Linux 2.4, FreeBSD 5.3 (KSE), NetBSD 2.0.
- В тесте update-select результаты мало отличались от "select-key" за исключением того, что в SMP конфигурации FreeBSD 5.3 (KSE) оказался на предпоследнем месте.
- Тест SysBench (1 миллион строк) без SMP: Linux 2.4, Linux 2.6, Solaris 10, FreeBSD 4.11 (LT), остальные заметно отстают (далее отстающих не упоминаю).
- Тест SysBench (1 миллион строк) с SMP: Linux 2.6, Linux 2.4, Solaris 10, FreeBSD 4.11 (LT).
- Тест SysBench (10 миллионов строк) без SMP: Linux 2.4, Linux 2.6, Solaris 10, далее вровень идут FreeBSD 4.11 (LT), FreeBSD 5.3 (KSE) и FreeBSD 5.3 (LT).
- Тест SysBench (10 миллионов строк) с SMP - результаты почти совпадают с тестом без SMP.
Итог: Приемлемую производительность показали платформы: Linux 2.6, Linux 2.4, Solaris 10, FreeBSD 4.11 (linuxthreads) и FreeBSD 5.3 (KSE).
Заметки по настройке и конфигурации:
- Настройки MySQL 4.0.22 (my.cnf):
<ul>
- innodb_buffer_pool_size=256M
- innodb_log_file_size=128M
- innodb_log_buffer_size=8M
- innodb_flush_log_at_trx_commit=1
</ul>
- NetBSD и FreeBSD:
<ul>
- options MAXDSIZ="(896*1024*1024)"
- options MAXSSIZ="(896*1024*1024)"
- options DFLDSIZ="(896*1024*1024)"
</ul>
- Под FreeBSD 5.3 MySQL тестировался как с использованием KSE, так и linuxthreads.
- Под FreeBSD 4.11 - ibc_r и linuxthreads.
- MySQL под Linux тестировался с ядрами 2.4 и 2.6 (NPTL треды), в качестве файловой системы выбрана ReiserFS 3.
URL: http://software.newsforge.com/article.pl?sid=04/12/27/1243207
Новость: http://www.opennet.me/opennews/art.shtml?num=5041