charm.git
2 years agoBug #1688: Core Dump file not available unless `--disable-charmdebug` is used while... 78/5078/2
Kavitha Chandrasekar [Thu, 11 Apr 2019 18:54:03 +0000 (13:54 -0500)]
Bug #1688: Core Dump file not available unless `--disable-charmdebug` is used while building.

Generate core dump files when charm is built without --with-production option
or if CmiNumNodes()<=32. Added to netlrts, mpi and verbs builds.

Change-Id: I97dbbfec7aa41604e898a042b8154c5ad23f3c16

2 years agoDefine CMK_TYPEDEF_{INT1,UINT1} for layers without <stdint.h> 81/5081/1
Nitin Bhat [Fri, 12 Apr 2019 15:50:47 +0000 (10:50 -0500)]
Define CMK_TYPEDEF_{INT1,UINT1} for layers without <stdint.h>

These layers include multicore-arm7, mulicore-arm8, pami-bluegeneq,
and pami-linux-ppc64le.

Change-Id: I10d32b6d0f56d17964bed614a077a84467ef776c

2 years agoAdd cmaMsgType field in the converse message header of some layers 77/5077/2
Nitin Bhat [Thu, 11 Apr 2019 18:57:29 +0000 (13:57 -0500)]
Add cmaMsgType field in the converse message header of some layers

The original change is
https://charm.cs.illinois.edu/gerrit/c/charm/+/4924. This change adds
the field to other machine layers that were missed out in the original patch.

Change-Id: Ib33bda727077081d489c4fe374d6a89e75859e1d

2 years agoZcpy Bcast Send API: Guard ZC API macros for non-RDMA layers 76/5076/2
Nitin Bhat [Thu, 11 Apr 2019 18:24:44 +0000 (13:24 -0500)]
Zcpy Bcast Send API: Guard ZC API macros for non-RDMA layers

Change-Id: I7d97a948ce5fc8a3b4ee9be06f088fd06bd5f7ad

2 years agoZcpy Bcast Send API : Send singleton chare messages as a P2P message 75/5075/2
Nitin Bhat [Thu, 11 Apr 2019 17:33:08 +0000 (12:33 -0500)]
Zcpy Bcast Send API : Send singleton chare messages as a P2P message

Change-Id: Ia1b94f9671e4f2008852bcc20f1f91b670503d30

2 years agoZcpy Bcast Send API: Fix condition for marking BCAST messages 74/5074/2
Nitin Bhat [Thu, 11 Apr 2019 16:33:53 +0000 (11:33 -0500)]
Zcpy Bcast Send API: Fix condition for marking BCAST messages

Change-Id: I2c4be8705dc7aa02459f7ad51484a2f847bfbd27

2 years agoFix compiler warnings thrown by Zero Copy API patches merged so far 72/5072/1
Nitin Bhat [Wed, 10 Apr 2019 21:25:45 +0000 (16:25 -0500)]
Fix compiler warnings thrown by Zero Copy API patches merged so far

Change-Id: Ic2203d9a62553f252266060cfb44199c7bc5cb3c

2 years agoDo not setObjPtr for nodegroup messages 10/4910/13
Nitin Bhat [Fri, 18 Jan 2019 21:58:44 +0000 (15:58 -0600)]
Do not setObjPtr for nodegroup messages

Previously, on receiving nodegroup messages, 'setObjPtr' was called
to set the local object pointer in the received message. This was later
used to invoke the entry method on the local object (by calling
'getObjPtr'). Calling 'setObjPtr' sets the ptr field in the union
variable called 'type', overwriting the CkGroupID field of the union.

For supporting the Zerocopy Post API for nodegroups, this CkGroupID field
was necessary to be retained correctly in the envelope. For this reason,
this patch does not call 'setObjPtr' and instead directly passes the local obj
ptr to 'invokeEntry' method without having the need to set/get the local
obj pointer in the envelope. Additionally, nodegroup messages do not
have their type set to 'ForChareMsg' anymore and the function
'_processForChareMsg' is removed from the code as it is no longer used.

Change-Id: Id2eb75e9f08719d8c9e2f42261abf711e25694c4

2 years agoDisable CMK_ONESIDED_IMPL for pamilrts-bluegeneq 40/5040/6
Nitin Bhat [Mon, 25 Mar 2019 18:03:12 +0000 (13:03 -0500)]
Disable CMK_ONESIDED_IMPL for pamilrts-bluegeneq

The zerocopy broadcast API fails during the zerocopy transfer of
large readonly variables, with the following error:
/bgsys/source/srcV1R2M4.29840/comm/sys/buildtools/pami/components/
devices/shmem/shaddr/BgqShaddr.h<330> .. Kernel_Physical2Virtual(), rc = 2

Previously, CMK_ONESIDED_IMPL was disabled for pamilrts-bluegeneq-smp.
With this commit, the zerocopy API is disabled for pamilrts until
these issues are fixed.

Change-Id: Ifb3e08cec6c03b4d300ca133071994ccf3079b25

2 years agoFeature #1742: Use ZC infrastructure for bcast of large readonly variables 37/4637/27
Nitin Bhat [Fri, 5 Oct 2018 21:17:12 +0000 (17:17 -0400)]
Feature #1742: Use ZC infrastructure for bcast of large readonly variables

