這是 FreeBSD-performance 目前的討論:new benchmarks. WAS: FreeBSD MySQL still WAY slower than Linux。
測試的環境是在本機上跑,主要的測試對象是 Thread Library,包括了:
- libpthread (Default)
- libpthread + LIBPTHREAD_PROCESS_SCOPE=yes
- libthr
- linuxthreads
- linuxthreads (query cache disable)
- libthr (query cache disable)
- libthr (TCP socket)
- linuxthreads (TCP socket)
這幾個測試結果沒有什麼意外,速度最快的是 libthr (即 1:1 Threading)。
另外因為上面的測試環境是打開 HTT 的情況下測出來的,所以有人建議關掉 HTT,而作者也再跑了一次,發現除了 libthr 快了一點點 (大約 2%) 以外,其他的都沒差。
再來是有人提出 FreeBSD 上的 gettimeofday()
非常花資源 (這點在 David Xu 提供的 mysql ktrace log 裡面有說到),所以有人有建議修改 kern.timecounter.hardware
(從 ACPI-fast
改成 TSC
),不過作者好像還沒看到 :p
再來是 kernel config file 裡面好像沒有用 SCHED_ULE
?
這個討論串還在跑,所以還可以看一看長輩們到底有什麼花樣可以玩...
Update:開新的討論串在討論了:mysql benchmarks。另外 super-smack 這個程式是 Sasha Pachev 發展的,後來 Jeremy Zawodny 接手 (MySQL Super Smack),現在是 Tony Bourke 在維護 (Super Smack)。
真期待看到結論,看看能不能讓 RT + mysql 再快一點。至少現在我該去把 LIBPTHREAD_PROCESS_SCOPE 開起來了...
不過我大概漏看了什麼東西,沒講 mysql 版本?(反正不是操作變因,只是想知道:p)