[M3devel] thread testing program in CM3
Jay K
jay.krell at cornell.edu
Tue Jan 11 21:51:15 CET 2011
> RuntimeError.mo : error LNK2001: unresolved external symbol __alloca
Understood. Due to last week's significant change to no longer know jmp_buf size in the compiler. Not yet fixed.
- Jay
----------------------------------------
> From: rcolebur at SCIRES.COM
> To: m3devel at elegosoft.com
> Date: Tue, 11 Jan 2011 14:39:28 -0500
> Subject: Re: [M3devel] thread testing program in CM3
>
> Thought I would give Mika's test program a try on Windows7, but ran into a glitch.
> I first tried updating everything from HEAD and rebuilding. During 2nd stage of rebuild, I get a failure on creating the DLL for m3core. See below. Jay, any ideas on what is wrong?
> --Randy
>
> Microsoft (R) Incremental Linker Version 10.00.30319.01
> Copyright (C) Microsoft Corporation. All rights reserved.
>
> -nodefaultlib
> -debug
> -incremental:no
> -opt:ref
> -delayload:ws2_32.dll
> -delayload:advapi32.dll
> -delayload:gdi32.dll
> -delayload:netapi32.dll
> -delayload:user32.dll
> -delayload:comctl32.dll
> -delayload:rpcrt4.dll
> -delayload:iphlpapid.dll
> delayimp.lib
> -def:m3core.def
> -dll
> -out:m3core.dll
> hand.obj
> dtoa.obj
> libgcc.obj
> RTHooks.io
> RTHooks.mo
> RT0.io
> RT0.mo
> RuntimeError.io
> RuntimeError.mo
> Compiler.io
> Compiler.mo
> RTAllocator.io
> RTAllocator.mo
> RTAllocCnts.io
> RTAllocStats.io
> RTAllocStats.mo
> RTHeap.io
> RTHeap.mo
> RTHeapInfo.io
> RTHeapInfo.mo
> RTHeapMap.io
> RTHeapMap.mo
> RTHeapRep.io
> RTHeapRep.mo
> RTHeapStats.io
> RTHeapStats.mo
> RTCollector.io
> RTCollector.mo
> RTCollectorSRC.io
> RTWeakRef.io
> RTIO.io
> RTIO.mo
> RTIOc.obj
> RTLinkerX.io
> RTLinker.io
> RTLinker.mo
> RTLinkerC.obj
> RTDebug.io
> RTDebug.mo
> RTDebugC.obj
> RTError.io
> RTError.mo
> RTException.io
> RTException.mo
> RTMapOp.io
> RTMapOp.mo
> RTMisc.io
> RTMisc.mo
> RTMiscC.obj
> RTModule.io
> RTPacking.io
> RTPacking.mo
> RTParams.io
> RTParams.mo
> RTProcedure.io
> RTProcedure.mo
> RTProcess.io
> RTProcess.mo
> RTProcessC.obj
> RTThread.io
> RTTipe.io
> RTTipe.mo
> RTType.io
> RTType.mo
> RTTypeFP.io
> RTTypeFP.mo
> RTTypeMap.io
> RTTypeMap.mo
> RTutils.io
> RTutils.mo
> RTHeapDebug.io
> RTHeapDebug.mo
> RTArgs.io
> RTHeapEvent.io
> RTProcedureSRC.io
> RTSignal.io
> RTStack.io
> RTTypeSRC.io
> RTOS.io
> RTMachine.io
> RTArgs.mo
> RTOS.mo
> RTPerfTool.io
> RTPerfTool.mo
> RTOSc.obj
> RTSignal.mo
> RTMachInfo.io
> RTMachInfo.mo
> RTExFrame.mo
> RTStackC.obj
> Thread.io
> ThreadF.io
> Scheduler.io
> ThreadDebug.io
> ThreadDebug.obj
> MutexRep.io
> ThreadEvent.io
> ThreadContext.io
> ThreadWin32.io
> ThreadWin32.mo
> ThreadWin32C.obj
> WinBaseTypes.io
> WinDef.io
> WinDef.mo
> WinNT.io
> WinNT.mo
> WinNTc.obj
> WinError.io
> WinBase.io
> WinCon.io
> WinGDI.io
> WinGDI.mo
> WinIoctl.io
> WinIoctl.mo
> WinNetwk.io
> WinNLS.io
> WinReg.io
> WinReg.mo
> WinSock.io
> WinSock.mo
> WinUser.io
> WinUser.mo
> WinUserC.obj
> WinVer.io
> WinVer.mo
> NB30.io
> NB30.mo
> CDErr.io
> CommDlg.io
> TlHelp32.io
> WinMidi.io
> WinCommCtrl.io
> WinTabCon.io
> WinTabCon.mo
> WinListView.io
> WinListView.mo
> WinImageList.io
> WinImageList.mo
> UtimeC.obj
> UnixC.obj
> UnixLink.obj
> Uexec.io
> Uexec.obj
> Unetdb.io
> Unetdb.obj
> Umman.obj
> Ugrp.io
> Ugrp.obj
> Uin.obj
> Uugid.obj
> Uuio.obj
> Uutmp.obj
> Usignal.obj
> Upwd.obj
> Uprocess.obj
> Usignal.io
> Uconstants.obj
> Uutmp.io
> Umman.io
> Uuio.io
> Upwd.io
> Uugid.io
> Uprocess.io
> Unix.io
> Unix.mo
> Utime.io
> Utypes.io
> Uerror.io
> Usched.io
> Usocket.io
> Usocket.obj
> Ustat.io
> Udir.io
> UdirC.obj
> Uin.io
> Cerrno.io
> Cstddef.io
> Cstdint.io
> Cstdlib.io
> CstdlibC.obj
> Ctypes.io
> M3toC.io
> M3toC.mo
> CerrnoC.obj
> Cstring.io
> CstringC.obj
> Cstdio.io
> CstdioC.obj
> Csignal.io
> CsignalC.obj
> Csetjmp.io
> BasicCtypes.io
> RealFloat.io
> LongFloat.io
> ExtendedFloat.io
> IEEESpecial.io
> IEEESpecial.mo
> Real.mo
> LongReal.mo
> Extended.mo
> DragonInt.io
> DragonInt.mo
> DragonT.io
> DragonT.mo
> Real.io
> LongReal.io
> Extended.io
> RealFloat.mo
> LongFloat.mo
> ExtendedFloat.mo
> RealRep.io
> LongRealRep.io
> FPU.io
> FPU.mo
> FloatMode.io
> FloatMode.mo
> Time.io
> Tick.io
> Date.io
> FmtTime.io
> FmtTime.mo
> TickPortable.mo
> Time.mo
> TimeWin32.io
> TimeWin32.mo
> DateWin32.mo
> CConvert.io
> CConvert.mo
> Convert.io
> Convert.mo
> String8.io
> String8.mo
> String16.io
> String16.mo
> Text.io
> Text.mo
> TextClass.io
> TextClass.mo
> TextLiteral.io
> TextLiteral.mo
> Text8.io
> Text8.mo
> Text8Short.io
> Text8Short.mo
> Text8CString.io
> Text8CString.mo
> Text16.io
> Text16.mo
> Text16Short.io
> Text16Short.mo
> TextSub.io
> TextSub.mo
> TextCat.io
> TextCat.mo
> TextConv.io
> TextConv.mo
> Fingerprint.io
> Fingerprint.mo
> Poly.io
> Poly.mo
> PolyBasis.io
> PolyBasis.mo
> Main.io
> WeakRef.io
> WeakRef.mo
> WordRep.io
> Word.io
> LongRep.io
> Long.io
> Word.mo
> Long.mo
> Boolean.io
> Boolean.mo
> Char.io
> Char.mo
> Int32.io
> Int32.mo
> Int64.io
> Int64.mo
> Integer.io
> Integer.mo
> Longint.io
> Longint.mo
> Refany.io
> Refany.mo
> ASCII.io
> ASCII.mo
> WideChar.io
> WideChar.mo
> Unicode.io
> Unicode.mo
> Address.io
> Address.mo
> iphlpapi.lib
> rpcrt4.lib
> winspool.lib
> comctl32.lib
> ws2_32.lib
> comdlg32.lib
> netapi32.lib
> gdi32.lib
> user32.lib
> advapi32.lib
> kernel32.lib
> msvcrt.lib
> Creating library m3core.lib and object m3core.exp
> LINK : warning LNK4199: /DELAYLOAD:advapi32.dll ignored; no imports found from advapi32.dll
> LINK : warning LNK4199: /DELAYLOAD:netapi32.dll ignored; no imports found from netapi32.dll
> LINK : warning LNK4199: /DELAYLOAD:rpcrt4.dll ignored; no imports found from rpcrt4.dll
> LINK : warning LNK4199: /DELAYLOAD:iphlpapid.dll ignored; no imports found from iphlpapid.dll
> RuntimeError.mo : error LNK2001: unresolved external symbol __alloca
> m3core.dll : fatal error LNK1120: 1 unresolved externals
>
> -----Original Message-----
> From: Mika Nystrom [mailto:mika at async.caltech.edu]
> Sent: Tuesday, January 11, 2011 10:54 AM
> To: m3devel at elegosoft.com
> Cc: jkrell at elego.de
> Subject: [M3devel] thread testing program in CM3
>
> Hi again,
>
> I added the thread "stress tester" to the CM3 repository in the following
> location:
>
> m3-libs/m3core/tests/thread
>
> It no longer takes any command-line arguments, and now it prints friendly
> diagnostics.
>
> On FreeBSD4 under PM3, I see the following output:
>
> (82)pluto:~/t/threadtest/src>../FreeBSD4/threadtest
> Writing file...done
> Creating reader threads...done
> Creating forker threads...done
> Creating allocator threads...done
> running...
> laziest thread is 1294760062 seconds behind
> laziest thread is 11 seconds behind
> laziest thread is 9 seconds behind
> laziest thread is 9 seconds behind
> laziest thread is 9 seconds behind
> laziest thread is 9 seconds behind
> laziest thread is 8 seconds behind
> laziest thread is 10 seconds behind
> laziest thread is 7 seconds behind
> laziest thread is 8 seconds behind
> (83)pluto:~/t/threadtest/src>m3build -version
> m3build: PM3 Version 1.1.15 (Tue Sep 5 17:16:07 EDT 2000)
> (84)pluto:~/t/threadtest/src>uname -a
> FreeBSD pluto.gcapltd.com 5.5-RELEASE FreeBSD 5.5-RELEASE #0: Mon Sep 24 13:34:44 CDT 2007 root at pluto.gcapltd.com:/usr/src/sys/i386/compile/PLUTO i386
>
>
> 10 seconds is about right for 100 threads and a 0.1-second time
> quantum (if memory serves, that's what PM3 user threads use?)
>
> Mika
More information about the M3devel
mailing list