A macro CMK_ONESIDED_RO_THRESHOLD is used to specify the threshold
which represents the size in bytes over which the Zerocopy API is used
to broadcast the large readonly variables. Currently, it is defined
in src/arch/util/lrts-common.h. In the future, it has to be a layer
dependent macro that is computed based on experiments and defined in
src/arch/<layer>/conv-common.h.

Change-Id: I261345f2e8bc1520c6b67f08ae8abf79f9534ce3

2 years agoZcpy Bcast Sender-side API: Add a ping_all benchmark 00/4900/9
Nitin Bhat [Wed, 16 Jan 2019 16:55:19 +0000 (11:55 -0500)]
Zcpy Bcast Sender-side API: Add a ping_all benchmark

Change-Id: I66d9fe9a4326adc013cfa38340e7aae5d43102fe

2 years agoZcpy Bcast Sender-side API: Add examples for each registration mode 80/4680/18
Nitin Bhat [Wed, 10 Oct 2018 15:12:40 +0000 (11:12 -0400)]
Zcpy Bcast Sender-side API: Add examples for each registration mode

Change-Id: I9cc4ec2366bc5f270302cae286e43c0fa194e31a

2 years agoZcpy Bcast Sender-side API: Add a large buffer bcast benchmark 16/3816/36
Nitin Bhat [Tue, 2 Oct 2018 18:26:03 +0000 (14:26 -0400)]
Zcpy Bcast Sender-side API: Add a large buffer bcast benchmark

Co-authored-by: Evan Ramos <evan@hpccharm.com>
Change-Id: I33190301d75e27623281cd40556b45ae8e9f8c1b

2 years agoInitialize zcMsgType for all message allocations 49/4949/8
Nitin Bhat [Fri, 8 Feb 2019 19:48:05 +0000 (13:48 -0600)]
Initialize zcMsgType for all message allocations

zcMsgType is a converse header field used for identifying
zero copy messages (P2P_SEND, BCAST_SEND etc) from regular
charm messages (NO_ZC). For that reason, it is required to
initialize all allocated messages to NO_ZC to ensure that
they are not treated like zero copy messages.

Change-Id: I110769b2185c650c14c53a456bd4b687d4787783

2 years agoChange CmiUInt2 msgType to CmiUInt1 cmaMsgType:2 in conv-common.h 24/4924/8
Nitin Bhat [Fri, 25 Jan 2019 21:18:04 +0000 (15:18 -0600)]
Change CmiUInt2 msgType to CmiUInt1 cmaMsgType:2 in conv-common.h

msgType was used to identify messages for usage of CMA in SHM transport
for regular Charm++ messages. This patch reduces the size of msgType to
a 2 bit sized unsigned integer field and renames the field to cmaMsgType.

Change-Id: I77547f5bf4d0e15ee61315093632a8c0bfddca2c

2 years agoFeature #1834: Zerocopy Broadcast Sender-side API 95/4395/35
Nitin Bhat [Fri, 5 Oct 2018 19:39:48 +0000 (15:39 -0400)]
Feature #1834: Zerocopy Broadcast Sender-side API

Add support to broadcast a large buffer using the Zerocopy API
to multiple recipients. Uses memcpy, CMA or RDMA internally
depending upon the the location of the recipient. The received
buffer is Readonly. This change uses the existing infrastructure
and tree algorithm used for broadcasting regular messages.

Change-Id: Ib9b1be1a52c9cf488cec7f4052f949f14c0bbbb0

2 years agoMake ZC EM API pingpong benchmarks accept user params and add a warmup phase 99/4899/8
Nitin Bhat [Wed, 16 Jan 2019 18:02:17 +0000 (13:02 -0500)]
Make ZC EM API pingpong benchmarks accept user params and add a warmup phase

Change-Id: I161dfb4b112ceb4b7d70cff6818b963974262f72

2 years agoExtend FPU POINTER test in configure.ac to check for fpregs 70/5070/2
Juan Galvez [Wed, 10 Apr 2019 14:55:22 +0000 (09:55 -0500)]
Extend FPU POINTER test in configure.ac to check for fpregs

On some systems, like Raspberry Pi 32 bit, the fpregs field
does not exist, and compiling conv-core/threads.c with
CMK_CONTEXT_FPU_POINTER=1 will fail.

Change-Id: I61ef166e989ec25622fb31328e185d00c3b515bb

2 years agodoc: clean up syntax highlighting 69/5069/3
Matthias Diener [Tue, 9 Apr 2019 21:36:25 +0000 (16:36 -0500)]
doc: clean up syntax highlighting

- always put language explicitly, not via '::'
- fix a few misidentified code block languages
- use 'c++' language instead of 'cpp', 'c', 'C'

Change-Id: Ie40bc67ed1385aef3b59f7c1ac6c38e16f108758

2 years agodoc: fix bash code blocks 66/5066/3
Matthias Diener [Tue, 9 Apr 2019 18:44:14 +0000 (13:44 -0500)]
doc: fix bash code blocks

- tag them with the correct code-blocks statement
- consistently use '$' instead of '>' as the prompt

Change-Id: I354b6cb65af62687e6a98b4df7693bc688f59d60

2 years agodoc: cleanup manual titles 64/5064/3
Matthias Diener [Mon, 8 Apr 2019 20:41:58 +0000 (15:41 -0500)]
doc: cleanup manual titles

