DragonFly BSD
DragonFly kernel List (threaded) for 2011-02
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: HyperThreading

From: Saman Barghi <saman.b@xxxxxxxxx>
Date: Fri, 18 Feb 2011 15:48:23 -0500

Could you try -master? There has been fairly substantial work since the 2.8 release; all of the tokens in 2.8 are still taking the MP lock as a precaution. That is no longer the case in master. The process token has been broken up fairly dramatically in master as well, so I expect to see different results.
Sorry, I am not following, by master you mean the master branch !?

Can you give us a bit more information about the h/w and configuration? In Kris Kennaway's tests, he was seeing FreeBSD 7 sustain 8 times the number of transactions you're reporting for 8.1, and that was for hardware that is three or four years old at this point.

I see, good point. The machine I am testing on  is a  4 core xeon with 2GB of RAM, and I it is  2 to 3 years old as well (The machine Kris were using was a "2.0Ghz 8-core amd64 system with 16GB of RAM", so as it has twice the number of cores and 8 times more memory than what I have here, I think the results are fair for number of transactions). I might be able to re run the tests on another machine if I get lucky. MySQL configuration is exactly the same as what Kris used (http://people.freebsd.org/~kris/scaling/my.cnf), I am using MySQL 5.0.91. Here is the sysbench command :

sysbench --test=oltp --num-threads=${i} --mysql-user=root --max-time=120 --max-requests=0 --oltp-read- run

Also, I am not sure if Kris is talking about queries/sec or transactions/sec, since he used both of them in two different graphs he presented. What I presented is the number of transactions as reported by sysbench, however the total number of queries are much more than this, take a look at this: http://www.cs.uwaterloo.ca/~sbarghi/bench/queries1.jpg
Also, last I tried sysbench/OLTP with MySQL on dfly, I saw MySQL making many 256K allocations, which fall back to mmap() in our system. mmap() acquires the VM token, so I expected to see a much more dramatic falloff than you saw.
I will double check if everything is working properly and there is no mistake in configuration of both machines. Do you remember which version of MySQL you were using ?and What is the best way of profiling in DragonFly ?!

I guess I wasn't clear earlier, the results on my graph were SMP; the UP lines were not present; the results were from very early in the 2.8 cycle, but I don't have the exact rev handy.
Actually you were clear, I read it the other way :).
Yes --

was the commit that reworked the token contention path.This was not in 2.8, but is in master. Matt has seen improvements from in on a 48-core system he runs; I don't know that we've seen great things from it on smaller systems

was the other one in particular I was referencing; that one produced a fairly noticeable bump in apache performance, among other things...

Thanks a lot, Interesting. 


[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]