Skip to content

Tags: uhhpctools/openuh

Tags

3.1.0

Toggle 3.1.0's commit message
updated ChangeLog for 3.1.0

3.0.40

Toggle 3.0.40's commit message
[CAF] adding environment variable for form team algorithm

UHCAF_FORM_TEAM_ALGORITHM is added, and can take 3 values:

    naive: team exchange using naive allgather algorithm
    bruck: team exchange using (currently buggy) bruck algorithm
    bruck2: (default) team exchange using working bruck/MPI_Allgather

When set to bruck2, if UHCAF_COLLECTIVES_MPI is also set than it will use an
MPI_Allgather when executed by the initial team. This is the fastest of all
options. The default bruck2 algorithm works, but can is rather slow and can
probably be significantly tuned.

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4135 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.39

Toggle 3.0.39's commit message
[CAF] fixing --default-caf-initial-team-heap-size configure option

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4125 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.38

Toggle 3.0.38's commit message
updating ChangeLog for 3.0.38

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4113 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.37

Toggle 3.0.37's commit message
fixing up some variable definitions in Makefile.gsetup.in

All these variable definitions were inside ifdefs, but I see no reason for
this.

Also, updating ChangeLog-v3 for 3.0.37.

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4110 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.36

Toggle 3.0.36's commit message
[CAF] adding GASNET_PSHM check for use of nodeinfo_map

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4102 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.35

Toggle 3.0.35's commit message
[CAF] various fixes/improvements for CAF

This adds a runtime environment variable UHCAF_RMA_ORDERING. The values are:

* blocking: All get/put calls generated by the compiler will blocking until they
globally complete, unless caf_nowait directive is used.

* put_ordered: All put calls block until local completion and will remotely
complete before subsequent execution of a remote get or put call.

* put_image_ordered: All put calls block until local completion and will
remotely complete before subsequent execution of a remote get or put call to
the same image.

* put_address_ordered: All put calls block until local completion and will
remotely complete before subsequent execution of a remote get or put call to
the same address/image.

* relaxed: All get and put calls are non-blocking. The compiler (or programmer)
is assumed to take care of inserting the necessary waits to abide by the
ordering rules.

By default, the policy used is put_address_ordered. The entails the highest
overhead due to runtime checking over conflicting addresses, but it also
enables a higher level of concurrency for rma operations, potentially.

Other fixes includes:

* Fixes for alignment of memory allocated into RMA regment. It now uses
UHCAF_ALLOC_BYTE_ALIGNMENT to align allocations in the save coarray portion of
the RMA segment in addition to dynamic (heap) RMA segment allocations.

* Correct TY_size for coarrays in front-end. This fixes how TY_size for
coarray types are set in the Fortran front-end, since the prior "fix" was did
not work correctly in some cases.

* Correct calculation for first stride multiplier for remote transfers.  This
corrects the calculation for arrays where the strides are not constants.  The
compiler must conservatively assume non-unit strides for correctness in this
case.

* Fixing some checks for dummy argument in final_arg_work in FFE.

* Use comm_write_from_lcb in coarray_strided_write. When packing strided
source buffer when remote-side buffer is contiguous, need to use the
comm_write_from_lcb routine instead of comm_write.

Contributor: Deepak

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4096 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.34

Toggle 3.0.34's commit message
updating ChangeLog-v3 for 3.0.34

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4094 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.33

Toggle 3.0.33's commit message
[CAF] Misc. fixes for CAF

The following fixes are made in this commit:

- Reference to __trace_log_stream should only be made if tracing is enabled.

- Fixes check that a subroutine with a coarray dummy argument has an explicit
  interface. This check wasn't made when the subroutine occurred before the
  call to it in the source file.

- Fix for atomic_define statement. The program was aborting with a seg fault
  when it executes the atomic_define statement, because the runtime was
  erroneously attempting to dereference an invalid pointer value in
  comm_write.

Also, updating ChangeLog for 3.0.33

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4080 ead328b1-e903-0410-a19d-eacee4b031f6

3.0.32

Toggle 3.0.32's commit message
adds ChangeLog and more misc. CAF fixes/improvements.

This adds ChangeLog-v3. It summarizes new additions, improvements, or fixes in
OpenUH at each 3.x.x release. Technical implementation details are left out
(they should be provided, instead, in the commit logs).

Also, some fixes for building and installing CAF:

- Fixes some typos in install_compiler.sh

- Adds a fix for building a CAF runtime DSO using the GASNet MPI conduit,
  necessary for some versions of gcc.

Finally, a number of improvements/fixes in CAF front-end:

- Fixing semantics for coarray argument of intrinsic procedures. The intrinsic
  procedures this_image, image_index, lcobound, and ucobound all may take a
  coarray as the first argument. This corrects the check for whether it is an
  actual coarray. It also converts the coarray argument to a "whole coarray"
  reference during the intrinsics pass, simplying the subsequent
  transformations needed in call list semantics.

- The check for image_index that the extent of the dims argument should match
  the corank of the coarray argument was corrected to handle more general
  coarray actual arguments.

- Check array conformance for result of lcobound/ucobound. For array
  assignment statements where the RHS contains lcobound or ucobound (with a
  single coarray argument), add a check to ensure that the LHS array shape
  conforms to the returned bounds array. This isn't already done (at compile
  time), because the return values are implemented as dope vectors. But we can
  determine what is the extent of the returned array based on the corank of
  the coarray argument at the compile time. This therefore allows us to do a
  compile-time check for array conformance of LHS and RHS.

Contributor: Deepak

git-svn-id: https://svn.open64.net/svnroot/open64/branches/OpenUH@4078 ead328b1-e903-0410-a19d-eacee4b031f6