Change-Id: I10bc07ac84d2a98eb3c92ec8138646b165f49820

2 years agoFix Windows build failure in STLPUP example 63/5063/1
Evan Ramos [Mon, 8 Apr 2019 16:17:24 +0000 (11:17 -0500)]
Fix Windows build failure in STLPUP example

Change-Id: If5dc19d2d93008881d31f9a753bd79f4625a995e

2 years agoRevert addition of mpi-coexist to test rule 62/5062/3
Evan Ramos [Fri, 5 Apr 2019 19:19:09 +0000 (14:19 -0500)]
Revert addition of mpi-coexist to test rule

Originally added in commit 44d96eb8e463e64321c7c20677b3fee1b9864644.

Reason for revert: Several autobuild failures.

Change-Id: I7c196872250aa4dbd84296fd1303c96bf9d8a99e

2 years agoCleanup custom array index example and fix bad documentation 57/5057/3
Eric Mikida [Wed, 3 Apr 2019 21:29:21 +0000 (17:29 -0400)]
Cleanup custom array index example and fix bad documentation

Change-Id: I3a152278b6717d8887cca87b207a95b28f134580

2 years agoBug #1957: Out of bounds std::vector accesses in NDMeshStreamer 41/5041/4
Venkatasubrahmanian Narayanan [Tue, 26 Mar 2019 18:00:47 +0000 (13:00 -0500)]
Bug #1957: Out of bounds std::vector accesses in NDMeshStreamer

Fixed issue where NDMeshStreamer accessed elements out of bounds of
some internal std::vectors. The problem was triggered when the
checkForCompletedStages() method was invoked after all the stages had
been completed, and was exposed by the address sanitizer. An extra
check has been added to cover that case.

Change-Id: Ia8f42260544f80833c1718e13f24345b53b71186

2 years agoBug #2046: TRAM higher-dimensional chare array bugfixes 29/4929/9
Venkatasubrahmanian Narayanan [Mon, 28 Jan 2019 20:22:20 +0000 (14:22 -0600)]
Bug #2046: TRAM higher-dimensional chare array bugfixes

Fixed the implementation of TRAM to properly support
higher-dimensional chare arrays. Also made a minor change to the
interface file parser to emit code compatible with this implementation.

Change-Id: Ica0d87aa65f827ba9d47fa9e9053defa71a0146a

2 years agoSupport #1725: Improving pup_stl testing 49/3949/4
Samarth Kulshreshtha [Wed, 4 Apr 2018 23:44:35 +0000 (18:44 -0500)]
Support #1725: Improving pup_stl testing

* The PUP routine for std::vector has different specializations for
vector<bool> and vector<T> where T is an arithmetic type. Adding test
cases for int, bool and float.

Change-Id: I16710bff9c62b69c620411310d31f77f853b07af

2 years agobug #2056: unset MPI_LIB before building ROMIO 59/5059/1
Matthias Diener [Thu, 4 Apr 2019 17:11:27 +0000 (12:11 -0500)]
bug #2056: unset MPI_LIB before building ROMIO

This makes sure the ROMIO configure script actually
uses AMPI.

Change-Id: Id79935a0eb769b911e37f5b312dcd3c24462737a

2 years agoFix MPI interoperation example and add it to test script 51/5051/4
Eric Mikida [Mon, 1 Apr 2019 20:29:28 +0000 (16:29 -0400)]
Fix MPI interoperation example and add it to test script

Change-Id: I82a5c2ae77661b111ac465935e314b63cc133de1

2 years agoClean up mpi.h inclusion on Windows 58/5058/1
Evan Ramos [Thu, 4 Apr 2019 03:20:09 +0000 (22:20 -0500)]
Clean up mpi.h inclusion on Windows

Change-Id: Id9509211da7bf368a6a9b9f18834bea2fb9f304e

2 years agoampi: do not put mpi.h in include/ 45/5045/6
Matthias Diener [Thu, 28 Mar 2019 20:02:13 +0000 (15:02 -0500)]
ampi: do not put mpi.h in include/

Change-Id: I3b5d3f432a5790be805530782c83be1f5c4abd69

2 years agogpu: Actually fix PE to GPU mapping 42/5042/3
Michael Robson [Thu, 28 Mar 2019 16:05:07 +0000 (09:05 -0700)]
gpu: Actually fix PE to GPU mapping

The original commit queried the correct device but did not actually
set the corect device. This fixes that bug as well as setting the
correct device for non-zero threads in SMP mode.

Change-Id: I9ecc9ef0d771b1e2b2bfb9b7e4d18eb25e615b43

2 years agodoc: define missing label 44/5044/3
Matthias Diener [Thu, 28 Mar 2019 19:50:04 +0000 (14:50 -0500)]
doc: define missing label

Change-Id: I861eb7288194fc546753e620ee147bb6d45bc783

2 years agoCleanup unused code PPC64 timer code 47/5047/1
Ronak Buch [Thu, 28 Mar 2019 22:08:37 +0000 (17:08 -0500)]
Cleanup unused code PPC64 timer code

Change-Id: I91ff561626cb2132e9dee50b92e17fdde4c845a3

