<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: MySQL 5.5-m2 scalability</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/</link>
	<description>Percona&#039;s MySQL &#38; InnoDB performance and scalability blog</description>
	<lastBuildDate>Sat, 11 Feb 2012 16:45:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: pavel</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-788115</link>
		<dc:creator>pavel</dc:creator>
		<pubDate>Mon, 20 Dec 2010 22:27:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-788115</guid>
		<description>What kind file system were you using ?

Thanks</description>
		<content:encoded><![CDATA[<p>What kind file system were you using ?</p>
<p>Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: River/wubx</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-741722</link>
		<dc:creator>River/wubx</dc:creator>
		<pubDate>Wed, 31 Mar 2010 01:42:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-741722</guid>
		<description>Vadim:
     you say 16 threads pretty well. I think this only for one table request. If there have many query request different table ,I think innodb currency more 16.So I think innodb threads can more than 256.</description>
		<content:encoded><![CDATA[<p>Vadim:<br />
     you say 16 threads pretty well. I think this only for one table request. If there have many query request different table ,I think innodb currency more 16.So I think innodb threads can more than 256.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Callaghan</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-734135</link>
		<dc:creator>Mark Callaghan</dc:creator>
		<pubDate>Wed, 10 Mar 2010 01:20:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-734135</guid>
		<description>How does Oracle scale on sysbench? I assume it isn&#039;t legal to publish those results. I know Oracle has many great benchmark results and many nice features, but I would still love to see results for simple benchmarks like sysbench.</description>
		<content:encoded><![CDATA[<p>How does Oracle scale on sysbench? I assume it isn&#8217;t legal to publish those results. I know Oracle has many great benchmark results and many nice features, but I would still love to see results for simple benchmarks like sysbench.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: darkfader</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-734133</link>
		<dc:creator>darkfader</dc:creator>
		<pubDate>Wed, 10 Mar 2010 01:16:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-734133</guid>
		<description>lifo2, 

thanks for pointing at the obvious, it was missed very much. I&#039;m surprised noone else pointed out the scaling of the graphs x-axis is not OK.

actually, from my POV what we see is that 
- scalability is still far from linear 
- there must be still some evil issues lurking, the performance hit from adding more threads should not bring 16-core performance down to the performance of 2 threads (== 2 cores)

luckily oracle is licensed per socket, otherwise one would be able to plot in the point (number of threads) where the hardware cost for &quot;Scaling&quot; breaks even with an oracle license. 
I hope you understand my point considering that even midrange servers can hit 48cores today.

If I look at it from the other end, I wonder what hardware would be needed to scale innodb up to the performace of a 128core unix iron + better scaling database.

anyway, I think such scalabilty benchmarks are highly neccessary and will help (continued) improvement a lot, removing locks here and there along the way ;)</description>
		<content:encoded><![CDATA[<p>lifo2, </p>
<p>thanks for pointing at the obvious, it was missed very much. I&#8217;m surprised noone else pointed out the scaling of the graphs x-axis is not OK.</p>
<p>actually, from my POV what we see is that<br />
- scalability is still far from linear<br />
- there must be still some evil issues lurking, the performance hit from adding more threads should not bring 16-core performance down to the performance of 2 threads (== 2 cores)</p>
<p>luckily oracle is licensed per socket, otherwise one would be able to plot in the point (number of threads) where the hardware cost for &#8220;Scaling&#8221; breaks even with an oracle license.<br />
I hope you understand my point considering that even midrange servers can hit 48cores today.</p>
<p>If I look at it from the other end, I wonder what hardware would be needed to scale innodb up to the performace of a 128core unix iron + better scaling database.</p>
<p>anyway, I think such scalabilty benchmarks are highly neccessary and will help (continued) improvement a lot, removing locks here and there along the way <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: lifo2</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-733770</link>
		<dc:creator>lifo2</dc:creator>
		<pubDate>Tue, 09 Mar 2010 09:50:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-733770</guid>
		<description>Well, this &quot;scales well&quot; with 16 threads because there are 16 cores, so the contention is minimal as global mutexes can be acquired as soon as they are freed by other threads. If you had 32 cores, it would &quot;scale well&quot; with 32 threads. 

I put &quot;scale well&quot; between quotes because the scale of your graph is misleading. The scaling looks linear (and even better than linear) but is not because X-axis is logarithmic. In fact, if you draw the same graph with a linear X-axis you will see that it doesn&#039;t really scale well. The improvement comes from a better usage of your CPU.</description>
		<content:encoded><![CDATA[<p>Well, this &#8220;scales well&#8221; with 16 threads because there are 16 cores, so the contention is minimal as global mutexes can be acquired as soon as they are freed by other threads. If you had 32 cores, it would &#8220;scale well&#8221; with 32 threads. </p>
<p>I put &#8220;scale well&#8221; between quotes because the scale of your graph is misleading. The scaling looks linear (and even better than linear) but is not because X-axis is logarithmic. In fact, if you draw the same graph with a linear X-axis you will see that it doesn&#8217;t really scale well. The improvement comes from a better usage of your CPU.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: PaulM</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-731756</link>
		<dc:creator>PaulM</dc:creator>
		<pubDate>Wed, 03 Mar 2010 23:20:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-731756</guid>
		<description>Here is a shell script wrapper which uses Vadim&#039;s sysbench command.
Assumptions: 
1) You have a mysql instance with a sbtest database up and properly configured to allow 512 connections.


# Runs sysbench increasing thread count each time to 512 threads
# http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/

sysbench --test=oltp --oltp-table-size=10000000 --mysql-user=sbtest --mysql-password=yourpasswd \
--mysql-socket=/var/lib/mysql/mysql.sock --init-rng=1 --num-threads=1 --max-requests=0 \
--oltp-dist-type=uniform --max-time=180 prepare

for i in 1 2 4 8 16 32 64 128 256 512
do
sysbench --test=oltp --oltp-table-size=10000000 --mysql-user=sbtest --mysql-password=yourpasswd \
--mysql-socket=/var/lib/mysql/mysql.sock --init-rng=1 --num-threads=$i --max-requests=0 \
--oltp-dist-type=uniform --max-time=180 run
done
</description>
		<content:encoded><![CDATA[<p>Here is a shell script wrapper which uses Vadim&#8217;s sysbench command.<br />
Assumptions:<br />
1) You have a mysql instance with a sbtest database up and properly configured to allow 512 connections.</p>
<p># Runs sysbench increasing thread count each time to 512 threads<br />
# <a href="http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/" rel="nofollow">http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/</a></p>
<p>sysbench &#8211;test=oltp &#8211;oltp-table-size=10000000 &#8211;mysql-user=sbtest &#8211;mysql-password=yourpasswd \<br />
&#8211;mysql-socket=/var/lib/mysql/mysql.sock &#8211;init-rng=1 &#8211;num-threads=1 &#8211;max-requests=0 \<br />
&#8211;oltp-dist-type=uniform &#8211;max-time=180 prepare</p>
<p>for i in 1 2 4 8 16 32 64 128 256 512<br />
do<br />
sysbench &#8211;test=oltp &#8211;oltp-table-size=10000000 &#8211;mysql-user=sbtest &#8211;mysql-password=yourpasswd \<br />
&#8211;mysql-socket=/var/lib/mysql/mysql.sock &#8211;init-rng=1 &#8211;num-threads=$i &#8211;max-requests=0 \<br />
&#8211;oltp-dist-type=uniform &#8211;max-time=180 run<br />
done</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-731749</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Wed, 03 Mar 2010 22:39:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-731749</guid>
		<description>Vadim,

I would be careful with scalability claims. You&#039;ve done this benchmark and you have results for this benchmark. Things has gotten a lot better and it is great. However it does not mean all workloads will scale as well too. 

Workloads expose different bottlenecks which can affect scalability differently.

Also I think there are 2 different aspects - one is showing improvement with multiple threads and cores and not failing down too much with many connections, another is scalability factor.

In your benchmark we see performance with 16 threads which is the peak is 7 times better than with one thread.  Assuming  single thread uses a bit over 1 core (most of the work is done by connection thread) we get up to double potential capacity.   

It is hard to judge without CPU usage data but I suspect there is some CPU which is free (or wasted doing spinlocks etc due to scalability limitations)</description>
		<content:encoded><![CDATA[<p>Vadim,</p>
<p>I would be careful with scalability claims. You&#8217;ve done this benchmark and you have results for this benchmark. Things has gotten a lot better and it is great. However it does not mean all workloads will scale as well too. </p>
<p>Workloads expose different bottlenecks which can affect scalability differently.</p>
<p>Also I think there are 2 different aspects &#8211; one is showing improvement with multiple threads and cores and not failing down too much with many connections, another is scalability factor.</p>
<p>In your benchmark we see performance with 16 threads which is the peak is 7 times better than with one thread.  Assuming  single thread uses a bit over 1 core (most of the work is done by connection thread) we get up to double potential capacity.   </p>
<p>It is hard to judge without CPU usage data but I suspect there is some CPU which is free (or wasted doing spinlocks etc due to scalability limitations)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sheeri K. Cabral (Pythian)</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-730949</link>
		<dc:creator>Sheeri K. Cabral (Pythian)</dc:creator>
		<pubDate>Mon, 01 Mar 2010 23:18:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-730949</guid>
		<description>Morgan -- as I said, my information was likely out of date.  

Still, benchmarks against 5.5 would be good.

Also, many people are confused about xtradb vs. percona performance build of mysql.  (heck, I am a bit, I know they&#039;re different in many 5.0 versions but I&#039;m not sure if they merge at some point).</description>
		<content:encoded><![CDATA[<p>Morgan &#8212; as I said, my information was likely out of date.  </p>
<p>Still, benchmarks against 5.5 would be good.</p>
<p>Also, many people are confused about xtradb vs. percona performance build of mysql.  (heck, I am a bit, I know they&#8217;re different in many 5.0 versions but I&#8217;m not sure if they merge at some point).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Morgan Tocker</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-730946</link>
		<dc:creator>Morgan Tocker</dc:creator>
		<pubDate>Mon, 01 Mar 2010 23:13:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-730946</guid>
		<description>Sheeri,

I remember seeing similar slides in a presentation by Giuseppe - iirc 5.4 was outperforming XtraDB in a read-only sysbench.  I believe Giuseppe took his slides from one of Dimitri&#039;s benchmarks that was posted about the same time.  In which case, a more up to date post shows how the numbers have changed (spoiler, XtraDB wins):

http://dimitrik.free.fr/blog/archives/2009/12/entry_101.html</description>
		<content:encoded><![CDATA[<p>Sheeri,</p>
<p>I remember seeing similar slides in a presentation by Giuseppe &#8211; iirc 5.4 was outperforming XtraDB in a read-only sysbench.  I believe Giuseppe took his slides from one of Dimitri&#8217;s benchmarks that was posted about the same time.  In which case, a more up to date post shows how the numbers have changed (spoiler, XtraDB wins):</p>
<p><a href="http://dimitrik.free.fr/blog/archives/2009/12/entry_101.html" rel="nofollow">http://dimitrik.free.fr/blog/archives/2009/12/entry_101.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: artemg</title>
		<link>http://www.mysqlperformanceblog.com/2010/02/28/mysql-5-5-m2-scalability/comment-page-1/#comment-730907</link>
		<dc:creator>artemg</dc:creator>
		<pubDate>Mon, 01 Mar 2010 20:58:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=2246#comment-730907</guid>
		<description>Vadim, have you tried to bind mysqld to the cores of single socket, leaving other idle?
Here is a quite interesting post about cross-core and cross-socket performance of modern CPUs -
http://kevinclosson.wordpress.com/2010/01/05/an-intel-xeon-5400-system-that-outperforms-an-intel-5500-nehalem-ep-system-believe-it-or-know-it</description>
		<content:encoded><![CDATA[<p>Vadim, have you tried to bind mysqld to the cores of single socket, leaving other idle?<br />
Here is a quite interesting post about cross-core and cross-socket performance of modern CPUs -<br />
<a href="http://kevinclosson.wordpress.com/2010/01/05/an-intel-xeon-5400-system-that-outperforms-an-intel-5500-nehalem-ep-system-believe-it-or-know-it" rel="nofollow">http://kevinclosson.wordpress.com/2010/01/05/an-intel-xeon-5400-system-that-outperforms-an-intel-5500-nehalem-ep-system-believe-it-or-know-it</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>

