charm.git
19 years agoForgot a return value.
Orion Lawlor [Thu, 13 Dec 2001 23:48:56 +0000 (23:48 +0000)]
Forgot a return value.

19 years agoconst before return type caused tons of warnings for pgCC, which is said to be useless.
Gengbin Zheng [Thu, 13 Dec 2001 23:34:23 +0000 (23:34 +0000)]
const before return type caused tons of warnings for pgCC, which is said to be useless.

19 years agochanged vmi.sh, so that it will take whatever other compiler(pgcc)'s settings.
Gengbin Zheng [Thu, 13 Dec 2001 23:27:42 +0000 (23:27 +0000)]
changed vmi.sh, so that it will take whatever other compiler(pgcc)'s settings.

19 years agoCmiGetArgString ignored the case when the +arg is at the last args, in which case...
Gengbin Zheng [Thu, 13 Dec 2001 22:37:10 +0000 (22:37 +0000)]
CmiGetArgString ignored the case when the +arg is at the last args, in which case it should report error about incomplete argument.

19 years agoremoved ckInsert for CProxySection.
Gengbin Zheng [Thu, 13 Dec 2001 22:15:56 +0000 (22:15 +0000)]
removed ckInsert for CProxySection.

19 years agocheck ifdef CMK_OPTIMIZE instead of if CMK_OPTIMIZE
Gengbin Zheng [Thu, 13 Dec 2001 22:03:23 +0000 (22:03 +0000)]
check ifdef CMK_OPTIMIZE instead of if CMK_OPTIMIZE

19 years agochanged $< to the real file name, this fix the weird Make on axp.
Gengbin Zheng [Thu, 13 Dec 2001 21:16:21 +0000 (21:16 +0000)]
changed $< to the real file name, this fix the weird Make on axp.

19 years agofixed path for vmi.
Gengbin Zheng [Thu, 13 Dec 2001 20:52:07 +0000 (20:52 +0000)]
fixed path for vmi.

19 years agoupdate charmconfig.
Gengbin Zheng [Thu, 13 Dec 2001 20:35:24 +0000 (20:35 +0000)]
update charmconfig.

19 years agocheck sys/mman.h
Gengbin Zheng [Thu, 13 Dec 2001 20:32:01 +0000 (20:32 +0000)]
check sys/mman.h

19 years agoadd check for sys/mman.h
Gengbin Zheng [Thu, 13 Dec 2001 20:31:26 +0000 (20:31 +0000)]
add check for sys/mman.h

19 years agonew version, using CProxySection instead of a pointer.
Gengbin Zheng [Thu, 13 Dec 2001 20:14:35 +0000 (20:14 +0000)]
new version, using CProxySection instead of a pointer.

19 years agofix a comment.
Gengbin Zheng [Thu, 13 Dec 2001 20:10:29 +0000 (20:10 +0000)]
fix a comment.

19 years agofixed some linking error with nodefault library option.
Gengbin Zheng [Thu, 13 Dec 2001 18:41:33 +0000 (18:41 +0000)]
fixed some linking error with nodefault library option.

19 years agoSeveral major changes:
Orion Lawlor [Thu, 13 Dec 2001 18:39:59 +0000 (18:39 +0000)]
Several major changes:
-Moved reduction information into its own file (and subsection)
-Separated "Advanced Arrays" (all the special features and details)
from "Basic Arrays" (the least you have to know)
-Added documentation on new creation semantics and CkCreateOptions.

19 years agoMoved this section here from the arrays section.
Orion Lawlor [Thu, 13 Dec 2001 18:38:24 +0000 (18:38 +0000)]
Moved this section here from the arrays section.
Reductions can be applied in places other than arrays.

19 years agoadded verbose for -balancer.
Gengbin Zheng [Thu, 13 Dec 2001 18:06:17 +0000 (18:06 +0000)]
added verbose for -balancer.

19 years agoadd CMK_LINUX_PTHREAD_HACK
Gengbin Zheng [Thu, 13 Dec 2001 03:13:54 +0000 (03:13 +0000)]
add CMK_LINUX_PTHREAD_HACK