2 years agoDoc: Add types to function signatures in Ccd section 46/5046/1
Ronak Buch [Thu, 28 Mar 2019 22:05:07 +0000 (17:05 -0500)]
Doc: Add types to function signatures in Ccd section

Change-Id: I4fc261b7c5b62541dbe774813572af9a61b5fd4b

2 years agodarwin: fix undefined context functions 39/5039/2
Matthias Diener [Fri, 22 Mar 2019 19:25:36 +0000 (14:25 -0500)]
darwin: fix undefined context functions

Change-Id: I48ede4613a01b872039440b30af19815211a2225

2 years agoAMPI: Cleanup of unimplemented functions 37/5037/3
Evan Ramos [Thu, 21 Mar 2019 19:59:45 +0000 (14:59 -0500)]
AMPI: Cleanup of unimplemented functions

- Move MPI --> AMPI renaming macros in ampi.h to that section
- Remove semicolons from AMPI_API_DEF_NOIMPL and AMPI_API_NOIMPL

Change-Id: Icec71d10c639c06176022402d4d32309a603b752

2 years agoisomalloc: remove unused code for darwin/PPC 36/5036/1
Matthias Diener [Thu, 21 Mar 2019 21:14:21 +0000 (16:14 -0500)]
isomalloc: remove unused code for darwin/PPC

This code has not been used since patch
8f189ff84487646e624570bd161d2601ce684829 from 2013,
which removed the CMK_MACOSX #define.
It was apparently necessary for Mac on PowerPC.

Change-Id: I64598d59072f66dae7f3670e1845d54257e0773e

2 years agoDocumentation #1908: Add documentation for more PUP::able macros 34/5034/3
Eric Mikida [Thu, 21 Mar 2019 19:10:32 +0000 (15:10 -0400)]
Documentation #1908: Add documentation for more PUP::able macros

Change-Id: I83118b12b38f3d7ac500a9e26bb64bf283ceba30

2 years agoCleanup #2054: Improving error messages for unregistered modules 33/5033/2
Venkatasubrahmanian Narayanan [Thu, 21 Mar 2019 16:59:44 +0000 (11:59 -0500)]
Cleanup #2054: Improving error messages for unregistered modules

Modified the error message given when a module is registered late
to reflect that it can also be triggered by not importing a module.

Change-Id: I1d3c3885c08113e346643bee95f13a5448707b8b

2 years agoAdd Kokkos vector addition example and move examples to new directory 75/4975/9
Jaemin Choi [Mon, 25 Feb 2019 06:59:12 +0000 (01:59 -0500)]
Add Kokkos vector addition example and move examples to new directory

Change-Id: I22b83d5b8a4cbc78a3186a9916afa622abd0758c

2 years agodarwin: do not use _XOPEN_SOURCE 35/5035/3
Matthias Diener [Thu, 21 Mar 2019 19:53:05 +0000 (14:53 -0500)]
darwin: do not use _XOPEN_SOURCE

_XOPEN_SOURCE was only used to support context
threads on Darwin but defining it causes compilation
problems with other libraries.

Change-Id: I921264f40ea0f228991d9cfe9166169a36d083d3

2 years agoFix warnings and errors in ampi_noimpl.C 31/5031/1
Evan Ramos [Wed, 20 Mar 2019 20:25:13 +0000 (15:25 -0500)]
Fix warnings and errors in ampi_noimpl.C

Change-Id: I87c4ed78882e9fc495b4a6b7be42315c20f3523d

2 years agoPrompt CUDA build as an option if NVCC is available 24/5024/3
Jaemin Choi [Sat, 16 Mar 2019 22:28:42 +0000 (18:28 -0400)]
Prompt CUDA build as an option if NVCC is available

Change-Id: I947dc83aa54a47833e4d0087be97458e5e855fd5

2 years agoModularize the Isomalloc stress test 19/5019/2
Evan Ramos [Wed, 13 Mar 2019 21:40:34 +0000 (16:40 -0500)]
Modularize the Isomalloc stress test

Change-Id: I45adb25e655d37e981de2dd60a55f35234ecac1f

2 years agoRevert "Make Boost uFcontext threads the default on all ppc64le builds" 30/5030/2
Jim Phillips [Tue, 19 Mar 2019 00:00:11 +0000 (19:00 -0500)]
Revert "Make Boost uFcontext threads the default on all ppc64le builds"

This reverts commit 45816e4971145c18e3157736c7240acaa19a8903.

Breaks NAMD integrator unless threaded code is built with -O0.

Change-Id: Ie6ada49f85a8d96d65dfd998c849a120e6c250de

2 years agoAMPI: implement all missing MPI functions to abort at runtime 26/5026/7
Matthias Diener [Mon, 18 Mar 2019 22:23:03 +0000 (17:23 -0500)]
AMPI: implement all missing MPI functions to abort at runtime

Change-Id: I1aeb0efd753d1d9be705dab95c59f8b740740b5c

2 years agogpu: Fix SMP process to GPU mapping 21/5021/4
Michael Robson [Thu, 14 Mar 2019 19:10:32 +0000 (12:10 -0700)]
gpu: Fix SMP process to GPU mapping

This patch preserves the round robin ordering of non-smp mode
while ensuring that separate SMP processes are mapped to distinct
GPUs, if they're available. Further work needs to be done to enable
topology and locality aware mapping and user sepcification.

