<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
</head>
<body class='hmmessage'>
Even with the change I made PutCard to PutInt?<BR>
That's the only failure I've seen.<BR>
I'll try on a non-virtual dual-proc machine later.<BR>
 <BR>
Thanks,<BR>
 - Jay<BR> <BR>

<HR id=stopSpelling>
From: rcolebur@SCIRES.COM<BR>To: m3devel@elegosoft.com<BR>Date: Wed, 2 Mar 2011 19:42:47 -0500<BR>Subject: Re: [M3devel] results of threadtest program on Windows7<BR><BR>
<META name=Generator content="Microsoft SafeHTML">
<STYLE>
.ExternalClass p.ecxMsoNormal, .ExternalClass li.ecxMsoNormal, .ExternalClass div.ecxMsoNormal
{margin-bottom:.0001pt;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass a:link, .ExternalClass span.ecxMsoHyperlink
{color:blue;text-decoration:underline;}
.ExternalClass a:visited, .ExternalClass span.ecxMsoHyperlinkFollowed
{color:purple;text-decoration:underline;}
.ExternalClass p
{margin-right:0in;margin-left:0in;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass span.ecxEmailStyle18
{font-family:'Calibri','sans-serif';color:#1F497D;}
.ExternalClass .ecxMsoChpDefault
{font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;}
.ExternalClass div.ecxWordSection1
{page:WordSection1;}

</STYLE>

<DIV class=ecxWordSection1>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Yes, it fails more often than it runs for me.</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Regards,</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt">Randy</SPAN></P>
<P class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: #1f497d; FONT-SIZE: 11pt"> </SPAN></P>
<DIV>
<DIV style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><B><SPAN style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt">From:</SPAN></B><SPAN style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt"> jayk123@hotmail.com [mailto:jayk123@hotmail.com] <B>On Behalf Of </B>Jay K<BR><B>Sent:</B> Tuesday, March 01, 2011 5:59 AM<BR><B>To:</B> Mika Nystrom; Coleburn, Randy<BR><B>Cc:</B> m3devel<BR><B>Subject:</B> RE: [M3devel] results of threadtest program on Windows7</SPAN></P></DIV></DIV>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal> </P>
<P style="MARGIN-LEFT: 0.5in" class=ecxMsoNormal><SPAN style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt">I haven't seen it fail on NT, except for PutCard in the test itself getting negative numbers.<BR>I've run it just a few times now. One single and dual processor virtual machines.<BR>Randy, has it failed many times for you?<BR><BR> - Jay<BR><BR>> To: rcolebur@SCIRES.COM<BR>> Date: Sun, 27 Feb 2011 15:11:25 -0800<BR>> From: mika@async.caltech.edu<BR>> CC: m3devel@elegosoft.com<BR>> Subject: Re: [M3devel] results of threadtest program on Windows7<BR>> <BR>> Ah, it just doesn't check command-line arguments that carefully.<BR>> <BR>> I think what you did is equivalent to "-tests STD".<BR>> <BR>> Mika<BR>> <BR>> "Coleburn, Randy" writes:<BR>> >Mika:<BR>> ><BR>> >No change with "-tests POSIX".<BR>> ><BR>> >Interesting twist: On Windows 7, I thought I'd see what the command line o=<BR>> >ptions are, and I typed "threadtest -help" rather than reading the code.<BR>> ><BR>> >First time, it produced what appears to be a NIL deref crash. Then, I trie=<BR>> >d it again and it ran to completion. Something seems non-deterministic her=<BR>> >e. See below.<BR>> ><BR>> >C:\cm3\Sandbox\m3-libs\m3core\tests\thread\NT386>threadtest.exe -help<BR>> >Writing file...done<BR>> >Creating read threads...done<BR>> >Creating fork threads...done<BR>> >Creating alloc threads...done<BR>> >Creating lock threads...done<BR>> >running...printing oldest/median age/newest<BR>> >.<BR>> ><BR>> >***<BR>> >*** runtime error:<BR>> >*** Attempt to reference an illegal memory location.<BR>> >*** pc =3D 0x77762262<BR>> >***<BR>> ><BR>> >Stack trace:<BR>> > FP PC Procedure<BR>> >--------- --------- -------------------------------<BR>> > 0xcdf998 0x130351b SystemError + 0x64 in ..\src\runtime\NT386\RTSignal.m=<BR>> >3<BR>> > 0xcdf9c0 0x77762262 <???><BR>> > 0xcdf9d8 0x12e83b7 LockMutex + 0x4f in ..\src\thread\WIN32\ThreadWin32.m=<BR>> >3<BR>> > 0xcdfa00 0x12c7b08 GetChar + 0x28 in ..\src\rw\Rd.m3<BR>> > 0xcdfb38 0x12c12e3 RApply + 0xd3 in ..\src\Main.m3<BR>> > 0xcdfb74 0x12e971f ThreadBase + 0x254 in ..\src\thread\WIN32\ThreadWin32=<BR>> >.m3<BR>> > 0xcdfb80 0x76543677 <???><BR>> > 0xcdfbc0 0x77779f02 <???><BR>> >......... ......... ... more frames ...<BR>> ><BR>> >C:\cm3\Sandbox\m3-libs\m3core\tests\thread\NT386>threadtest.exe -help<BR>> >Writing file...done<BR>> >Creating read threads...done<BR>> >Creating fork threads...done<BR>> >Creating alloc threads...done<BR>> >Creating lock threads...done<BR>> >running...printing oldest/median age/newest<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >..........laziest thread is 0/0/0 (tests: read 0/0/0 fork 0/0/0 alloc 0/0/0=<BR>> > lock 0/0/0)<BR>> >All tests complete. Congratulations.<BR>> ><BR>> >Regards,<BR>> >Randy Coleburn<BR>> ><BR>> >-----Original Message-----<BR>> >From: Mika Nystrom [mailto:mika@async.caltech.edu]=20<BR>> >Sent: Sunday, February 27, 2011 3:30 PM<BR>> >To: Coleburn, Randy<BR>> >Cc: m3devel@elegosoft.com<BR>> >Subject: Re: [M3devel] results of threadtest program on Windows7=20<BR>> ><BR>> >Hi Randy,<BR>> ><BR>> >You can try it with -tests POSIX as well.<BR>> ><BR>> >I find on user threads it runs very slowly (but it does run) because of how=<BR>> > unfair<BR>> >the thread scheduler is.<BR>> ><BR>> >Next step might be to whittle down the tests and see if you can get a failu=<BR>> >re with<BR>> >a single test running and -n 2. That would likely be the simplest scenario=<BR>> > to<BR>> >start further debugging from.<BR>> ><BR>> > Mika<BR>> ><BR>> >"Coleburn, Randy" writes:<BR>> >>Mika et al:<BR>> >><BR>> >>Thought I would try something else.<BR>> >><BR>> >>I took the sources of your thread test program to an older XP machine that=<BR>> > =3D<BR>> >>has CM3 circa August 2008. This is the machine and implementation I used =<BR>> >w=3D<BR>> >>hen building a major project I did a couple years back.<BR>> >><BR>> >>The thread test program does indeed build on this old system, but when I r=<BR>> >u=3D<BR>> >>n it, I get different results than with the latest HEAD branch code. =3D20<BR>> >><BR>> >>After it prints "running...printing oldest/median age/newest", on the next=<BR>> > =3D<BR>> >>line I get two periods ".." and now the program seems hung. I'll let it "=<BR>> >r=3D<BR>> >>un" for a few more minutes to see if anything else happens before killing =<BR>> >i=3D<BR>> >>t.<BR>> >><BR>> >>At least we don't get the subscript and assertion failures on this older C=<BR>> >M=3D<BR>> >>3 platform.<BR>> >><BR>> >>Regards,<BR>> >>Randy Coleburn<BR>> >><BR>> >><BR>> >>-----Original Message-----<BR>> >>From: Coleburn, Randy=3D20<BR>> >>Sent: Sunday, February 27, 2011 2:09 PM<BR>> >>To: m3devel@elegosoft.com<BR>> >>Subject: Re: [M3devel] results of threadtest program on Windows7<BR>> >><BR>> >>Mika:<BR>> >><BR>> >>Ok, I've updated to latest HEAD and I've also built Jay's m3sleep program.<BR>> >><BR>> >>Here is what happens now when I run your threadtest program on Windows 7.<BR>> >><BR>> >>C:\cm3\Sandbox\m3-libs\m3core\tests\thread\NT386>threadtest -tests ALL,-fo=<BR>> >r=3D<BR>> >>k<BR>> >>Writing file...done<BR>> >>Creating read threads...done<BR>> >>Creating nxread threads...done<BR>> >>Creating tryexcept threads...done<BR>> >>Creating forktoomuch threads...done<BR>> >>Creating alloc threads...done<BR>> >>Creating creat threads...done<BR>> >>Creating lock threads...done<BR>> >>running...printing oldest/median age/newest<BR>> >><BR>> >><BR>> >>***<BR>> >>*** runtime error:<BR>> >>*** An array subscript was out of range.<BR>> >>*** file "..\src\runtime\common\RTCollector.m3", line 418<BR>> >>***<BR>> >><BR>> >><BR>> >><BR>> >>***<BR>> >>*** runtime error:<BR>> >>*** <*ASSERT*> failed.<BR>> >>*** file "..\src\thread\WIN32\ThreadWin32.m3", line 841<BR>> >>***<BR>> >><BR>> >>The last error repeats ad infinitum until I press CNTRL-C to abort.<BR>> >><BR>> >>I'll send more info on the Windows install of Modula3 in a subsequent post=<BR>> >.<BR>> >><BR>> >>Regards,<BR>> >>Randy Coleburn<BR>> >><BR>> >>-----Original Message-----<BR>> >>From: Mika Nystrom [mailto:mika@async.caltech.edu]=3D20<BR>> >>Sent: Saturday, February 26, 2011 12:55 PM<BR>> >>To: Coleburn, Randy<BR>> >>Cc: m3devel@elegosoft.com<BR>> >>Subject: Re: [M3devel] results of threadtest program on Windows7=3D20<BR>> >><BR>> >>Hi Randy,<BR>> >><BR>> >>Hm yes it looks like my Windows programming skills leave something<BR>> >>to be desired.<BR>> >><BR>> >>You can run the thread tester while skipping a test as follows<BR>> >><BR>> >> threadtest -tests ALL,-fork<BR>> >><BR>> >>(for instance)<BR>> >><BR>> >>if you just run=3D20<BR>> >><BR>> >> threadtest -sadfassdaf<BR>> >><BR>> >>it'll print the tests that are available.<BR>> >><BR>> >>As it happens, I just had to upgrade my windows 2000 system to windows 7.<BR>> >>Can you give me a very brief description of what you did to install Modula=<BR>> >-=3D<BR>> >>3<BR>> >>on this system?<BR>> >><BR>> >> Mika<BR>> >><BR>> >>"Coleburn, Randy" writes:<BR>> >>>--_000_D67F02DDC62F7545A6B84C285F88F3E6EE25C849atlex02srv_<BR>> >>>Content-Type: text/plain; charset=3D3D"us-ascii"<BR>> >>>Content-Transfer-Encoding: quoted-printable<BR>> >>><BR>> >>>Mika:<BR>> >>><BR>> >>>I've finally managed to get cm3 rebuilt on Windows 7 again.<BR>> >>><BR>> >>>So, I ran your threadtest program.<BR>> >>><BR>> >>>Here are the results. Note the "..." is where I cut out a bunch of the r=<BR>> >e=3D<BR>> >>p=3D3D<BR>> >>>eating "ERROR FApply" messages.<BR>> >>><BR>> >>>C:\cm3\Sandbox\m3-libs\m3core\tests\thread\NT386>threadtest.exe<BR>> >>>Writing file...done<BR>> >>>Creating read threads...done<BR>> >>>Creating fork threads...done<BR>> >>>Creating alloc threads...done<BR>> >>>Creating lock threads...done<BR>> >>>running...printing oldest/median age/newest<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>.<BR>> >>>.<BR>> >>>.<BR>> >>>***<BR>> >>>*** runtime error:<BR>> >>>*** An enumeration or subrange value was out of range.<BR>> >>>*** file "..\src\Main.m3", line 340<BR>> >>>***<BR>> >>><BR>> >>>laziest thread is 0/0/ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The sy=<BR>> >ste=3D<BR>> >>m c=3D3D<BR>> >>>annot find the file specified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>.<BR>> >>>.<BR>> >>>.<BR>> >>>laziest thread is 0/0/ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The sy=<BR>> >ste=3D<BR>> >>m c=3D3D<BR>> >>>annot find the file specified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>.<BR>> >>>.<BR>> >>>.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>ERROR FApply: OSError.E: ErrorCode=3D3D3D2: The system cannot find the f=<BR>> >ile=3D<BR>> >> sp=3D3D<BR>> >>>ecified.<BR>> >>>Stack trace:<BR>> >>> FP PC Procedure<BR>> >>>--------- --------- -------------------------------<BR>> >>>0x30fbd0 0x127218a PutStats + 0x1a3 in ..\src\Main.m3<BR>> >>>0x30fcc0 0x1273825 Main_M3 + 0x11db(!) in ..\src\Main.m3<BR>> >>><BR>> >>>Regards,<BR>> >>>Randy Coleburn<BR>> >>><BR>> >>>--_000_D67F02DDC62F7545A6B84C285F88F3E6EE25C849atlex02srv_<BR>> >>>Content-Type: text/html; charset=3D3D"us-ascii"<BR>> >>>Content-Transfer-Encoding: quoted-printable<BR>> >>></SPAN></P></DIV>                                       </body>
</html>