19 years agoadd -balancer for charmc, and -balancer for runtime.
Gengbin Zheng [Thu, 13 Dec 2001 03:07:44 +0000 (03:07 +0000)]
add -balancer for charmc, and -balancer for runtime.
In LBDatabase, use registry table to maintain all available load balancers.
in all *LB, lbinit don't create load balancer, but register to the LBDatabase instead.

19 years agomove PTHREAD_HACK from conv-mach.h to conv-mach-smp.h
Gengbin Zheng [Wed, 12 Dec 2001 22:57:58 +0000 (22:57 +0000)]
move PTHREAD_HACK from conv-mach.h to conv-mach-smp.h

19 years agomove pthread hack from Common.net to threads.c
Gengbin Zheng [Wed, 12 Dec 2001 21:20:28 +0000 (21:20 +0000)]
move pthread hack from Common.net to threads.c

19 years agoBack to gathertree for pgms-- the single, top-level softlink
Orion Lawlor [Wed, 12 Dec 2001 20:06:40 +0000 (20:06 +0000)]
Back to gathertree for pgms-- the single, top-level softlink
works everywhere except win32.

19 years agoChanged -L test to -r, because -L doesn't exist on many machines.
Orion Lawlor [Wed, 12 Dec 2001 16:02:01 +0000 (16:02 +0000)]
Changed -L test to -r, because -L doesn't exist on many machines.

19 years agoremoved all '^M's for net-irix
Gengbin Zheng [Wed, 12 Dec 2001 15:56:40 +0000 (15:56 +0000)]
removed all '^M's for net-irix

19 years agomiss a '.' in gatherflat .vdir
Gengbin Zheng [Wed, 12 Dec 2001 15:53:09 +0000 (15:53 +0000)]
miss a '.' in gatherflat .vdir

19 years agoFixed silly bug in registration of user-defined reducer functions.
Orion Lawlor [Wed, 12 Dec 2001 00:03:53 +0000 (00:03 +0000)]
Fixed silly bug in registration of user-defined reducer functions.
Now the initial length of the reducer function table is maintained
automatically via the reducerType enum.

19 years agouse the path on platinum for convenience.
Gengbin Zheng [Tue, 11 Dec 2001 23:14:41 +0000 (23:14 +0000)]
use the path on platinum for convenience.