Change-Id: Ief8d89d37bdffbbeae20608f75ec29afe3027ca8

2 years agoDocumentation: fix the formatting of netfem's rst manual 51/4951/6
Sam White [Thu, 14 Feb 2019 19:44:05 +0000 (13:44 -0600)]
Documentation: fix the formatting of netfem's rst manual

Co-authored-by: Evan Ramos <evan@hpccharm.com>
Change-Id: I483028e9dd7e8b4dc66d1ee0821e46406501f712

2 years agoDocumentation #1777: Document message types in Charm++ message handler code 22/5022/4
Nitin Bhat [Fri, 15 Mar 2019 14:49:22 +0000 (09:49 -0500)]
Documentation #1777: Document message types in Charm++ message handler code

Change-Id: Idf60bfd65f3bd74e1037aed72e6449284383a304

2 years agoUpdate README and charmc year from 2018 to 2019 25/5025/2
Ronak Buch [Mon, 18 Mar 2019 19:01:50 +0000 (14:01 -0500)]
Update README and charmc year from 2018 to 2019

Change-Id: Ib0bf66c75b614c79338ae9a4e2a22e16e579ceba

2 years agoRemove trailing spaces in smart-build.pl 23/5023/1
Jaemin Choi [Sat, 16 Mar 2019 21:54:17 +0000 (17:54 -0400)]
Remove trailing spaces in smart-build.pl

Change-Id: I1fd88d0d35679b717f0352eaed263dd004694170

2 years agoROMIO: Fix configure step portably 20/5020/4
Evan Ramos [Thu, 14 Mar 2019 17:24:09 +0000 (12:24 -0500)]
ROMIO: Fix configure step portably

Simple environment tests will be compiled as standalone binaries, and
MPI tests will be compiled with AMPI.

Revert "AMPI ROMIO: clean up configure output"

This reverts commit 119c2dec7477755f76c01d49cbc375455393a43e.

Partially revert "ROMIO: add "include mpi.h" to configure tests"

This reverts commit 0bc6c316da9c9d20cbdde8a053a95c32278aeb91.

Change-Id: I107878a6d7875abef419d7263414fb75ccc65904

2 years agoFixed getPETopoTreeEdges forming tree of logical nodes instead of PEs 14/5014/3
Juan Galvez [Wed, 13 Mar 2019 16:33:49 +0000 (11:33 -0500)]
Fixed getPETopoTreeEdges forming tree of logical nodes instead of PEs

Change-Id: I3528e963bac2b7b4ea81ffd6162c2841d4f15d21

2 years agoRoute ampif77 and ampif90 through ampiCC, factoring out duplicated code 87/4787/8
Evan Ramos [Wed, 7 Nov 2018 22:29:39 +0000 (16:29 -0600)]
Route ampif77 and ampif90 through ampiCC, factoring out duplicated code

Change-Id: I89430b1833d0cda8d3875e6b6a2142158701b3c4

2 years agoUpdate LZ4 to 1.8.3 15/5015/2
Evan Ramos [Wed, 13 Mar 2019 18:05:19 +0000 (13:05 -0500)]
Update LZ4 to 1.8.3

Change-Id: I741d1d2cbb25ef47930bafd868948c750ea80377

2 years agoFix CkExit for user driven interop mode 17/5017/3
Eric Mikida [Wed, 13 Mar 2019 19:18:51 +0000 (15:18 -0400)]
Fix CkExit for user driven interop mode

Change 4219 added the capability for CkExit to accept exit codes, but commented
out lines which enabled user driven mode to call the actual CkExit. This adds
those lines back, but updates them to point to the new CkExit macro accepting
zero arguments.

Change-Id: I805228a056f6485e4cc7c01798e2fce49f1084c5

2 years agoExpose CmiNumPhysicalNodes as CkNumPhysicalNodes to the user 04/5004/2
Jaemin Choi [Wed, 6 Mar 2019 23:18:42 +0000 (18:18 -0500)]
Expose CmiNumPhysicalNodes as CkNumPhysicalNodes to the user

Change-Id: I5c935a1e29394e9391e69daf27137e1aa97a532d

2 years agoClean up btree code in isomalloc.C 00/5000/7
Evan Ramos [Mon, 4 Mar 2019 17:32:01 +0000 (11:32 -0600)]
Clean up btree code in isomalloc.C

Change-Id: Ia3917ea89d584aaa1a19afbf6df329fb31dff3a8

2 years agoRemove dependency generation on 'make clean' in xarraySection/Makefile 07/5007/4
Kavitha Chandrasekar [Thu, 7 Mar 2019 20:23:20 +0000 (14:23 -0600)]
Remove dependency generation on 'make clean' in xarraySection/Makefile

This patch fixes the error "Compiler not generating 64 bit binary, please check compiler flags."
generated on make clean in tmp directory.

Change-Id: Iacd6eafd69e8ff8aa353faefadf9a439c6b2ea25

2 years agoAMPI: Fix stack-uses-after-scope in reductions 06/5006/3
Evan Ramos [Thu, 7 Mar 2019 20:16:46 +0000 (14:16 -0600)]
AMPI: Fix stack-uses-after-scope in reductions

Change-Id: I2e3d865735707086483d1c772c76b13a0e234585

