charm.git
19 years agoAdded two things:
Orion Lawlor [Thu, 14 Mar 2002 23:50:15 +0000 (23:50 +0000)]
Added two things:
-A BlockList to keep track of heap allocations when using -memory isomalloc
-A facility to trace the execution of framework API routines.

19 years agoChanged "malloc"s to "malloc_nonmigratable". These are needed because
Orion Lawlor [Thu, 14 Mar 2002 23:48:48 +0000 (23:48 +0000)]
Changed "malloc"s to "malloc_nonmigratable".  These are needed because
otherwise datagrams allocated while there was a migratable object
running would be bound to that object, and would magically disappear
when that object migrated away.  Note that this is only a problem
for incoming messages on non-smp versions; migratable objects should
be disciplined enough to de-activate their allocation list before
running other code.

19 years agoAdded memory-isomalloc.h and memory-isomalloc.c.
Orion Lawlor [Thu, 14 Mar 2002 23:44:11 +0000 (23:44 +0000)]
Added memory-isomalloc.h and memory-isomalloc.c.

19 years agoTiny change: CmiAlloc now uses malloc_nomigratable rather than ordinary
Orion Lawlor [Thu, 14 Mar 2002 23:43:37 +0000 (23:43 +0000)]
Tiny change: CmiAlloc now uses malloc_nomigratable rather than ordinary
malloc.  This is needed when the default heap allocations go to isomalloc'd,
migratable memory, because if CmiAlloc returned migratable memory, converse
would be very confused when its messages (e.g., sent w/ sendandfree)
suddenly migrated away!

19 years agoTwo changes:
Orion Lawlor [Thu, 14 Mar 2002 23:40:51 +0000 (23:40 +0000)]
Two changes:
-Now use malloc_reentrant to allocate memory.  This is needed because
the isomalloc routines can be called from within malloc, so extra care
needs to be taken with the CmiMemLock.
-Added an exclusion region for shared libraries, which might get loaded
to their own special section of the address space.

19 years agoUpdates for new isomalloc memory mode. If we're *not* using isomalloc,
Orion Lawlor [Thu, 14 Mar 2002 23:38:50 +0000 (23:38 +0000)]
Updates for new isomalloc memory mode.  If we're *not* using isomalloc,
we use plain vanilla implementations of the "memory-isomalloc.h" routines.

19 years agoUse the power of isomalloc to make migration easier, by allocating
Orion Lawlor [Thu, 14 Mar 2002 23:37:24 +0000 (23:37 +0000)]
Use the power of isomalloc to make migration easier, by allocating
all heap data in isomalloc memory.  This is enabled by "Activating"
a "BlockList", a doubly-linked circular list into which subsequent
malloc's will be linked.  "free" doesn't depend on the current
active blocklist; it always unlinks blocks from their original
context.

If there is no active context, this version falls back to the ordinary
GNU allocate.

19 years agoset CMK_TIMER_USE_RDTSC 1 for gcc. ecc doesn't support asm though.
Gengbin Zheng [Wed, 13 Mar 2002 06:07:52 +0000 (06:07 +0000)]
set CMK_TIMER_USE_RDTSC 1 for gcc. ecc doesn't support asm though.

19 years agoadded CMK_IA64 and CMK_TIMER_USE_RDTSC
Gengbin Zheng [Wed, 13 Mar 2002 06:05:27 +0000 (06:05 +0000)]
added CMK_IA64 and CMK_TIMER_USE_RDTSC

19 years agoadded RDTSC timer asm code for IA64.
Gengbin Zheng [Wed, 13 Mar 2002 06:04:06 +0000 (06:04 +0000)]
added RDTSC timer asm code for IA64.

19 years agofixing a bug
Sameer Kumar [Tue, 12 Mar 2002 21:35:23 +0000 (21:35 +0000)]
fixing a bug

19 years agoAdded Orion's comments about proxies, handles, etc.
Jayant DeSouza [Mon, 11 Mar 2002 21:17:41 +0000 (21:17 +0000)]
Added Orion's comments about proxies, handles, etc.

19 years agoCheck for CkArgMsg before assuming mainchare constructor
Orion Lawlor [Mon, 11 Mar 2002 20:27:27 +0000 (20:27 +0000)]
Check for CkArgMsg before assuming mainchare constructor
should be called at startup.  Without this check, declaring
a mainchare with several constructors:

