[Gc] Re[26]: GC + Windows Mobile + Threads + Patch for WINCE

biosli biosli at hotmail.com
Tue Sep 15 00:20:54 PDT 2009


Dear Ivan:
 
Ivan wrote:
> It would be nice if you could also try parallel marking on your ARM box.
>
> The steps:
> 1. fetch latest CVS
> 2. apply ivmai138.diff (http://article.gmane.org/gmane.comp.programming.garbage-collection.boehmgc/3183)
> 3. define at least -DALL_INTERIOR_POINTERS -DGC_GCJ_SUPPORT -DATOMIC_UNCOLLECTABLE -DGC_THREADS -DUSE_MUNMAP -DTHREAD_LOCAL_ALLOC -DPARALLEL_MARK -DVERY_SMALL_CONFIG -DGC_MIN_MARKERS=4
 
> Note: the last one (GC_MIN_MARKERS) is defined because your ARM is a single-core one (so, let's pretend you are already having a quad-core CPU ;).
>
I change the code as you said. The program works.
And I got Debug output and DebugBreak:
----------------------------------
Small thread creation failed 8
Small thread wait failed 6
Small thread creation failed 8
Small thread wait failed 6
Small thread creation failed 8
Small thread wait failed 6
Small thread creation failed 8
Small thread wait failed 6
Small thread creation failed 8
Small thread wait failed 6
......
---------------------------------
 
> Note 2: if this runs out of memory then retry without GC_GCJ_SUPPORT, ATOMIC_UNCOLLECTABLE.
This case has the same DebugBreaks as well.
 
I run the progarm at large memory platform(free memory at least 65M), also has the DebugBreaks.
I check the MSDN about CreateThread function(http://msdn.microsoft.com/en-us/library/ms885186.aspx):
---------------------------------
If every thread has 1 MB of stack space, you can create a maximum of 32 threads.
If you reduce the default stack size, you can create more threads. 
---------------------------------
 
 
Best Wishs,
Zeyi Lee
_________________________________________________________________
MSN十周年庆典,查看MSN注册时间,赢取神秘大奖
http://10.msn.com.cn


More information about the Gc mailing list