[Mono-bugs] [Bug 78702][Wis] New - Continuations and microthreads

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Sat Jun 24 13:13:25 EDT 2006


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by alp at atoker.com.

http://bugzilla.ximian.com/show_bug.cgi?id=78702

--- shadow/78702	2006-06-24 13:13:25.000000000 -0400
+++ shadow/78702.tmp.22936	2006-06-24 13:13:25.000000000 -0400
@@ -0,0 +1,67 @@
+Bug#: 78702
+Product: Mono: Runtime
+Version: unspecified
+OS: All
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Wishlist
+Component: JIT
+AssignedTo: lupus at ximian.com                            
+ReportedBy: alp at atoker.com               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: Continuations and microthreads
+
+This is a feature enhancement request for the Mono runtime and class libraries.
+
+It's been suggested that the feature might be implemented after the 1.2
+release. It might be good to merge it sooner if the code isn't too
+intrusive, as it's an anticipated feature.
+
+REASONING
+=========
+
+1) Lack of microthreads makes Mono 4 times slower than Java in the
+chameneos benchmark:
+http://shootout.alioth.debian.org/gp4/csharp.php
+
+It also means that implementing the cheap-concurrency benchmark isn't
+worthwhile.
+
+Java also has powerful cross-CPU lightweight thread migration features by
+default.
+
+2) Miguel implemented an optimisation to Mono XSP using the yield keyword
+that is trying to embody a pattern of continuations.
+
+3) Vendors using Mono are pushing for continuations and have their own
+in-house implementations.
+
+Second Life has an alternative, less performant but initially more flexible
+approach that may work as a fallback:
+http://tirania.org/blog/archive/2006/Jun-07-1.html
+
+4) The SoC BitTorrent C# developers have put forward that the problem they
+are trying to solve (tracking large numbers of concurrent connections)
+would have been particularly well suited to microthreads.
+
+5) Personal experience shows that this would make C# X11 server/proxy
+implementations which track several network connections easier to write and
+more efficient.
+
+6) Stackless Python is using this technology to explore interesting new
+ways of programming. Even the existing Mono continuation code performs
+better than that.
+http://www.stackless.com/
+
+REFERENCES
+==========
+
+[Mono-dev] Mono Continuations and MicroThreads
+http://lists.ximian.com/pipermail/mono-devel-list/2006-April/017945.html
+
+http://tirania.org/blog/archive/2006/Apr-19-2.html


More information about the mono-bugs mailing list