[M3devel] thread tests on NT386 32-bit circa 2008, not good so far
Tony Hosking
hosking at cs.purdue.edu
Wed Mar 16 22:25:25 CET 2011
I don't remember how stable the collector was at that point. Running them with @M3nogc indicates there were problems with it.
Now, what happens with the current trunk head when run with @M3nogc?
On Mar 16, 2011, at 2:42 PM, Coleburn, Randy wrote:
> I’ve gone back to a CM3 built on June 21, 2008.
> Platform is IBM ThinkPad T60, Windows XP Professional, 32-bit.
>
> If I try to put the “@M3paranoidgc” option on the command line, the thread test program always crashes, even before it reports anything about creating the threads.
>
> “read”, “nxread”, “tryexcept”, “fork”, “forktoomuch”, and “lock” tests seem to succeed.
>
> “creat” and “alloc” seem to hang the program on the first iteration. I see one “.” printed and nothing else. Have to CTRL-C abort.
> BUT, if you run them with “@M3nogc” they will run until we run out of memory. Tony, does this give any hint as to what may be wrong?
>
> Output of the various runs is shown below:
>
>
> C:\cm3\Sandbox\cm3\m3-libs\m3core\tests\thread\NT386>threadtest.exe -verbose -tests read @M3paranoidgc
>
> ***
> *** runtime error:
> *** Attempt to reference an illegal memory location.
> *** pc = 0x42fb8c = AllocTraced + 0x3e in ..\src\runtime\common\RTCollector.m3
> ***
>
> ***
> *** runtime error:
> *** <*ASSERT*> failed.
> *** file "..\src\thread\WIN32\ThreadWin32.m3", line 845
> ***
>
> ***
> *** runtime error:
> *** <*ASSERT*> failed.
> *** file "..\src\thread\WIN32\ThreadWin32.m3", line 845
> ***
>
>
> C:\cm3\Sandbox\cm3\m3-libs\m3core\tests\thread\NT386>threadtest.exe -verbose -tests alloc
> Writing file...done
> Creating alloc threads...
> alloc=15
> alloc=16
> alloc=17
> done
> running...printing oldest/median age/newest
> .^C
>
> C:\cm3\Sandbox\cm3\m3-libs\m3core\tests\thread\NT386>threadtest.exe -verbose -tests creat
> Writing file...done
> Creating creat threads...
> creat=18
> creat=19
> creat=20
> done
> running...printing oldest/median age/newest
> .^C
>
>
> C:\cm3\Sandbox\cm3\m3-libs\m3core\tests\thread\NT386>threadtest.exe -verbose -tests creat,alloc @M3nogc
> Writing file...done
> Creating alloc threads...
> alloc=15
> alloc=16
> alloc=17
> done
> Creating creat threads...
> creat=18
> creat=19
> creat=20
> done
> running...printing oldest/median age/newest
> ..........laziest thread is 0/0/0 (tests: alloc 0/0/0 creat 0/0/0)
> alloc Thread 15 completed 29204 loops.
> alloc Thread 16 completed 38868 loops.
> alloc Thread 17 completed 29118 loops.
> creat Thread 18 completed 111114 loops.
> creat Thread 19 completed 114913 loops.
> creat Thread 20 completed 108555 loops.
> ..........laziest thread is 0/0/0 (tests: alloc 0/0/0 creat 0/0/0)
> alloc Thread 15 completed 6968 loops.
> alloc Thread 16 completed 6747 loops.
> alloc Thread 17 completed 6331 loops.
> creat Thread 18 completed 40626 loops.
> creat Thread 19 completed 46526 loops.
> creat Thread 20 completed 43511 loops.
> ..........laziest thread is 0/0/0 (tests: alloc 0/0/0 creat 0/0/0)
> alloc Thread 15 completed 4857 loops.
> alloc Thread 16 completed 5409 loops.
> alloc Thread 17 completed 4601 loops.
> creat Thread 18 completed 50836 loops.
> creat Thread 19 completed 50108 loops.
> creat Thread 20 completed 53645 loops.
> ..........laziest thread is 0/0/0 (tests: alloc 0/0/0 creat 0/0/0)
> alloc Thread 15 completed 6249 loops.
> alloc Thread 16 completed 7252 loops.
> alloc Thread 17 completed 6770 loops.
> creat Thread 18 completed 62606 loops.
> creat Thread 19 completed 66036 loops.
> creat Thread 20 completed 62561 loops.
> ..........laziest thread is 0/0/0 (tests: alloc 0/0/0 creat 0/0/0)
> alloc Thread 15 completed 7000 loops.
> alloc Thread 16 completed 7559 loops.
> alloc Thread 17 completed 7389 loops.
> creat Thread 18 completed 66873 loops.
> creat Thread 19 completed 81612 loops.
> creat Thread 20 completed 62607 loops.
> ..........laziest thread is 0/0/0 (tests: alloc 0/0/0 creat 0/0/0)
> alloc Thread 15 completed 6666 loops.
> alloc Thread 16 completed 7579 loops.
> alloc Thread 17 completed 6964 loops.
> creat Thread 18 completed 89667 loops.
> creat Thread 19 completed 90794 loops.
> creat Thread 20 completed 90528 loops.
> .....
>
> ***
> *** runtime error:
> *** NEW() was unable to allocate more memory.
> *** file "..\src\runtime\common\RTCollector.m3", line 1545
> ***
>
> Stack trace:
> FP PC Procedure
> --------- --------- -------------------------------
> 0x4e7fe34 0x430197 LongAlloc + 0x89 in ..\src\runtime\common\RTCollector.m3
> 0x4e7fe90 0x42fd06 AllocTraced + 0x1b8 in ..\src\runtime\common\RTCollector.m3
> 0x4e7fed4 0x427ea9 GetOpenArray + 0x80 in ..\src\runtime\common\RTAllocator.m3
> 0x4e7fef8 0x427738 AllocateOpenArray + 0x19 in ..\src\runtime\common\RTAllocator.m3
> 0x4e7ff50 0x402293 AApply + 0x109 in ..\src\Main.m3
> 0x4e7ff88 0x42a34a RunThread + 0x1f6 in ..\src\thread\WIN32\ThreadWin32.m3
> 0x4e7ffb4 0x42a0e3 ThreadBase + 0x3a in ..\src\thread\WIN32\ThreadWin32.m3
> ......... ......... ... more frames ...
>
>
> C:\cm3\Sandbox\cm3\m3-libs\m3core\tests\thread\NT386>threadtest.exe -verbose -tests read,nxread,tryexcept,fork,forktoomuch,lock
> Writing file...done
> Creating read threads...
> read=0
> read=1
> read=2
> done
> Creating nxread threads...
> nxread=3
> nxread=4
> nxread=5
> done
> Creating tryexcept threads...
> tryexcept=6
> tryexcept=7
> tryexcept=8
> done
> Creating fork threads...
> fork=9
> fork=0
> fork=11
> done
> Creating forktoomuch threads...
> forktoomuch=12
> forktoomuch=13
> forktoomuch=14
> done
> Creating lock threads...
> lock=21
> lock=22
> lock=23
> done
> running...printing oldest/median age/newest
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 2 loops.
> read Thread 1 completed 6 loops.
> read Thread 2 completed 4 loops.
> nxread Thread 3 completed 3 loops.
> nxread Thread 4 completed 1 loops.
> nxread Thread 5 completed 3 loops.
> tryexcept Thread 6 completed 14293296 loops.
> tryexcept Thread 7 completed 23332343 loops.
> tryexcept Thread 8 completed 14563267 loops.
> fork Thread 9 completed 4 loops.
> fork Thread 10 completed 4 loops.
> fork Thread 11 completed 5 loops.
> forktoomuch Thread 12 completed 6 loops.
> forktoomuch Thread 13 completed 7 loops.
> forktoomuch Thread 14 completed 6 loops.
> lock Thread 21 completed 1395 loops.
> lock Thread 22 completed 1613 loops.
> lock Thread 23 completed 2354 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 6 loops.
> read Thread 1 completed 13 loops.
> read Thread 2 completed 5 loops.
> nxread Thread 3 completed 8 loops.
> nxread Thread 4 completed 7 loops.
> nxread Thread 5 completed 10 loops.
> tryexcept Thread 6 completed 15350367 loops.
> tryexcept Thread 7 completed 22864059 loops.
> tryexcept Thread 8 completed 14516795 loops.
> fork Thread 9 completed 6 loops.
> fork Thread 10 completed 7 loops.
> fork Thread 11 completed 6 loops.
> forktoomuch Thread 12 completed 8 loops.
> forktoomuch Thread 13 completed 9 loops.
> forktoomuch Thread 14 completed 8 loops.
> lock Thread 21 completed 3742 loops.
> lock Thread 22 completed 2342 loops.
> lock Thread 23 completed 3827 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 5 loops.
> read Thread 1 completed 10 loops.
> read Thread 2 completed 4 loops.
> nxread Thread 3 completed 5 loops.
> nxread Thread 4 completed 3 loops.
> nxread Thread 5 completed 4 loops.
> tryexcept Thread 6 completed 14205335 loops.
> tryexcept Thread 7 completed 23955466 loops.
> tryexcept Thread 8 completed 14597334 loops.
> fork Thread 9 completed 7 loops.
> fork Thread 10 completed 6 loops.
> fork Thread 11 completed 7 loops.
> forktoomuch Thread 12 completed 8 loops.
> forktoomuch Thread 13 completed 9 loops.
> forktoomuch Thread 14 completed 8 loops.
> lock Thread 21 completed 1384 loops.
> lock Thread 22 completed 3801 loops.
> lock Thread 23 completed 4735 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 5 loops.
> read Thread 1 completed 9 loops.
> read Thread 2 completed 6 loops.
> nxread Thread 3 completed 5 loops.
> nxread Thread 4 completed 4 loops.
> nxread Thread 5 completed 9 loops.
> tryexcept Thread 6 completed 13962901 loops.
> tryexcept Thread 7 completed 22999610 loops.
> tryexcept Thread 8 completed 14123517 loops.
> fork Thread 9 completed 6 loops.
> fork Thread 10 completed 6 loops.
> fork Thread 11 completed 5 loops.
> forktoomuch Thread 12 completed 7 loops.
> forktoomuch Thread 13 completed 8 loops.
> forktoomuch Thread 14 completed 8 loops.
> lock Thread 21 completed 1744 loops.
> lock Thread 22 completed 2095 loops.
> lock Thread 23 completed 1503 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 2 loops.
> read Thread 1 completed 6 loops.
> read Thread 2 completed 2 loops.
> nxread Thread 3 completed 3 loops.
> nxread Thread 4 completed 3 loops.
> nxread Thread 5 completed 3 loops.
> tryexcept Thread 6 completed 15715885 loops.
> tryexcept Thread 7 completed 24769727 loops.
> tryexcept Thread 8 completed 15414675 loops.
> fork Thread 9 completed 7 loops.
> fork Thread 10 completed 6 loops.
> fork Thread 11 completed 7 loops.
> forktoomuch Thread 12 completed 8 loops.
> forktoomuch Thread 13 completed 8 loops.
> forktoomuch Thread 14 completed 9 loops.
> lock Thread 21 completed 1523 loops.
> lock Thread 22 completed 1922 loops.
> lock Thread 23 completed 1204 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 5 loops.
> read Thread 1 completed 9 loops.
> read Thread 2 completed 6 loops.
> nxread Thread 3 completed 4 loops.
> nxread Thread 4 completed 2 loops.
> nxread Thread 5 completed 8 loops.
> tryexcept Thread 6 completed 14688224 loops.
> tryexcept Thread 7 completed 23710577 loops.
> tryexcept Thread 8 completed 15355622 loops.
> fork Thread 9 completed 6 loops.
> fork Thread 10 completed 7 loops.
> fork Thread 11 completed 6 loops.
> forktoomuch Thread 12 completed 8 loops.
> forktoomuch Thread 13 completed 9 loops.
> forktoomuch Thread 14 completed 7 loops.
> lock Thread 21 completed 9427 loops.
> lock Thread 22 completed 3941 loops.
> lock Thread 23 completed 4421 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 9 loops.
> read Thread 1 completed 11 loops.
> read Thread 2 completed 6 loops.
> nxread Thread 3 completed 7 loops.
> nxread Thread 4 completed 5 loops.
> nxread Thread 5 completed 9 loops.
> tryexcept Thread 6 completed 16315690 loops.
> tryexcept Thread 7 completed 25110147 loops.
> tryexcept Thread 8 completed 17291322 loops.
> fork Thread 9 completed 5 loops.
> fork Thread 10 completed 4 loops.
> fork Thread 11 completed 5 loops.
> forktoomuch Thread 12 completed 8 loops.
> forktoomuch Thread 13 completed 9 loops.
> forktoomuch Thread 14 completed 8 loops.
> lock Thread 21 completed 1648 loops.
> lock Thread 22 completed 1274 loops.
> lock Thread 23 completed 975 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 2 loops.
> read Thread 1 completed 6 loops.
> read Thread 2 completed 3 loops.
> nxread Thread 3 completed 7 loops.
> nxread Thread 4 completed 4 loops.
> nxread Thread 5 completed 7 loops.
> tryexcept Thread 6 completed 16955552 loops.
> tryexcept Thread 7 completed 27781696 loops.
> tryexcept Thread 8 completed 16151561 loops.
> fork Thread 9 completed 4 loops.
> fork Thread 10 completed 3 loops.
> fork Thread 11 completed 2 loops.
> forktoomuch Thread 12 completed 7 loops.
> forktoomuch Thread 13 completed 7 loops.
> forktoomuch Thread 14 completed 7 loops.
> lock Thread 21 completed 2148 loops.
> lock Thread 22 completed 2179 loops.
> lock Thread 23 completed 1804 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 7 loops.
> read Thread 1 completed 5 loops.
> read Thread 2 completed 4 loops.
> nxread Thread 3 completed 9 loops.
> nxread Thread 4 completed 6 loops.
> nxread Thread 5 completed 5 loops.
> tryexcept Thread 6 completed 14537433 loops.
> tryexcept Thread 7 completed 24043303 loops.
> tryexcept Thread 8 completed 14258976 loops.
> fork Thread 9 completed 6 loops.
> fork Thread 10 completed 7 loops.
> fork Thread 11 completed 6 loops.
> forktoomuch Thread 12 completed 8 loops.
> forktoomuch Thread 13 completed 8 loops.
> forktoomuch Thread 14 completed 8 loops.
> lock Thread 21 completed 6504 loops.
> lock Thread 22 completed 2290 loops.
> lock Thread 23 completed 7696 loops.
> ..........laziest thread is 0/0/0 (tests: read 0/0/0 nxread 0/0/0 tryexcept 0/0/0 fork 0/0/0 forktoomuch 0/0/0 lock 0/0/0)
> read Thread 0 completed 5 loops.
> read Thread 1 completed 6 loops.
> read Thread 2 completed 2 loops.
> nxread Thread 3 completed 4 loops.
> nxread Thread 4 completed 1 loops.
> nxread Thread 5 completed 3 loops.
> tryexcept Thread 6 completed 17349384 loops.
> tryexcept Thread 7 completed 29845941 loops.
> tryexcept Thread 8 completed 17792587 loops.
> fork Thread 9 completed 5 loops.
> fork Thread 10 completed 5 loops.
> fork Thread 11 completed 6 loops.
> forktoomuch Thread 12 completed 8 loops.
> forktoomuch Thread 13 completed 9 loops.
> forktoomuch Thread 14 completed 9 loops.
> lock Thread 21 completed 2692 loops.
> lock Thread 22 completed 4498 loops.
> lock Thread 23 completed 3600 loops.
> All tests complete. Congratulations.
>
> C:\cm3\Sandbox\cm3\m3-libs\m3core\tests\thread\NT386>
>
> Regards,
> Randy Coleburn
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20110316/6a0a5098/attachment-0002.html>
More information about the M3devel
mailing list