<?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: objc_msgSend</title>
	<atom:link href="http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/feed/" rel="self" type="application/rss+xml" />
	<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/</link>
	<description>serious code</description>
	<lastBuildDate>Sat, 31 Jul 2010 18:07:58 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Gil Megidish</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-1015</link>
		<dc:creator>Gil Megidish</dc:creator>
		<pubDate>Sat, 19 Jun 2010 12:57:52 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-1015</guid>
		<description>Pretty awesome post. I&#039;m trying to debug why my iPhone game runs so slow. 88% of the time is spent in objc_msgSend, thanks for explaining, I think I know how I can kill it :)

Cheers</description>
		<content:encoded><![CDATA[<p>Pretty awesome post. I&#8217;m trying to debug why my iPhone game runs so slow. 88% of the time is spent in objc_msgSend, thanks for explaining, I think I know how I can kill it <img src='http://ridiculousfish.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Cheers</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-103</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Tue, 05 Feb 2008 07:21:06 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-103</guid>
		<description>pi</description>
		<content:encoded><![CDATA[<p>pi</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rjt</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-102</link>
		<dc:creator>rjt</dc:creator>
		<pubDate>Tue, 23 May 2006 01:02:27 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-102</guid>
		<description>Got 78.5 million using the stock code on a iMac Core Duo (1.83 GHz). Smoking.</description>
		<content:encoded><![CDATA[<p>Got 78.5 million using the stock code on a iMac Core Duo (1.83 GHz). Smoking.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrik</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-101</link>
		<dc:creator>Patrik</dc:creator>
		<pubDate>Tue, 10 Jan 2006 02:07:06 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-101</guid>
		<description>Qsort: I recall a habit writing true / two-way-bubblesort all time I wanted to sort something; this for avoiding some qsort implementation eating the stack. But maybe this only did matter on old systems with stack-limitations like 64K. Guess this also can make sense in some embedded systems with only tiny stacks avail.</description>
		<content:encoded><![CDATA[<p>Qsort: I recall a habit writing true / two-way-bubblesort all time I wanted to sort something; this for avoiding some qsort implementation eating the stack. But maybe this only did matter on old systems with stack-limitations like 64K. Guess this also can make sense in some embedded systems with only tiny stacks avail.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-100</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Wed, 21 Dec 2005 20:41:07 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-100</guid>
		<description>Wow!</description>
		<content:encoded><![CDATA[<p>Wow!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Clyde Deda</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-99</link>
		<dc:creator>Clyde Deda</dc:creator>
		<pubDate>Tue, 16 Aug 2005 15:12:39 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-99</guid>
		<description>I ran this on my 1.67 G4 laptop.
Got 20 mil for the test, if i cash the function call i get 40 mil, that is fast folks.

IMP  functionCall = [foo methodForSelector:@selector(increment)];
for (;;) {functionCall(foo, @selector(increment));}

Java gets 21 mil calls, but crawls to 300 thousand when doing dynamic method calls.
Method  method = foo.getClass().getMethod(&quot;increment&quot;, parameterTypes);
return method.invoke(receiver, argumentList);

Objective-C is cool.</description>
		<content:encoded><![CDATA[<p>I ran this on my 1.67 G4 laptop.<br />
Got 20 mil for the test, if i cash the function call i get 40 mil, that is fast folks.</p>
<p>IMP  functionCall = [foo methodForSelector:@selector(increment)];<br />
for (;;) {functionCall(foo, @selector(increment));}</p>
<p>Java gets 21 mil calls, but crawls to 300 thousand when doing dynamic method calls.<br />
Method  method = foo.getClass().getMethod(&#8220;increment&#8221;, parameterTypes);<br />
return method.invoke(receiver, argumentList);</p>
<p>Objective-C is cool.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Henry Mason</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-98</link>
		<dc:creator>Henry Mason</dc:creator>
		<pubDate>Thu, 11 Aug 2005 08:42:33 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-98</guid>
		<description>In order to use qsort(), you&#039;d use -methodForSelector:, which would perform the procedure lookup only once, completely bypassing objc_msgSend().</description>
		<content:encoded><![CDATA[<p>In order to use qsort(), you&#8217;d use -methodForSelector:, which would perform the procedure lookup only once, completely bypassing objc_msgSend().</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-97</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Wed, 03 Aug 2005 11:08:46 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-97</guid>
		<description>since qsort is a general use algortithm (i.e. it doesn&#039;t know anything about the data being sorted) it uses various function calls to do the comparison of elements based on the data type.</description>
		<content:encoded><![CDATA[<p>since qsort is a general use algortithm (i.e. it doesn&#8217;t know anything about the data being sorted) it uses various function calls to do the comparison of elements based on the data type.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erik M. Buck</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-96</link>
		<dc:creator>Erik M. Buck</dc:creator>
		<pubDate>Tue, 02 Aug 2005 13:54:29 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-96</guid>
		<description>There is a lot of related information at http://www.mulle-kybernetik.com/artikel/Optimization/

In particular, there are interesting ideas for optimizing objc_msgSend() at http://www.mulle-kybernetik.com/artikel/Optimization/opti-9.html</description>
		<content:encoded><![CDATA[<p>There is a lot of related information at <a href="http://www.mulle-kybernetik.com/artikel/Optimization/" rel="nofollow">http://www.mulle-kybernetik.com/artikel/Optimization/</a></p>
<p>In particular, there are interesting ideas for optimizing objc_msgSend() at <a href="http://www.mulle-kybernetik.com/artikel/Optimization/opti-9.html" rel="nofollow">http://www.mulle-kybernetik.com/artikel/Optimization/opti-9.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Duncan mak</title>
		<link>http://ridiculousfish.com/blog/archives/2005/08/01/objc_msgsend/comment-page-1/#comment-95</link>
		<dc:creator>Duncan mak</dc:creator>
		<pubDate>Tue, 02 Aug 2005 07:21:02 +0000</pubDate>
		<guid isPermaLink="false">http://ridiculousfish.com/blog/?p=22#comment-95</guid>
		<description>This is interesting:

http://www.cincomsmalltalk.com/userblogs/vbykov/blogView?showComments=true&amp;entry=3300398515</description>
		<content:encoded><![CDATA[<p>This is interesting:</p>
<p><a href="http://www.cincomsmalltalk.com/userblogs/vbykov/blogView?showComments=true&amp;entry=3300398515" rel="nofollow">http://www.cincomsmalltalk.com/userblogs/vbykov/blogView?showComments=true&amp;entry=3300398515</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