2 years agoFix an issue where turning off manual LB breaks AtSync 99/4999/2
Eric Mikida [Mon, 4 Mar 2019 21:32:59 +0000 (16:32 -0500)]
Fix an issue where turning off manual LB breaks AtSync

The problem previously was that when manual LB is on, all check-ins to the
barrier (including from the batsyncer) were entirely ignored. So if then manual
LB was turned off, those calls were lost forever and the barrier would never be
satisfied. This change preserves the calls to the barrier, but keeps the barrier
off until manual LB is turned off.

Change-Id: I0738abcf07af4bc922d73cda40a4c8bf3ddd676b

2 years agoAdded 2 missing function declarations (for charm4py) to charm.h 09/5009/2
Juan Galvez [Fri, 8 Mar 2019 15:12:41 +0000 (09:12 -0600)]
Added 2 missing function declarations (for charm4py) to charm.h

Change-Id: I0046978f6dbb3bff59809ef41e89f23a791cb6bc

2 years agoDoc: remove Latex manual 91/4891/6
Matthias Diener [Fri, 11 Jan 2019 21:08:08 +0000 (15:08 -0600)]
Doc: remove Latex manual

Change-Id: Id62907bed56a3fe583425f45559a139536d40c04

2 years agoAMPI ROMIO: clean up configure output 02/5002/2
Sam White [Tue, 5 Mar 2019 20:48:01 +0000 (14:48 -0600)]
AMPI ROMIO: clean up configure output

Change-Id: Ie7275d156d3e24a02e800acd7749547ca40e56a2

2 years agodoc: Corrections to Converse Extensions (Convext) manual 03/5003/1
Michael Robson [Mon, 25 Feb 2019 19:15:09 +0000 (13:15 -0600)]
doc: Corrections to Converse Extensions (Convext) manual

Change-Id: I095dd4956b53ba235f60d79da12912a669ac0f0b

2 years agoAdd hello load balancing example with GreedyRefineLB 86/4986/8
Jaemin Choi [Wed, 27 Feb 2019 23:50:30 +0000 (18:50 -0500)]
Add hello load balancing example with GreedyRefineLB

Chares on latter half of the PEs busywait for one second,
which results in migration to the lower half of the PEs.

Change-Id: I20a2a62331c5c873005b500d6c7fa1c65d793d56

2 years agonm_globals: cleanup, filter unnecessary stuff 94/4994/2
Matthias Diener [Thu, 28 Feb 2019 23:20:58 +0000 (17:20 -0600)]
nm_globals: cleanup, filter unnecessary stuff

Change-Id: Iec814344e3c6f259d280748f66482dd660401b18

2 years agoFix Windows build failure in cmitls 95/4995/1
Evan Ramos [Fri, 1 Mar 2019 22:15:37 +0000 (16:15 -0600)]
Fix Windows build failure in cmitls

Change-Id: Ia656d85ee82472b2ed2855c78817bfa1fa862389

2 years agoImplement tlsglobals support on macOS 58/4958/10
Evan Ramos [Mon, 18 Feb 2019 19:41:16 +0000 (13:41 -0600)]
Implement tlsglobals support on macOS

Change-Id: Ic35df8a8712e91a5522014b30fc5afbeed4814bd

2 years agoCleanup cmitls 57/4957/6
Evan Ramos [Mon, 18 Feb 2019 19:22:54 +0000 (13:22 -0600)]
Cleanup cmitls

Change-Id: Ibf37d137a42cc5a262da4324490aeb2dab418ede

2 years agoRename cmitls.c to cmitls.C 73/4973/5
Evan Ramos [Fri, 22 Feb 2019 19:57:59 +0000 (13:57 -0600)]
Rename cmitls.c to cmitls.C

Change-Id: I7e41a7ecb89212afea0a6f227295542ca14940b5

2 years agoConverse: conditionalize CsdPeriodic, idle tracing, and interop 04/4104/16
Sam White [Wed, 2 May 2018 23:02:31 +0000 (18:02 -0500)]
Converse: conditionalize CsdPeriodic, idle tracing, and interop

If users build with '-DCSD_NO_IDLE_TRACING=1 -DCSD_NO_PERIODIC=1
-DCMK_NO_INTEROP=1', the Converse scheduling loop is simplified, and
overhead from calling timers (for idle tracing and for periodic
callbacks) is eliminated. However, defining these breaks tracing and
load balancing and other features. Also semi-related to these options
is '-DCMK_NO_MSG_PRIOS=1' which is already supported in Converse.

Change-Id: Id0409b27a0bfed48811418484e4e45ae4818d6e3

2 years agoDoc: corrections to sections 1.2.4-1.2.6 79/4979/2
Eric Bohm [Mon, 25 Feb 2019 23:07:11 +0000 (17:07 -0600)]
Doc: corrections to sections 1.2.4-1.2.6

Change-Id: I8c64df87825bf3f68764cb6e3f823a7259035ec9

2 years agoAMPI Doc: Minor fixes to code examples 85/4985/2
Nitin Bhat [Wed, 27 Feb 2019 22:57:03 +0000 (16:57 -0600)]
AMPI Doc: Minor fixes to code examples

Change-Id: Iac74fc588835626510287f8063f18b246fcc5ef2