mainchare foo {
entry foo(); /*Real mainchare constructor*/
entry foo(int x); /*Some other constructor*/
};

This would result in *both* constructors getting called,
and two foo mainchares.

19 years agoTwo tiny changes:
Orion Lawlor [Mon, 11 Mar 2002 00:42:13 +0000 (00:42 +0000)]
Two tiny changes:
-#ifndef CMK_NO_SOCKETS, for building on the cursed ASCI Red
-Fixed capitalization for ConnectWithTimeout.  Most compilers accepted
the implicit prototype for ConnectWithtimeout, but not on ASCI Red!

19 years agoremoved traceInit. use constructor for initialization and parsing argv.
Gengbin Zheng [Sat, 9 Mar 2002 06:56:48 +0000 (06:56 +0000)]
removed traceInit. use constructor for initialization and parsing argv.
move Cpv _logPool to memeber data of tracesummary and traceprojections.

19 years agoUpdate so that arguments are passed to "createTrace" modules
Joshua Unger [Fri, 8 Mar 2002 23:10:35 +0000 (23:10 +0000)]
Update so that arguments are passed to "createTrace" modules

19 years agoadding direct communication and message flush
Sameer Kumar [Fri, 8 Mar 2002 22:04:17 +0000 (22:04 +0000)]
adding direct communication and message flush

19 years agomodifying makefile to support charm++ commlib
Sameer Kumar [Fri, 8 Mar 2002 20:43:27 +0000 (20:43 +0000)]
modifying makefile to support charm++ commlib

19 years agoAdding the charm++ communication optimization library
Sameer Kumar [Fri, 8 Mar 2002 20:42:27 +0000 (20:42 +0000)]
Adding the charm++ communication optimization library

19 years agoSeveral minor changes to the way Cpv's get declared:
Orion Lawlor [Fri, 8 Mar 2002 00:56:52 +0000 (00:56 +0000)]
Several minor changes to the way Cpv's get declared:
-Collected all the SMP-style Cpv declarations into one place
-Added "CpvInitialized" test macro, to determine whether a
CpvAccess is legal yet.
-Changed CpvInitialize to use calloc so Cpv's are initially
zero'd out (this is the same semantics as global variables have)
-Added comments for each CMK_SHARED_* section, listing the machines
for which these declarations are used.

There shouldn't be any backward compatability problems.

19 years agoAdded a CmiState structure to communication thread, so it can
Orion Lawlor [Fri, 8 Mar 2002 00:52:27 +0000 (00:52 +0000)]
Added a CmiState structure to communication thread, so it can
call CmiMyPe (returns -1) and CmiMyRank (returns CmiMyNodeSize()).

19 years agoset inline_sources to yes.
Gengbin Zheng [Thu, 7 Mar 2002 22:22:08 +0000 (22:22 +0000)]
set inline_sources to yes.

19 years agoadd comment for converse message header fields.
Gengbin Zheng [Thu, 7 Mar 2002 05:24:57 +0000 (05:24 +0000)]
add comment for converse message header fields.

19 years agoMinor changes for Win32 machines.
Orion Lawlor [Thu, 7 Mar 2002 00:13:55 +0000 (00:13 +0000)]
Minor changes for Win32 machines.

19 years agoIn a static method, C++ picks up the wrong CkAbort-- it tries to
Orion Lawlor [Wed, 6 Mar 2002 17:23:21 +0000 (17:23 +0000)]
In a static method, C++ picks up the wrong CkAbort-- it tries to
use ArrayElement::CkAbort, but you want the global ::CkAbort.
Thus I've added an explicit override.

19 years agoReductions now can take a callback during the contribute call.
Orion Lawlor [Wed, 6 Mar 2002 17:05:21 +0000 (17:05 +0000)]
Reductions now can take a callback during the contribute call.
The old method is still supported for backward compatability.

19 years agoAdded callbacks section.
Orion Lawlor [Wed, 6 Mar 2002 17:03:16 +0000 (17:03 +0000)]
Added callbacks section.

