<DIV>Sorry for the confusion.</DIV>
<DIV>&nbsp;</DIV>
<DIV>In the CompStrm project, I'm developing an alternative asyn programming </DIV>
<DIV>style, in an attempt to make such code easier to read/maintain. Like </DIV>
<DIV>flow, it is based on the yield statement. Unlike flow, it requires a </DIV>
<DIV>mechanism for executing code in the background of the main thread.</DIV>
<DIV>&nbsp;</DIV>
<DIV>So I'm not speeding up Twisted in any way. Rather, I'm adding a feature, </DIV>
<DIV>all be it one that could be easily abused, by allowing for the inclusion of</DIV>
<DIV>an additional function call in the reactor main loop.</DIV>
<DIV>&nbsp;</DIV>
<DIV>My initial approach, of using callLater for successive invocations, was </DIV>
<DIV>flawed because of the limited granularity of time available on a PC. This </DIV>
<DIV>means that I was only able to capture control for a very small number of</DIV>
<DIV>main loop cycles. But by inserting an additional method call, I am now </DIV>
<DIV>able to perform a little background processing with every cycle.</DIV>
<DIV>&nbsp;</DIV>
<DIV>As for the timing, I'm counting the number of items I can pass on an</DIV>
<DIV>async pipe between two virtual processes running in the background of</DIV>
<DIV>the main thread. Details for running over asyncore are available here:</DIV>
<DIV><A href="http://compstrm.sourceforge.net/timing.html">http://compstrm.sourceforge.net/timing.html</A></DIV>
<DIV>&nbsp;</DIV>
<DIV>Bill<BR><BR><B><I>Glyph Lefkowitz &lt;glyph@divmod.com&gt;</I></B> wrote:</DIV>
<BLOCKQUOTE class=replbq style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #1010ff 2px solid">Hi Bill,<BR><BR>I appreciate reports of performance issues, and I'm sure the reactor <BR>could be sped up a bit - but this report seemed a bit vague, and as far <BR>as a few helpful folks on #twisted could tell, wrong.<BR><BR>&gt; Just using reactor.callLater, I could only get a speed of 90, in <BR>&gt; contrast to<BR>&gt; the asyncore integration which was doing better than 12,000.<BR><BR>90 whats per what on what? How exactly did you measure this?<BR><BR>We assumed you meant "90 trivial calls per second" and "on relatively <BR>recent hardware". The only test we did that made this radical kind of <BR>difference was inserting a 'print' statement into the "trivial" <BR>callback. The numbers for callLaters-per-second on various hardware we <BR>had lying around, mostly around ~2GhZ athlons, were in the 15000-25000 <BR>range.<BR><BR></BLOCKQUOTE><p><font face=arial size=-1>
<a href="http://in.rd.yahoo.com/specials/mailtg/*http://yahoo.shaadi.com/india-matrimony/" target="_blank">
<b>Yahoo! India Matrimony</a>:</b> Find your partner 
<a href="http://in.rd.yahoo.com/specials/mailtg2/*http://yahoo.shaadi.com/india-matrimony/community.php" target="_blank">online</a>.</font>