2 years agoAMPI: Decrement MPI_TAG_UB and other keyvals by 1 84/4984/2
Nitin Bhat [Wed, 27 Feb 2019 22:31:59 +0000 (17:31 -0500)]
AMPI: Decrement MPI_TAG_UB and other keyvals by 1

Previously, both MPI_KEYVAL_INVALID and MPI_TAG_UB were defined
to be equal to -1 and this caused an error in AMPI_Comm_get_attr
calls. This patch modifies MPI_TAG_UB to -2 and updates other
keyvals accordingly to avoid that error.

Change-Id: Ie4e019b0d44e80b1b3a7322ea35bf3a14cdff26d

2 years agodoc: corrections to bigsim rst manual 83/4983/2
Kavitha Chandrasekar [Wed, 27 Feb 2019 22:18:33 +0000 (16:18 -0600)]
doc: corrections to bigsim rst manual

Change-Id: Id7be1c3c26cb56494532fbf25bd0191483ebd655

2 years agocharmxi: add option to only print module names 90/4990/4
Matthias Diener [Thu, 28 Feb 2019 18:11:43 +0000 (12:11 -0600)]
charmxi: add option to only print module names

The -module-name option prints each defined module in a .ci file,
one module per line.

Change-Id: I2b4da1b1e2dcf95bd30ea37d96d428c0b2ad3538

2 years agoDoc: corrections to Projections rst manual 88/4988/2
Ronak Buch [Thu, 28 Feb 2019 09:38:00 +0000 (03:38 -0600)]
Doc: corrections to Projections rst manual

Change-Id: I369636a397f7da14275afa5f10040fc008e75ff0

2 years agoClean up macOS deployment target handling 87/4987/1
Evan Ramos [Thu, 28 Feb 2019 01:56:44 +0000 (19:56 -0600)]
Clean up macOS deployment target handling

Setting MACOSX_DEPLOYMENT_TARGET=10.7 implies -stdlib=libstdc++, and that was
affecting ChaNGa's configure tests under newer Xcode versions that lack
libstdc++.

We still pass "-mmacosx-version-min=10.7 -stdlib=libc++" to the toolchain,
which is safe.

Change-Id: I4ffa0e049a88665ef81243a5e971455a3ddca746

2 years agodoc: add additional links 82/4982/2
Matthias Diener [Tue, 26 Feb 2019 18:22:23 +0000 (12:22 -0600)]
doc: add additional links

Change-Id: Ibee453c97bdea026547b65071f0df18019b6e094

2 years agodoc: fix link target 78/4978/1
Matthias Diener [Mon, 25 Feb 2019 23:36:10 +0000 (17:36 -0600)]
doc: fix link target

Change-Id: Ia19ae8ae1d2c985fd37d74564ef4e56d0d11a25d

2 years agoDoc: corrections to Charisma rst manual 71/4971/2
Juan Galvez [Fri, 22 Feb 2019 20:32:48 +0000 (14:32 -0600)]
Doc: corrections to Charisma rst manual

Change-Id: I6413643f5d0d0e1fa7fdfbdad947a418233bd631

2 years agoCleanup libthreads Makefile rules 70/4970/1
Evan Ramos [Thu, 21 Feb 2019 23:58:39 +0000 (17:58 -0600)]
Cleanup libthreads Makefile rules

Change-Id: I3a8f808872bc5865b57679cf27062adc9e4fff63

2 years agoEnable support for building mpi-win-x86_64-gcc 69/4969/1
Evan Ramos [Tue, 7 Aug 2018 18:13:21 +0000 (13:13 -0500)]
Enable support for building mpi-win-x86_64-gcc

This was made possible by commit dea6816d8bc8072b4d4f3dc9dfc7f13c7f2a6088.

Change-Id: Ia9859c4fb530b49d37349522d497d48a5f58d843

2 years agoCleanup: Fix -Wwrite-strings warnings in convcore.C on Windows 68/4968/1
Evan Ramos [Thu, 21 Feb 2019 23:59:18 +0000 (17:59 -0600)]
Cleanup: Fix -Wwrite-strings warnings in convcore.C on Windows

Change-Id: I74721fd62c7c8c1d92d35035e09b67c2abfb742d

2 years agoDocs: Review Pose 67/4967/2
Nitin Bhat [Thu, 21 Feb 2019 21:33:37 +0000 (15:33 -0600)]
Docs: Review Pose

Change-Id: I289ce9bae40e1047d2147111abd9bd1f685101ff

2 years agoDoc: Fixed sections 1.1 - 1.2.3 of the new Charm manual 66/4966/4
Venkatasubrahmanian Narayanan [Thu, 21 Feb 2019 19:35:35 +0000 (13:35 -0600)]
Doc: Fixed sections 1.1 - 1.2.3 of the new Charm manual

Change-Id: I9c523d9e4622e2f9d559a84afe8fcdef6269fdeb

2 years agodoc: corrections to sections 1.4 - 1.6.1 53/4953/2
Kavitha Chandrasekar [Thu, 14 Feb 2019 20:29:09 +0000 (14:29 -0600)]
doc: corrections to sections 1.4 - 1.6.1

Change-Id: Icb13d3b32bae8b72fd875a0d7f9052daae430975

2 years agodoc: Corrections to IFEM rst manual 63/4963/2
Michael Robson [Tue, 19 Feb 2019 21:23:08 +0000 (15:23 -0600)]
doc: Corrections to IFEM rst manual