19 years agoUpdates on new ways to do reductions (specifying a callback in
Orion Lawlor [Wed, 6 Mar 2002 17:03:04 +0000 (17:03 +0000)]
Updates on new ways to do reductions (specifying a callback in
the contribute call).

19 years agoAdded description of how to use CkCallback.
Orion Lawlor [Wed, 6 Mar 2002 17:02:26 +0000 (17:02 +0000)]
Added description of how to use CkCallback.

19 years agoAdded (terse) description of how printf, etc. output is now captured.
Orion Lawlor [Wed, 6 Mar 2002 17:01:57 +0000 (17:01 +0000)]
Added (terse) description of how printf, etc. output is now captured.

19 years agoDoxygen-ified comments.
Orion Lawlor [Wed, 6 Mar 2002 16:57:07 +0000 (16:57 +0000)]
Doxygen-ified comments.

19 years agoset alphabetical colume to 3.
Gengbin Zheng [Tue, 5 Mar 2002 20:50:11 +0000 (20:50 +0000)]
set alphabetical colume to 3.
and add bluegene into INPUT

19 years agoNow trap everything going to the terminal, via the odd hack of
Orion Lawlor [Mon, 4 Mar 2002 21:34:55 +0000 (21:34 +0000)]
Now trap everything going to the terminal, via the odd hack of
dup2'ing file descriptors 1 (stdout) and 2 (stderr) as the write
end of pipes we open.  This allows us to properly capture printfs,
fprintfs, uses of cout and cerr, and even raw "write(2,...)" calls,
such as the Fortran runtime generates.

These pipes have to be cleaned out fairly often, though, because a
pipe buffer is only 4K (and fixed in the kernel!).  Even worse, if
the pipe buffer overflows, the last write() call to it hangs until
our SIGALRM cleans out the pipe.  Glibc doesn't reliably recover from
this, so when there are lots of printouts some lines may be dropped.
There is a warning when this may have happened, though.

Tested and works on net-linux and net-linux-smp.  Should work with
gm and tcp versions, although these are untested.  Windows support
is unlikely, although supposedly possible.

19 years ago"printerrsync" is too long to fit in a ChMessageHeader, so
Orion Lawlor [Mon, 4 Mar 2002 21:30:13 +0000 (21:30 +0000)]
"printerrsync" is too long to fit in a ChMessageHeader, so
I've renamed it "printerrsyn".

19 years agoDon't trap SIGPIPE anymore. Catching SIGPIPE allows us to easily survive
Orion Lawlor [Mon, 4 Mar 2002 21:29:34 +0000 (21:29 +0000)]
Don't trap SIGPIPE anymore.  Catching SIGPIPE allows us to easily survive
a network disconnect; but also causes an infinite loop when the terminal
is disconnected.  Perhaps there's a way to disable SIGPIPE on a per-
socket basis...

19 years agopack/unpack for LBMigrateMsg need to be there even for the case when LBDB_ON is off.
Gengbin Zheng [Mon, 4 Mar 2002 16:03:02 +0000 (16:03 +0000)]
pack/unpack for LBMigrateMsg need to be there even for the case when LBDB_ON is off.

19 years agoextract MigrationMsg from all LB strategies.
Gengbin Zheng [Sun, 3 Mar 2002 23:55:03 +0000 (23:55 +0000)]
extract MigrationMsg from all LB strategies.
also Doxygen.

19 years agoremoved trace-none.
Gengbin Zheng [Sat, 2 Mar 2002 07:21:15 +0000 (07:21 +0000)]
removed trace-none.

19 years agomoved shared declaration in implementation into trace-common.h.
Gengbin Zheng [Sat, 2 Mar 2002 07:20:45 +0000 (07:20 +0000)]
moved shared declaration in implementation into  trace-common.h.

19 years agomore doxygen comments - add a module CkPerf;
Gengbin Zheng [Sat, 2 Mar 2002 06:33:35 +0000 (06:33 +0000)]
more doxygen comments - add a module CkPerf;
clean up the code in trace-summary.

19 years agoadded doxygen comments.
Gengbin Zheng [Sat, 2 Mar 2002 02:39:40 +0000 (02:39 +0000)]
added doxygen comments.

19 years agoadded Make install
Gengbin Zheng [Fri, 1 Mar 2002 22:50:57 +0000 (22:50 +0000)]
added Make install

19 years agoDoc is now generated in local directory.
Milind Bhandarkar [Fri, 1 Mar 2002 22:16:23 +0000 (22:16 +0000)]
Doc is now generated in local directory.

19 years agoNot all compilers (e.g., Absoft) support -freeform, so if
Orion Lawlor [Fri, 1 Mar 2002 19:41:25 +0000 (19:41 +0000)]
Not all compilers (e.g., Absoft) support -freeform, so if
it's really needed it should be put in conv-mach.sh.

19 years agodefined CmiYield for non smp version, compile CommunicationServer only for SMP version.
Gengbin Zheng [Fri, 1 Mar 2002 18:20:44 +0000 (18:20 +0000)]
defined CmiYield for non smp version, compile CommunicationServer only for SMP version.

19 years agomoved shared code into machine.h and pcqueue.h
Gengbin Zheng [Fri, 1 Mar 2002 08:08:59 +0000 (08:08 +0000)]
moved shared code into machine.h and pcqueue.h

19 years agodoxygen comments.
Gengbin Zheng [Fri, 1 Mar 2002 08:08:20 +0000 (08:08 +0000)]
doxygen comments.

19 years agoadded ck-libs and conv-core.
Gengbin Zheng [Fri, 1 Mar 2002 07:46:50 +0000 (07:46 +0000)]
added ck-libs and conv-core.

19 years agosimple Makefile for doxygen
Gengbin Zheng [Fri, 1 Mar 2002 07:43:27 +0000 (07:43 +0000)]
simple Makefile for doxygen

19 years agoREADME for doxygen
Gengbin Zheng [Fri, 1 Mar 2002 07:43:14 +0000 (07:43 +0000)]
README for doxygen

19 years agoadded doxygen comments.
Gengbin Zheng [Fri, 1 Mar 2002 04:01:37 +0000 (04:01 +0000)]
added doxygen comments.

19 years agodoxygen comments.
Gengbin Zheng [Fri, 1 Mar 2002 03:44:28 +0000 (03:44 +0000)]
doxygen comments.

19 years agowhen no message for comm thread, do a yield.
Gengbin Zheng [Fri, 1 Mar 2002 03:31:23 +0000 (03:31 +0000)]
when no message for comm thread, do a yield.

19 years agoModified comments to be acceptable to Doxygen.
Orion Lawlor [Fri, 1 Mar 2002 00:57:12 +0000 (00:57 +0000)]
Modified comments to be acceptable to Doxygen.

19 years agoAdded more verbose debugging messages-- a special version
Orion Lawlor [Thu, 28 Feb 2002 22:54:58 +0000 (22:54 +0000)]
Added more verbose debugging messages-- a special version
of CkAbort for array elements that prints out the faulting
array index and chare name, and more detail on out-of-bounds
array messages.

19 years agoAdded "CkPrintEntryMethod" and "CkPrintChareName" API calls,
Orion Lawlor [Thu, 28 Feb 2002 22:49:00 +0000 (22:49 +0000)]
Added "CkPrintEntryMethod" and "CkPrintChareName" API calls,
used to print a human-viewable version of entry and chare
indices.  This is mostly useful for debugging.

19 years agoAdded "-W132", enable 132-column source code, for f90.
Orion Lawlor [Thu, 28 Feb 2002 22:47:28 +0000 (22:47 +0000)]
Added "-W132", enable 132-column source code, for f90.
This is needed by most fixed-format source code, such
as that used by Geubelle's group.

19 years agoAdded fortran interface to NetFEM routines.
Orion Lawlor [Thu, 28 Feb 2002 22:46:12 +0000 (22:46 +0000)]
Added fortran interface to NetFEM routines.

19 years agoadd blue timing module compilation.
Gengbin Zheng [Thu, 28 Feb 2002 07:16:13 +0000 (07:16 +0000)]
add blue timing module compilation.

19 years agofix couple compiler errors.
Gengbin Zheng [Thu, 28 Feb 2002 07:13:05 +0000 (07:13 +0000)]
fix couple compiler errors.

19 years agoset node queue to 1.
Gengbin Zheng [Thu, 28 Feb 2002 06:12:08 +0000 (06:12 +0000)]
set node queue to 1.

19 years agoimplemented node queue.
Gengbin Zheng [Thu, 28 Feb 2002 06:10:40 +0000 (06:10 +0000)]
implemented node queue.

19 years agooxygen config file.
Gengbin Zheng [Thu, 28 Feb 2002 02:03:48 +0000 (02:03 +0000)]
oxygen config file.

19 years agoFor vmi, fixed the check for prefix of mpicc when overridding the compiler.
Gengbin Zheng [Wed, 27 Feb 2002 04:12:13 +0000 (04:12 +0000)]
For vmi, fixed the check for prefix of mpicc when overridding the compiler.

19 years agoadded multiple pcqueue for each worker thread, although I don't find any problem...
Gengbin Zheng [Tue, 26 Feb 2002 19:35:46 +0000 (19:35 +0000)]
added multiple pcqueue for each worker thread, although I don't find any problem for one queue for all worker threads.

19 years agoadded PTHREAD_HACK macro
Gengbin Zheng [Tue, 26 Feb 2002 16:33:28 +0000 (16:33 +0000)]
added PTHREAD_HACK macro

19 years agosmp for mpi-origin.
Gengbin Zheng [Tue, 26 Feb 2002 08:02:42 +0000 (08:02 +0000)]
smp for mpi-origin.

19 years agoconv-mach-smp.
Gengbin Zheng [Tue, 26 Feb 2002 08:01:49 +0000 (08:01 +0000)]
conv-mach-smp.

19 years agomake charmrun script recorgnize +ppn
Gengbin Zheng [Tue, 26 Feb 2002 07:32:03 +0000 (07:32 +0000)]
make charmrun script recorgnize +ppn

19 years agodefine CMK_SMP
Gengbin Zheng [Tue, 26 Feb 2002 07:03:48 +0000 (07:03 +0000)]
define CMK_SMP

19 years agoconv-mach for smp.
Gengbin Zheng [Tue, 26 Feb 2002 06:36:40 +0000 (06:36 +0000)]
conv-mach for smp.

19 years agogather Common.util.
Gengbin Zheng [Tue, 26 Feb 2002 06:22:43 +0000 (06:22 +0000)]
gather Common.util.

19 years agochecked in smp + mpi version. added an integer in message header.
Gengbin Zheng [Tue, 26 Feb 2002 06:22:11 +0000 (06:22 +0000)]
checked in smp + mpi version. added an integer in message header.

19 years agoCommon.util: utilities for all machine files.
Gengbin Zheng [Tue, 26 Feb 2002 06:00:12 +0000 (06:00 +0000)]
Common.util: utilities for all machine files.

19 years agomake it compile again - updated to new array index syntax
Gengbin Zheng [Fri, 22 Feb 2002 01:04:01 +0000 (01:04 +0000)]
make it compile again - updated to new array index syntax

19 years agoAdded pupf.h header.
Orion Lawlor [Thu, 21 Feb 2002 22:19:14 +0000 (22:19 +0000)]
Added pupf.h header.

19 years agoAdded a non-module version of the pup routines.
Orion Lawlor [Thu, 21 Feb 2002 22:18:44 +0000 (22:18 +0000)]
Added a non-module version of the pup routines.

19 years agoFixed path.
Gunavardhan Kakulapati [Thu, 21 Feb 2002 17:55:26 +0000 (17:55 +0000)]
Fixed path.

19 years agoadded several timing correction methods
Arun Singla [Thu, 21 Feb 2002 06:06:59 +0000 (06:06 +0000)]
added several timing correction methods

19 years agoinsert allows insertion into a slot beyond the current queue.
Gengbin Zheng [Thu, 21 Feb 2002 01:06:51 +0000 (01:06 +0000)]
insert allows insertion into a slot beyond the current queue.

19 years agoadded an insert() for CkQ for insertion of an element in a queue, it is convenient...
Gengbin Zheng [Thu, 21 Feb 2002 01:01:30 +0000 (01:01 +0000)]
added an insert() for CkQ for insertion of an element in a queue, it is convenient for timeline log processing or priority queue for example.

19 years agoadded new field: dstPe in timing log.
Gengbin Zheng [Thu, 21 Feb 2002 00:17:49 +0000 (00:17 +0000)]
added new field: dstPe in timing log.

19 years agoAdded #define AMPI so people can make portable sources; and
Orion Lawlor [Wed, 20 Feb 2002 19:19:26 +0000 (19:19 +0000)]
Added #define AMPI so people can make portable sources; and
added definition for AMPI_SUCCESS (standard value of zero).

19 years agoadded ++startpe for SCYLD for specifying the start slave pe.
Gengbin Zheng [Wed, 20 Feb 2002 19:08:38 +0000 (19:08 +0000)]
added ++startpe for SCYLD for specifying the start slave pe.

19 years agofixed a stupid bug.
Milind Bhandarkar [Wed, 20 Feb 2002 17:46:40 +0000 (17:46 +0000)]
fixed a stupid bug.

19 years agoddt should copy the received bytes instead of expected bytes.
Milind Bhandarkar [Wed, 20 Feb 2002 17:39:14 +0000 (17:39 +0000)]
ddt should copy the received bytes instead of expected bytes.

19 years agoit is okay to receive a smaller message than the buffer size.
Milind Bhandarkar [Wed, 20 Feb 2002 17:35:57 +0000 (17:35 +0000)]
it is okay to receive a smaller message than the buffer size.

19 years agoAdded ssend and issend that default to send and isend respectively.,
Milind Bhandarkar [Wed, 20 Feb 2002 17:21:47 +0000 (17:21 +0000)]
Added ssend and issend that default to send and isend respectively.,

19 years agoAdded ampi_wait and ampi_waitany
Milind Bhandarkar [Wed, 20 Feb 2002 17:14:55 +0000 (17:14 +0000)]
Added ampi_wait and ampi_waitany

19 years agoRemoved debugging 100ms-cleanings; back to old 1-minute cleanings.
Orion Lawlor [Wed, 20 Feb 2002 14:30:05 +0000 (14:30 +0000)]
Removed debugging 100ms-cleanings; back to old 1-minute cleanings.
On slow machines, frequent cleanings cause spurious errors, because
messages for array elements that are soon to be created become stale.

19 years agoadd two more fields in bluegene header for timing module.
Gengbin Zheng [Wed, 20 Feb 2002 07:28:19 +0000 (07:28 +0000)]
add two more fields in bluegene header for timing module.

19 years agoadd use of timing module in bg emulator.
Gengbin Zheng [Wed, 20 Feb 2002 07:26:29 +0000 (07:26 +0000)]
add use of timing module in bg emulator.

19 years agochecked in bluegene timing module.
Gengbin Zheng [Wed, 20 Feb 2002 07:23:40 +0000 (07:23 +0000)]
checked in bluegene timing module.

19 years agobluegene timing module header file.
Gengbin Zheng [Tue, 19 Feb 2002 21:50:53 +0000 (21:50 +0000)]
bluegene timing module header file.

19 years agopretty much, final version of BlueGene emulator on Charm++
Arun Singla [Tue, 19 Feb 2002 20:28:44 +0000 (20:28 +0000)]
pretty much, final version of BlueGene emulator on Charm++

19 years agodisable rdtsc timer.
Gengbin Zheng [Tue, 19 Feb 2002 19:33:55 +0000 (19:33 +0000)]
disable rdtsc timer.

19 years agoSilly but deadly bug in element deletion-- reclaimRemote deleted the
Orion Lawlor [Tue, 19 Feb 2002 17:26:00 +0000 (17:26 +0000)]
Silly but deadly bug in element deletion-- reclaimRemote deleted the
remote record; but left the record pointer in the hash table!
Added a "removeFromTable" method which does a (paranoid) hashtable
remove.

19 years agoadd -instance to LDXX too.
Gengbin Zheng [Mon, 18 Feb 2002 23:30:16 +0000 (23:30 +0000)]
add -instance to LDXX too.

19 years agouse -instances for SUN's mpCC compilers to move instances of templates into object...
Gengbin Zheng [Mon, 18 Feb 2002 22:29:12 +0000 (22:29 +0000)]
use -instances for SUN's mpCC compilers to move instances of templates into object files from SunWS_cache/

19 years agoAdded converse.h include for CmiTrue, which is not visible unless
Orion Lawlor [Mon, 18 Feb 2002 19:37:28 +0000 (19:37 +0000)]
Added converse.h include for CmiTrue, which is not visible unless
somebody else has already included converse.h.
I intensely dislike CmiTrue.  Just thought you aught to know.