Revision: 2762 Author: eliot Date: 2013-08-01 16:28:32 -0700 (Thu, 01 Aug 2013) Log Message: ----------- Add the heartbeat thread linux vms to the upload. Rename their directories to fooht from foopt. Add an mt ht linux build.
Modified Paths: -------------- branches/Cog/nscogbuild/unixbuild/astbld/mvm branches/Cog/nscogbuild/unixbuild/astbldt/mvm branches/Cog/nscogbuild/unixbuild/bld/mvm branches/Cog/nscogbuild/unixbuild/bldt/mvm branches/Cog/nscogbuild/unixbuild/dbgbld/mvm branches/Cog/nscogbuild/unixbuild/dbgbldt/mvm branches/Cog/scripts/mkvmarchives branches/Cog/scripts/uploadvms branches/Cog/unixbuild/abld/mvm branches/Cog/unixbuild/abldt/mvm branches/Cog/unixbuild/bld/mvm branches/Cog/unixbuild/bldt/mvm branches/Cog/unixbuild/dbld/mvm branches/Cog/unixbuild/dbldt/mvm branches/Cog/unixbuild/mtbld/mvm
Added Paths: ----------- branches/Cog/unixbuild/mtbldt/ branches/Cog/unixbuild/mtbldt/mvm branches/Cog/unixbuild/mtbldt/plugins.ext branches/Cog/unixbuild/mtbldt/plugins.int
Modified: branches/Cog/nscogbuild/unixbuild/astbld/mvm =================================================================== --- branches/Cog/nscogbuild/unixbuild/astbld/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/nscogbuild/unixbuild/astbld/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -17,7 +17,7 @@ test -f config.h || ../../../platforms/unix/config/configure --with-src=nscogsrc \ --without-vm-display-fbdev --without-npsqueak \ CC="gcc -m32" \ - CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DMULTIPLEBYTECODESETS=1 -DDEBUGVM=0 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" \ + CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DMULTIPLEBYTECODESETS=1 -DDEBUGVM=0 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" \ LIBS="-lpthread -luuid" \ LDFLAGS=-Wl,-z,now ../../../scripts/nukeversion
Modified: branches/Cog/nscogbuild/unixbuild/astbldt/mvm =================================================================== --- branches/Cog/nscogbuild/unixbuild/astbldt/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/nscogbuild/unixbuild/astbldt/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -1,6 +1,6 @@ #!/bin/bash # VM with VM profiler and threaded heartbeat assuming multiple thread priorities -INSTALLDIR=nsvmlinuxastpt +INSTALLDIR=nsvmlinuxastht if [ $# -ge 1 ]; then case "$1" in -*) ;;
Modified: branches/Cog/nscogbuild/unixbuild/bld/mvm =================================================================== --- branches/Cog/nscogbuild/unixbuild/bld/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/nscogbuild/unixbuild/bld/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -21,7 +21,7 @@ test -f config.h || ../../../platforms/unix/config/configure --with-src=nscogsrc \ --without-vm-display-fbdev --without-npsqueak \ CC="gcc -m32" \ - CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DMULTIPLEBYTECODESETS=1 -DDEBUGVM=0" \ + CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DMULTIPLEBYTECODESETS=1 -DDEBUGVM=0" \ LIBS="-lpthread -luuid" \ LDFLAGS=-Wl,-z,now ../../../scripts/nukeversion
Modified: branches/Cog/nscogbuild/unixbuild/bldt/mvm =================================================================== --- branches/Cog/nscogbuild/unixbuild/bldt/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/nscogbuild/unixbuild/bldt/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -1,6 +1,6 @@ #!/bin/bash # VM with VM profiler and threaded heartbeat assuming multiple thread priorities -INSTALLDIR=nsvmlinuxpt +INSTALLDIR=nsvmlinuxht if [ $# -ge 1 ]; then case "$1" in -*) ;;
Modified: branches/Cog/nscogbuild/unixbuild/dbgbld/mvm =================================================================== --- branches/Cog/nscogbuild/unixbuild/dbgbld/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/nscogbuild/unixbuild/dbgbld/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -17,7 +17,7 @@ test -f config.h || ../../../platforms/unix/config/configure --with-src=nscogsrc \ --without-vm-display-fbdev --without-npsqueak \ CC="gcc -m32" \ - CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DMULTIPLEBYTECODESETS=1 -DDEBUGVM=1 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" \ + CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DMULTIPLEBYTECODESETS=1 -DDEBUGVM=1 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" \ LIBS="-lpthread -luuid" \ LDFLAGS=-Wl,-z,now ../../../scripts/nukeversion
Modified: branches/Cog/nscogbuild/unixbuild/dbgbldt/mvm =================================================================== --- branches/Cog/nscogbuild/unixbuild/dbgbldt/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/nscogbuild/unixbuild/dbgbldt/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -1,6 +1,6 @@ #!/bin/bash # VM with VM profiler and threaded heartbeat assuming multiple thread priorities -INSTALLDIR=nsvmlinuxdbgpt +INSTALLDIR=nsvmlinuxdbght if [ $# -ge 1 ]; then case "$1" in -*) ;;
Modified: branches/Cog/scripts/mkvmarchives =================================================================== --- branches/Cog/scripts/mkvmarchives 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/scripts/mkvmarchives 2013-08-01 23:28:32 UTC (rev 2762) @@ -53,11 +53,17 @@ rm -rf coglinux-$TAG.tgz COPYFILE_DISABLE=1 tar czf coglinux-$TAG.tgz coglinux EXES="$EXES coglinux/lib/squeak/[0-9.-]*/squeak" + rm -rf coglinuxht-$TAG.tgz + COPYFILE_DISABLE=1 tar czf coglinuxht-$TAG.tgz coglinuxht + EXES="$EXES coglinuxht/lib/squeak/[0-9.-]*/squeak" fi if [ -n "$CTL" ]; then rm -rf cogmtlinux-$TAG.tgz COPYFILE_DISABLE=1 tar czf cogmtlinux-$TAG.tgz cogmtlinux EXES="$EXES cogmtlinux/lib/squeak/[0-9.-]*/squeak" + rm -rf cogmtlinuxht-$TAG.tgz + COPYFILE_DISABLE=1 tar czf cogmtlinuxht-$TAG.tgz cogmtlinuxht + EXES="$EXES cogmtlinuxht/lib/squeak/[0-9.-]*/squeak" fi if [ -n "$CM" ]; then test -d Cog.app || mkdir Cog.app @@ -92,9 +98,12 @@ EXES="$EXES cogmtwin/Squeak.exe" fi if [ -n "$NL" ]; then - rm -rf nsvmlinux-$TAG.tgz nsvmlinux-$TAG.tgz + rm -rf nsvmlinux-$TAG.tgz COPYFILE_DISABLE=1 tar czf nsvmlinux-$TAG.tgz nsvmlinux EXES="$EXES nsvmlinux/lib/nsvm/4.0-$REV/nsvm" + rm -rf nsvmlinuxht-$TAG.tgz + COPYFILE_DISABLE=1 tar czf nsvmlinuxht-$TAG.tgz nsvmlinuxht + EXES="$EXES nsvmlinuxht/lib/nsvm/4.0-$REV/nsvm" fi if [ -n "$NM" ]; then test -d Newspeak\ Virtual\ Machine.app || mkdir Newspeak\ Virtual\ Machine.app
Modified: branches/Cog/scripts/uploadvms =================================================================== --- branches/Cog/scripts/uploadvms 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/scripts/uploadvms 2013-08-01 23:28:32 UTC (rev 2762) @@ -19,10 +19,10 @@ TAG=`date +%g.%U.`$REV echo REV=$REV TAG=$TAG
-CSARCS="Cog.app-$TAG.tgz coglinux-$TAG.tgz cogwin-$TAG.zip" -CMARCS="cogmtlinux-$TAG.tgz CogMT.app-$TAG.tgz cogmtwin-$TAG.zip" -NSARCS="Newspeak Virtual Machine-$TAG.dmg nsvmlinux-$TAG.tgz nsvm-$TAG.msi" -NMARCS="Newspeak Virtual MachineMT-$TAG.dmg nsvmmtlinux-$TAG.tgz nsvmmt-$TAG.msi" +CSARCS="Cog.app-$TAG.tgz coglinux-$TAG.tgz coglinuxht-$TAG.tgz cogwin-$TAG.zip" +CMARCS="CogMT.app-$TAG.tgz cogmtlinux-$TAG.tgz cogmtlinuxht-$TAG.tgz cogmtwin-$TAG.zip" +NSARCS="Newspeak Virtual Machine-$TAG.dmg nsvmlinux-$TAG.tgz nsvmlinuxht-$TAG.tgz nsvm-$TAG.msi" +#NMARCS="Newspeak Virtual MachineMT-$TAG.dmg nsvmmtlinux-$TAG.tgz nsvmmtlinuxht-$TAG.tgz nsvmmt-$TAG.msi" if [ $# = 0 ]; then ARCHIVES="$CSARCS $CMARCS $NSARCS" CheckDMG=1 @@ -35,19 +35,19 @@ case $1 in -r) REV=$1;; -c) ARCHIVES="$ARCHIVES $CSARCS $CMARCS";; - -cl) ARCHIVES="$ARCHIVES coglinux-$TAG.tgz";; + -cl) ARCHIVES="$ARCHIVES coglinux-$TAG.tgz coglinuxht-$TAG.tgz";; -cm) ARCHIVES="$ARCHIVES Cog.app-$TAG.tgz";; -cw) ARCHIVES="$ARCHIVES cogwin-$TAG.zip";; - -ctl) ARCHIVES="$ARCHIVES cogmtlinux-$TAG.tgz";; + -ctl) ARCHIVES="$ARCHIVES cogmtlinux-$TAG.tgz cogmtlinuxht-$TAG.tgz";; -ctm) ARCHIVES="$ARCHIVES CogMT.app-$TAG.tgz";; -ctw) ARCHIVES="$ARCHIVES cogmtwin-$TAG.zip";; - -nl) ARCHIVES="$ARCHIVES nsvmlinux-$TAG.tgz";; + -nl) ARCHIVES="$ARCHIVES nsvmlinux-$TAG.tgz nsvmlinuxht-$TAG.tgz";; -nm) ARCHIVES="$ARCHIVES Newspeak Virtual Machine-$TAG.dmg" CheckDMG=1;; -nw) ARCHIVES="$ARCHIVES nsvm-$TAG.msi" CheckMSI=1;; -n) ARCHIVES="$ARCHIVES $NSARCS";; - -l) ARCHIVES="$ARCHIVES coglinux-$TAG.tgz cogmtlinux-$TAG.tgz nsvmlinux-$TAG.tgz";; + -l) ARCHIVES="$ARCHIVES coglinux-$TAG.tgz coglinuxht-$TAG.tgz cogmtlinux-$TAG.tgz cogmtlinuxht-$TAG.tgz nsvmlinux-$TAG.tgz nsvmlinuxht-$TAG.tgz";; -m) ARCHIVES="$ARCHIVES Cog.app-$TAG.tgz CogMT.app-$TAG.tgz Newspeak Virtual Machine-$TAG.dmg" CheckDMG=1;; -v) VERBOSE=1;; @@ -87,14 +87,34 @@ fi fi if [ ! -f README.$REV ]; then - cat <<END >README.$REV + cat <<THEEND >README.$REV N.B. For Squeak/Pharo/Croquet please use the archives whose names begin with Cog or cog. The archives whose names begin with nsvm or Newspeak are for Newspeak and are missing plugins required by Squeak/Pharo/Croquet. VMs with "mt" or "MT" in the name are multi-threaded VMs which support non-blocking FFI calls.
+ There are two variants of the Linux VMs; those ending in "ht" have a + heartbeat thread, while those that don't, use an interval timer for the + heartbeat (the Windows and Mac VMs have a threaded heartbeat). The + threaded heartbeat is better (for example, signals from the interval timer + interfere with system calls, etc), but to use it one must have a kernel + later than 2.6.12 and configure linux to allow the VM to use multiple + thread priorities. To do so, create a file called VM.conf where VM is + the name of the vm executable ("squeak" for the Squeak vm, "nsvm" for + the Newspeak vm) in /etc/security/limits.d/ with contents: +* hard rtprio 2 +* soft rtprio 2 + + e.g. +sudo cat >/etc/security/limits.d/squeak.conf <<END +* hard rtprio 2 +* soft rtprio 2 +sudo cp /etc/security/limits.d/squeak.conf /etc/security/limits.d/nsvm.conf END + Then log out and log back in for the limits to take effect. + +THEEND echo getting svn log svn log platforms/Cross/vm/sqSCCSVersion.h >>README.$REV vi README.$REV
Modified: branches/Cog/unixbuild/abld/mvm =================================================================== --- branches/Cog/unixbuild/abld/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/unixbuild/abld/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -11,7 +11,7 @@ esac test -f config.h || ../../platforms/unix/config/configure --without-npsqueak \ CC="gcc -m32" \ - CFLAGS="-g3 -O1 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" \ + CFLAGS="-g3 -O1 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DCOGMTVM=0 -DDEBUGVM=0" \ LIBS=-lpthread \ LDFLAGS=-Wl,-z,now ../../scripts/nukeversion
Modified: branches/Cog/unixbuild/abldt/mvm =================================================================== --- branches/Cog/unixbuild/abldt/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/unixbuild/abldt/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -1,6 +1,6 @@ #!/bin/sh # VM with VM profiler and threaded heartbeat assuming multiple thread priorities -INSTALLDIR=cogastlinuxpt +INSTALLDIR=cogastlinuxht if [ $# -ge 1 ]; then INSTALLDIR="$1"; shift fi
Modified: branches/Cog/unixbuild/bld/mvm =================================================================== --- branches/Cog/unixbuild/bld/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/unixbuild/bld/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -17,7 +17,7 @@ esac test -f config.h || ../../platforms/unix/config/configure --without-npsqueak \ CC="gcc -m32" \ - CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" \ + CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DCOGMTVM=0 -DDEBUGVM=0" \ LIBS=-lpthread \ LDFLAGS=-Wl,-z,now ../../scripts/nukeversion
Modified: branches/Cog/unixbuild/bldt/mvm =================================================================== --- branches/Cog/unixbuild/bldt/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/unixbuild/bldt/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -1,6 +1,6 @@ #!/bin/sh # VM with VM profiler and threaded heartbeat assuming multiple thread priorities -INSTALLDIR=coglinuxpt +INSTALLDIR=coglinuxht if [ $# -ge 1 ]; then INSTALLDIR="$1"; shift fi
Modified: branches/Cog/unixbuild/dbld/mvm =================================================================== --- branches/Cog/unixbuild/dbld/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/unixbuild/dbld/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -11,7 +11,7 @@ esac test -f config.h || ../../platforms/unix/config/configure --without-npsqueak \ CC="gcc -m32" \ - CFLAGS="-g3 -O0 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=1" \ + CFLAGS="-g3 -O0 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DITIMER_HEARTBEAT=1 -DCOGMTVM=0 -DDEBUGVM=1" \ LIBS=-lpthread \ LDFLAGS=-Wl,-z,now ../../scripts/nukeversion
Modified: branches/Cog/unixbuild/dbldt/mvm =================================================================== --- branches/Cog/unixbuild/dbldt/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/unixbuild/dbldt/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -1,6 +1,6 @@ #!/bin/sh # VM with VM profiler and threaded heartbeat assuming multiple thread priorities -INSTALLDIR=cogdbglinuxpt +INSTALLDIR=cogdbglinuxht if [ $# -ge 1 ]; then INSTALLDIR="$1"; shift fi
Modified: branches/Cog/unixbuild/mtbld/mvm =================================================================== --- branches/Cog/unixbuild/mtbld/mvm 2013-08-01 21:59:19 UTC (rev 2761) +++ branches/Cog/unixbuild/mtbld/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -18,7 +18,7 @@ test -f config.h || ../../platforms/unix/config/configure INTERP=cointerpmt \ --without-npsqueak \ CC="gcc -m32" \ - CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DCOGMTVM=1 -DDEBUGVM=0 -D_GNU_SOURCE -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1" \ + CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DCOGMTVM=1 -DDEBUGVM=0 -DITIMER_HEARTBEAT=1" \ LIBS=-lpthread \ LDFLAGS=-Wl,-z,now ../../scripts/nukeversion
Added: branches/Cog/unixbuild/mtbldt/mvm =================================================================== --- branches/Cog/unixbuild/mtbldt/mvm (rev 0) +++ branches/Cog/unixbuild/mtbldt/mvm 2013-08-01 23:28:32 UTC (rev 2762) @@ -0,0 +1,26 @@ +#!/bin/sh +INSTALLDIR=cogmtlinuxht +if [ $# -ge 1 ]; then + INSTALLDIR="$1"; shift +fi +# Some gcc versions create a broken VM using -O2 +case `gcc -v 2>&1 | grep version | sed 's/gcc version *//'` in +3.4.*) OPT=-O1;; +*) OPT=-O2;; +esac + +echo -n "clean? " +read a +case $a in +n|no|N|NO) echo "ok but this isn't safe!!";; +*) test -f Makefile && make reallyclean +esac +test -f config.h || ../../platforms/unix/config/configure INTERP=cointerpmt \ + --without-npsqueak \ + CC="gcc -m32" \ + CFLAGS="-g $OPT -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DCOGMTVM=1 -DDEBUGVM=0" \ + LIBS=-lpthread \ + LDFLAGS=-Wl,-z,now +../../scripts/nukeversion +rm -rf ../../$INSTALLDIR +make install prefix=`(cd ../../;pwd)`/$INSTALLDIR
Property changes on: branches/Cog/unixbuild/mtbldt/mvm ___________________________________________________________________ Added: svn:executable + *
Added: branches/Cog/unixbuild/mtbldt/plugins.ext =================================================================== --- branches/Cog/unixbuild/mtbldt/plugins.ext (rev 0) +++ branches/Cog/unixbuild/mtbldt/plugins.ext 2013-08-01 23:28:32 UTC (rev 2762) @@ -0,0 +1,9 @@ +# Copied, perhaps edited, from ../../src/examplePlugins.ext +EXTERNAL_PLUGINS = \ +B3DAcceleratorPlugin \ +BochsIA32Plugin \ +SqueakFFIPrims \ +SqueakSSL \ +LocalePlugin \ +UnixOSProcessPlugin \ +UUIDPlugin
Added: branches/Cog/unixbuild/mtbldt/plugins.int =================================================================== --- branches/Cog/unixbuild/mtbldt/plugins.int (rev 0) +++ branches/Cog/unixbuild/mtbldt/plugins.int 2013-08-01 23:28:32 UTC (rev 2762) @@ -0,0 +1,36 @@ +# Copied, perhaps edited, from ../../src/examplePlugins.int +INTERNAL_PLUGINS = \ +ADPCMCodecPlugin \ +AsynchFilePlugin \ +B2DPlugin \ +BitBltPlugin \ +BMPReadWriterPlugin \ +CroquetPlugin \ +ZipPlugin \ +DropPlugin \ +DSAPrims \ +FFTPlugin \ +FileCopyPlugin \ +FilePlugin \ +FloatArrayPlugin \ +FloatMathPlugin \ +IA32ABI \ +JoystickTabletPlugin \ +JPEGReaderPlugin \ +JPEGReadWriter2Plugin \ +Klatt \ +LargeIntegers \ +Matrix2x3Plugin \ +MIDIPlugin \ +MiscPrimitivePlugin \ +Mpeg3Plugin \ +RePlugin \ +SecurityPlugin \ +SerialPlugin \ +SocketPlugin \ +SoundCodecPrims \ +SoundGenerationPlugin \ +SoundPlugin \ +StarSqueakPlugin \ +SurfacePlugin \ +VMProfileLinuxSupportPlugin
vm-dev@lists.squeakfoundation.org