19 years agoAdded CmiIsomalloc documentation (CmiIsomalloc is a generalization of
Orion Lawlor [Tue, 11 Dec 2001 22:06:11 +0000 (22:06 +0000)]
Added CmiIsomalloc documentation (CmiIsomalloc is a generalization of
CMK_THREADS_USE_ISOMALLOC same-virtual-address-everywhere thread stacks).

19 years agoAdded CthCreateMigratable documentation. (CthCreateMigratable enables
Orion Lawlor [Tue, 11 Dec 2001 22:05:09 +0000 (22:05 +0000)]
Added CthCreateMigratable documentation. (CthCreateMigratable enables
isomalloc'd thread stacks).

19 years agoSlight tweak to allow sync methods taking void to work.
Orion Lawlor [Tue, 11 Dec 2001 21:40:43 +0000 (21:40 +0000)]
Slight tweak to allow sync methods taking void to work.
Previously, the generated code for the call function looked like:

{
  int impl_ref = CkGetRefNum(impl_msg), impl_src = CkGetSrcPe(impl_msg);
  void *impl_retMsg=(void *)   CkFreeSysMsg(impl_msg);
  impl_obj->testVoid();
  CkSendToFuture(impl_ref, impl_retMsg, impl_src);
}

which of course doesn't even compile because the CkFreeSysMsg is
in the wrong place. Now it looks like:

{
  int impl_ref = CkGetRefNum(impl_msg), impl_src = CkGetSrcPe(impl_msg);
  CkFreeSysMsg(impl_msg);
  void *impl_retMsg=(void *)   impl_obj->testVoid();
  CkSendToFuture(impl_ref, impl_retMsg, impl_src);
}

19 years agoRemoved much obsolete material (download steps, build procedure);
Orion Lawlor [Tue, 11 Dec 2001 20:57:27 +0000 (20:57 +0000)]
Removed much obsolete material (download steps, build procedure);
added new facts (standalone network versions, -module charmc option);
and reorganized so the critical information is presented first.

19 years agoMinor rewording; a few updates (like "net-linux-smp" becoming "net-linux smp").
Orion Lawlor [Tue, 11 Dec 2001 20:53:42 +0000 (20:53 +0000)]
Minor rewording; a few updates (like "net-linux-smp" becoming "net-linux smp").

19 years agoJust point to doc and pgms, rather than recursive soft-linking them.
Orion Lawlor [Tue, 11 Dec 2001 20:52:57 +0000 (20:52 +0000)]
Just point to doc and pgms, rather than recursive soft-linking them.
This should eliminate some of people's confusion regarding
what goes where.

19 years agoMake soft links to the current version's bin, lib, and include directories.
Orion Lawlor [Tue, 11 Dec 2001 20:52:10 +0000 (20:52 +0000)]
Make soft links to the current version's bin, lib, and include directories.
This should make it easier for people to find charmc, and makes it
easier to describe the layout of the charm directory.

19 years agoMade smp a build-time option.
Orion Lawlor [Mon, 10 Dec 2001 21:05:20 +0000 (21:05 +0000)]
Made smp a build-time option.

19 years agoMade smp a build option for win32.
Orion Lawlor [Mon, 10 Dec 2001 21:04:46 +0000 (21:04 +0000)]
Made smp a build option for win32.

19 years agofixed some typo
Gengbin Zheng [Sun, 9 Dec 2001 05:01:17 +0000 (05:01 +0000)]
fixed some typo

19 years agomore changes for array section.
Gengbin Zheng [Sun, 9 Dec 2001 02:24:54 +0000 (02:24 +0000)]
more changes for array section.

19 years agoadded more in array section manual
Gengbin Zheng [Sun, 9 Dec 2001 00:52:08 +0000 (00:52 +0000)]
added more in array section manual

19 years agoadded section manual
Gengbin Zheng [Sat, 8 Dec 2001 23:59:15 +0000 (23:59 +0000)]
added section manual

19 years agoadded error check for user multicast message inherit;
Gengbin Zheng [Sat, 8 Dec 2001 19:38:06 +0000 (19:38 +0000)]
added error check for user multicast message inherit;
now proxy or the sectionID can migrate to other pes.

19 years agomostly name changes.
Gengbin Zheng [Sat, 8 Dec 2001 19:35:41 +0000 (19:35 +0000)]
mostly name changes.

19 years agoAdded ability to register a set of global variables, which are
Orion Lawlor [Fri, 7 Dec 2001 23:53:46 +0000 (23:53 +0000)]
Added ability to register a set of global variables, which are
pup'd into a buffer on processor 0 after init, and pup'd out
on every other node.  The implementation needs work-- there is
much data duplication and potential for race conditions.

19 years agoAdded global variable registrations.
Orion Lawlor [Fri, 7 Dec 2001 23:52:05 +0000 (23:52 +0000)]
Added global variable registrations.
This makes the program a good deal more flexible and cleaner.

19 years agoAdded ability to determine if an address is managed by Isomalloc.
Orion Lawlor [Fri, 7 Dec 2001 23:51:04 +0000 (23:51 +0000)]
Added ability to determine if an address is managed by Isomalloc.

19 years agoMoved footnotes at the end of sentences after the period.
Jayant DeSouza [Fri, 7 Dec 2001 22:03:16 +0000 (22:03 +0000)]
Moved footnotes at the end of sentences after the period.

19 years agoFixed a typo.
Jayant DeSouza [Fri, 7 Dec 2001 22:00:23 +0000 (22:00 +0000)]
Fixed a typo.

19 years agoFixed more typos, did a spell-check.
Jayant DeSouza [Fri, 7 Dec 2001 21:51:59 +0000 (21:51 +0000)]
Fixed more typos, did a spell-check.

19 years agodefine a ckNew() for section
Gengbin Zheng [Fri, 7 Dec 2001 21:37:59 +0000 (21:37 +0000)]
define a ckNew() for section

19 years agoFixed a couple of typos.
Jayant DeSouza [Fri, 7 Dec 2001 21:33:10 +0000 (21:33 +0000)]
Fixed a couple of typos.

19 years agoAdded credits (Sanjeev and self) for original interface translator
Jayant DeSouza [Fri, 7 Dec 2001 21:32:33 +0000 (21:32 +0000)]
Added credits (Sanjeev and self) for original interface translator
work.

19 years agoRemoved duplicate EveryLB entry (grrr...).
Orion Lawlor [Fri, 7 Dec 2001 21:08:54 +0000 (21:08 +0000)]
Removed duplicate EveryLB entry (grrr...).

19 years agoExtra backslash causes syntax error on o2k's make.
Orion Lawlor [Fri, 7 Dec 2001 20:12:00 +0000 (20:12 +0000)]
Extra backslash causes syntax error on o2k's make.

19 years agoForgot a "super::".
Orion Lawlor [Fri, 7 Dec 2001 20:02:06 +0000 (20:02 +0000)]
Forgot a "super::".

19 years agoAdded EveryLB build commands.
Orion Lawlor [Fri, 7 Dec 2001 19:07:51 +0000 (19:07 +0000)]
Added EveryLB build commands.

19 years agoAdded module "EveryLB", which is a convenient way to link in
Orion Lawlor [Fri, 7 Dec 2001 19:07:11 +0000 (19:07 +0000)]
Added module "EveryLB", which is a convenient way to link in
all existing load balancers.

19 years agoFixed multiple inheritance bug (you have to explicitly overload
Orion Lawlor [Fri, 7 Dec 2001 19:06:17 +0000 (19:06 +0000)]
Fixed multiple inheritance bug (you have to explicitly overload
all operators defined in the superclass) and const-correctness.

19 years agouse -module CkMulticast
Gengbin Zheng [Fri, 7 Dec 2001 06:21:20 +0000 (06:21 +0000)]
use -module CkMulticast

19 years agochanged to -module new feature.
Gengbin Zheng [Fri, 7 Dec 2001 06:20:26 +0000 (06:20 +0000)]
changed to -module new feature.

19 years agofixed a few things with Orion's new changes.
Gengbin Zheng [Fri, 7 Dec 2001 05:50:55 +0000 (05:50 +0000)]
fixed a few things with Orion's new changes.

19 years agoname changes.
Gengbin Zheng [Fri, 7 Dec 2001 05:47:50 +0000 (05:47 +0000)]
name changes.

19 years agofixed a few things after Orion's new things. also separate section cookie from sectionID.
Gengbin Zheng [Fri, 7 Dec 2001 05:46:39 +0000 (05:46 +0000)]
fixed a few things after Orion's new things. also separate section cookie from sectionID.

19 years agoAdded FEM_Attach prototype.
Orion Lawlor [Thu, 6 Dec 2001 23:44:24 +0000 (23:44 +0000)]
Added FEM_Attach prototype.

19 years agoReplaced annoying print_partition with more reasonable print.
Orion Lawlor [Thu, 6 Dec 2001 23:38:19 +0000 (23:38 +0000)]
Replaced annoying print_partition with more reasonable print.

19 years agoChanged silly Sun-specific makefile path to generic $(MAKE)
Orion Lawlor [Thu, 6 Dec 2001 23:37:58 +0000 (23:37 +0000)]
Changed silly Sun-specific makefile path to generic $(MAKE)

19 years agoAdded CsdPeriodic call, updated for new Ccd conditions.
Orion Lawlor [Thu, 6 Dec 2001 23:37:34 +0000 (23:37 +0000)]
Added CsdPeriodic call, updated for new Ccd conditions.

19 years agoAdded ConverseExit, which is called from init.C
Orion Lawlor [Thu, 6 Dec 2001 23:37:22 +0000 (23:37 +0000)]
Added ConverseExit, which is called from init.C

19 years agoHandle EAGAIN gracefully, rather than aborting.
Orion Lawlor [Thu, 6 Dec 2001 23:37:12 +0000 (23:37 +0000)]
Handle EAGAIN gracefully, rather than aborting.

19 years agoCharmrun now passes ++debug down to machine.c, which
Orion Lawlor [Thu, 6 Dec 2001 23:36:56 +0000 (23:36 +0000)]
Charmrun now passes ++debug down to machine.c, which
interprets it the same as a +truecrash.  We do this because
CmiAbort really should jump into the debugger if it's running,
not just exit.

19 years agoMoved old Fortran prototypes into the new charm-api.h style.
Orion Lawlor [Thu, 6 Dec 2001 23:36:38 +0000 (23:36 +0000)]
Moved old Fortran prototypes into the new charm-api.h style.

19 years agoAdded direct support for link-time modules. To make your
Orion Lawlor [Thu, 6 Dec 2001 23:36:18 +0000 (23:36 +0000)]
Added direct support for link-time modules.  To make your
Charm++ library "foo" linkable with "-module foo", name the
central .ci file's module "foo" and name your output file
"libmodulefoo.a".  Your library's initcalls, readonlys, entry
points, chares, etc. will be automatically registered at
charm init time.

The registration is done by building a tiny "moduleinit.C"
file right here in charmc.  The file includes calls to all
the current "-module" initializations and gets called from
Charm++'s init.C.

This allows many of what used to be xenophobic languages
(AMPI, FEM, Mblock) to become cosmopolitan libraries.
The old -language options are still supported for backward
compatability.

19 years agoMany updates:
Orion Lawlor [Thu, 6 Dec 2001 23:36:05 +0000 (23:36 +0000)]
Many updates:
-Capitalized TSM, SM, PVM to avoid silly built-in rules
-Moved AMPI makefile into libs/ck-libs/ampi
-Build fmain.o for origin2000
-Added Converse isomalloc routines
-Module-ized load balancers (& added script to generate them)

19 years agoTiny change to improve dependencies.
Orion Lawlor [Thu, 6 Dec 2001 23:35:48 +0000 (23:35 +0000)]
Tiny change to improve dependencies.

19 years agoCkGroupID is no longer interchangable with "int".
Orion Lawlor [Thu, 6 Dec 2001 23:35:37 +0000 (23:35 +0000)]
CkGroupID is no longer interchangable with "int".

19 years agoCompatability routines to prevent linker errors if the
Orion Lawlor [Thu, 6 Dec 2001 23:35:22 +0000 (23:35 +0000)]
Compatability routines to prevent linker errors if the
user doesn't define, e.g., a Fortran init. routine.

19 years agoFixed compile(r) error with Microsoft Visual C++.
Orion Lawlor [Thu, 6 Dec 2001 23:34:52 +0000 (23:34 +0000)]
Fixed compile(r) error with Microsoft Visual C++.

19 years agoAdded MBLK_Attach, to attach a new MBLK to an existing
Orion Lawlor [Thu, 6 Dec 2001 23:34:39 +0000 (23:34 +0000)]
Added MBLK_Attach, to attach a new MBLK to an existing
TCharm array

19 years agoCompatability routines to prevent linker errors if the
Orion Lawlor [Thu, 6 Dec 2001 23:34:00 +0000 (23:34 +0000)]
Compatability routines to prevent linker errors if the
user doesn't define, e.g., mesh_updated.

19 years agoAdded FEM_Attach, to attach a new FEM array to an
Orion Lawlor [Thu, 6 Dec 2001 23:33:31 +0000 (23:33 +0000)]
Added FEM_Attach, to attach a new FEM array to an
existing TCharm array.

19 years agoMoved thread maintainance code to TCharm library;
Orion Lawlor [Thu, 6 Dec 2001 23:33:19 +0000 (23:33 +0000)]
Moved thread maintainance code to TCharm library;
general cleanup for co-existence with other libraries.

19 years agoMinor changes to make fem a linkable module.
Orion Lawlor [Thu, 6 Dec 2001 23:32:41 +0000 (23:32 +0000)]
Minor changes to make fem a linkable module.

19 years agoUse charm-api.h instead of our own FTN_NAME.
Orion Lawlor [Thu, 6 Dec 2001 23:32:30 +0000 (23:32 +0000)]
Use charm-api.h instead of our own FTN_NAME.

19 years agoRemoved unused class declaration, which was causing warnings.
Orion Lawlor [Thu, 6 Dec 2001 23:32:14 +0000 (23:32 +0000)]
Removed unused class declaration, which was causing warnings.

19 years agoRemoved "typedef bool boolean", which horribly confused
Orion Lawlor [Thu, 6 Dec 2001 23:31:51 +0000 (23:31 +0000)]
Removed "typedef bool boolean", which horribly confused
Microsoft VC++'s (stupid) headers.

19 years agoMinor changes to make collide a linkable module.
Orion Lawlor [Thu, 6 Dec 2001 23:31:38 +0000 (23:31 +0000)]
Minor changes to make collide a linkable module.

19 years agoMoved to converse core.
Orion Lawlor [Thu, 6 Dec 2001 23:30:55 +0000 (23:30 +0000)]
Moved to converse core.

19 years agoMoved to src/Common/libs/ck-libs/ampi.
Orion Lawlor [Thu, 6 Dec 2001 23:29:52 +0000 (23:29 +0000)]
Moved to src/Common/libs/ck-libs/ampi.

19 years agoMoved here from src/Common/langs/ampi to reflect reality-- ampi
Orion Lawlor [Thu, 6 Dec 2001 23:28:59 +0000 (23:28 +0000)]
Moved here from src/Common/langs/ampi to reflect reality-- ampi
can coexist with anything else, and is hence a library, not a language.
General co-existance cleanup.
Modified to use TCharm thread management.

19 years agoOverridable routines, defining the default user-setups.
Orion Lawlor [Thu, 6 Dec 2001 23:27:25 +0000 (23:27 +0000)]
Overridable routines, defining the default user-setups.

19 years agoSelects between the Fortran and C++ startup routines (AMPI_Setup or ampi_setup).
Orion Lawlor [Thu, 6 Dec 2001 23:27:00 +0000 (23:27 +0000)]
Selects between the Fortran and C++ startup routines (AMPI_Setup or ampi_setup).

19 years agoNow that AMPI's a library, it has its own makefile.
Orion Lawlor [Thu, 6 Dec 2001 23:26:31 +0000 (23:26 +0000)]
Now that AMPI's a library, it has its own makefile.

19 years agoNow integrated into ampi.C
Orion Lawlor [Thu, 6 Dec 2001 23:25:50 +0000 (23:25 +0000)]
Now integrated into ampi.C

19 years agoMinor changes to make barrier a linkable module.
Orion Lawlor [Thu, 6 Dec 2001 23:21:34 +0000 (23:21 +0000)]
Minor changes to make barrier a linkable module.

19 years agoTCharm: manages a CthThread's creation, load balacing,
Orion Lawlor [Thu, 6 Dec 2001 23:21:09 +0000 (23:21 +0000)]
TCharm: manages a CthThread's creation, load balacing,
migration, and shutdown.  Used as a "framework framework"
by FEM, AMPI, and MBlock.

19 years agoNetFEM: a way to easily export data from a running
Orion Lawlor [Thu, 6 Dec 2001 23:20:33 +0000 (23:20 +0000)]
NetFEM: a way to easily export data from a running
FEcvs ci computation for online analysis/steering.
Registers a CCS handler that reports the most recently-
registered data.

19 years agoAdded new libraries: tcharm, ampi, netfem
Orion Lawlor [Thu, 6 Dec 2001 23:18:16 +0000 (23:18 +0000)]
Added new libraries: tcharm, ampi, netfem

19 years agoOrigin2000 demands a Fortran main routine if any Fortran
Orion Lawlor [Thu, 6 Dec 2001 23:18:01 +0000 (23:18 +0000)]
Origin2000 demands a Fortran main routine if any Fortran
code is included.

19 years agoMoved CthIsomalloc support out (to isomalloc.c).
Orion Lawlor [Thu, 6 Dec 2001 23:17:21 +0000 (23:17 +0000)]
Moved CthIsomalloc support out (to isomalloc.c).
Added CmiIsomalloc-stack support for QT and setcontext
thread types.

19 years agoMade it legal to CmmFree(NULL) (more C++ standards conformance).
Orion Lawlor [Thu, 6 Dec 2001 23:17:06 +0000 (23:17 +0000)]
Made it legal to CmmFree(NULL) (more C++ standards conformance).
Fixed incorrect (packing==deleting) assumption in CmmPup.

19 years agoAdded CmiIsomalloc, which collects the isomalloc
Orion Lawlor [Thu, 6 Dec 2001 23:16:50 +0000 (23:16 +0000)]
Added CmiIsomalloc, which collects the isomalloc
functionality from threads.c and presents a more
generally useful interface.  Isomalloc is currently
only used for thread stacks; but it's a nice solution
to the general problem of moving highly interlinked
data structures.

One thing missing from the old implementation is
address-space stealing.  This is tough to do in a
non-threaded context; although a proactive strategy
might be possible.