Change-Id: I5f7a829b6c06ecf71b159329f815f4d3c9e8cf6a

2 years agoROMIO: add "include mpi.h" to configure tests 62/4962/3
Matthias Diener [Tue, 19 Feb 2019 19:06:24 +0000 (13:06 -0600)]
ROMIO: add "include mpi.h" to configure tests

Fixes the build failure with bigsim

Change-Id: I068398e99df530277562cb3f576611e8fdc37344

2 years agoFix SMSG_TRY_SEND macro definition to avoid compilation errors 64/4964/1
Nitin Bhat [Tue, 19 Feb 2019 21:17:42 +0000 (13:17 -0800)]
Fix SMSG_TRY_SEND macro definition to avoid compilation errors

The compilation errors are seen for builds where CMK_WITH_STATS
is true (as in non-production debug builds). The errors seen were:

machine.C(1533): error: unrecognized token
              SMSG_SENT_DONE(creation_time,tag)
              ^

machine.C(1533): error: expected an expression
              SMSG_SENT_DONE(creation_time,tag)
              ^

machine.C(1533): error: expected a ";"
              SMSG_SENT_DONE(creation_time,tag)
              ^

Change-Id: If66314c753d3aae3ba384442e71c020a1521781b

2 years agoAMPI: Add support for and example of primitive Charm++ interoperation 66/4366/23
Sam White [Tue, 17 Jul 2018 21:10:48 +0000 (16:10 -0500)]
AMPI: Add support for and example of primitive Charm++ interoperation

- Adds a new header ampi-interoperate.h
- Adds a new entry method 'void injectMsg(int size, char buf[size])' to
  the ampi class, for use in sending messages b/w AMPI ranks and chares.
- Adds an example application that uses a Group to interoperate an AMPI
  program with a Charm++ one.

Co-authored-by: Evan Ramos <evan@hpccharm.com>
Change-Id: I58fa26958eb70ca8b9974c6f0ea0e7c0036071c4

2 years agoAMPI: Add MPICH automated testing build option "--enable-ampi-mpich-tests" 16/4716/15
Zeran Zhu [Sat, 20 Oct 2018 04:03:52 +0000 (23:03 -0500)]
AMPI: Add MPICH automated testing build option "--enable-ampi-mpich-tests"

Also add AMPI testlists containing all passing and non hanging tests.

See tests/ampi/mpich-tests/README.AMPI for details.

Co-authored-by: Evan Ramos <evan@hpccharm.com>
Change-Id: Ibcd73f20339ff09c44f9feb1797fb9abb1dc9804

2 years agoBug #2037: Execute callbacks to inline EMs in an inline manner 57/4857/5
Nitin Bhat [Mon, 10 Dec 2018 22:42:15 +0000 (16:42 -0600)]
Bug #2037: Execute callbacks to inline EMs in an inline manner

Previously, callbacks targeting inline entry methods had to be
declared with a 'true' value for the doInline variable to specify
inline execution. With this fix, callbacks execute inline when
the target is an inline entry method. The CkCallback constructors
still have the 'doInline' variable, now called 'forceInline', to
preserve existing behavior.

Co-authored-by: Evan Ramos <evan@hpccharm.com>
Change-Id: I2b21c7848b2428a367e79cdbaa9424f929c27ee1

2 years agoROMIO: provide overview of privatization done for AMPI 55/4955/4
Matthias Diener [Fri, 15 Feb 2019 16:18:54 +0000 (08:18 -0800)]
ROMIO: provide overview of privatization done for AMPI

Change-Id: Idbf7b6b5ba8334b3a8e3c876e83261a56f91043c

2 years agoROMIO: fix variable declarations 54/4954/5
Matthias Diener [Fri, 15 Feb 2019 14:37:01 +0000 (06:37 -0800)]
ROMIO: fix variable declarations

These were missed in the update to mpich2-1.4.1p1.

Change-Id: If61c77691d7a9492467aabf296c8e3c6512f573b

2 years agoAMPI: update nm_globals.sh script 36/4936/5
Matthias Diener [Fri, 1 Feb 2019 23:29:00 +0000 (17:29 -0600)]
AMPI: update nm_globals.sh script

- Support GNU nm and LLVM nm (darwin)
- Only show global, writable symbols
- Point to manual when such symbols are found

Change-Id: I9658a6b152da2579f89410ddb6908896abfa4f50

2 years agoAMPI: MPICH test cases printing "No Errors" 78/4378/5
Shane Neary [Thu, 19 Jul 2018 16:29:05 +0000 (11:29 -0500)]
AMPI: MPICH test cases printing "No Errors"

Following test cases never printed "No Errors" even if all the
test cases pass since it was printed after MPI_Finalize();

Change-Id: I114255dcbbbc8a54c1698494a81db1a03f8b00ad

2 years agoSupport: Add emacs syntax highlighting howto 92/4892/2
Eric Bohm [Fri, 11 Jan 2019 21:17:36 +0000 (15:17 -0600)]
Support: Add emacs syntax highlighting howto

Provide hook for support of c++ highlighting in emacs by
triggering c++-mode on ci files.

Change-Id: I3d57a47322774750829fe261932aecf68326fc0d