GUPC 5.2.0.1

  • GCC 5.2 based
  • Bug fixes
    • Allow for -flto switch
    • #pragma upc c_code does not undefine UPC keywords
    • Fix 128-bit struct poiter to shared atomic get/set/cswap
    • Fix internal compiler error on nested procedures
    • GUPC accepts the -fupc-threads=N switch
    • Fix static initialization of __int128 causes internal compile error
    • Comparison with (shared void *) does not ignore phase using packed PTS representation
    • Comparison between pointers-to-shared that differ only in target blocking factor not diagnosed as an error

GUPC 4.9.0.3

  • Compiler upgrade to GCC 4.9 branch
  • Implement various UPC Specification version 1.3 compiler changes
  • Added runtime support for the UPC Atomic Memory Operations library defined in the UPC Specification version 1.3
  • Added runtime support for the UPC pointer-to-shared castability library defined in the UPC Specification version 1.3
  • Added runtime support for the UPC asynchronous shared memory bulk copy operations library defined in the UPC Specification version 1.3

GUPC 4.8.0.3

  • Correct the bootstrap build on the PowerPC platform
  • Correct the build of dependencies in the UPC runtime libraries
  • Correct the UPC data ordering in shared string handling functions in the Portals 4.0 runtime
  • Portals 4.0 runtime requires -lpthread on the link command line for the systems that use the newer versions of the gld (gold)

GUPC 4.8.0.2

  • Upgrade to the latest Portals 4.0 runtime

GUPC 4.8.0.1

  • Compiler upgrade to GCC 4.8 branch
  • Implement various UPC version 1.3 changes
    • upc_tick wall-clock timer library
    • upc_all_free and upc_all_lock_free collective shared memory de-allocation
    • deprecate upc_local_alloc
  • Add GCC compatible GUPC command line driver
  • Improve GUPC man pages and documentation
  • Add Infiniband and Portals 4.0 support
  • Add program backtrace support
  • Add integration with STAT tool
  • Add MPIR debugging interface option to allow for collective debug session start
  • UPC barrier optimization using a tree based barrier algorithm
  • UPC lock optimization using MCS lock algorithm

GNU UPC (GUPC) 4.7.0.2

  • Support the use of relative paths to the `configure' command
  • Disallow configuring GUPC with the --enable-shared switch. UPC programs must be linked with the static version of libgupc.
  • Fix a build error that occurred when the UPC language dialect is omitted from the --enable-languages switch
  • Fix the build to enable the make of "profiledbootstrap"
  • Fully support GUPC builds with the --program-suffix switch
  • upc_addrfield() now returns a consistent value across all GUPC configurations (packed/struct, UPC link script)
  • Correct the GCCUPC Config information encoded in a UPC executable program
  • Fix the runtime to allow a mixture of programs compiled with static and dynamic number of threads. The static value takes precedence.
  • Fix a crash in the gupc driver when certain invalid command switches were specified
  • Fix compiler generated calls to the profiling access routines when -fupc-debug is specified
  • Ensure that the correct file/line number is passed to the profiling access routines when -fupc-debug is specified
  • Disable calls to the profiling access routines inside the UPC compiler generated shared variable initialization procedures.

GNU UPC (GUPC) 4.7.0.1

  • Upgrade to GCC 4.7 baseline

GCC UPC 4.5.1.2

  • Maintenance release of GCC UPC
  • Improved error diagnostics
  • Fix segfault on incomplete array definition
  • Provide thread safe rand() function for GCC UPC runtime

GCC UPC 4.5.1.1

  • Upgrade to GCC 4.5.1 baseline
  • Improved runtime error message reporting. This capability¬∑ is enabled by the newly introduced -fupc-debug switch.
  • The following errors were corrected in this version of the compiler:
    • Layout qualifier within a typedef is not incorporated into the referencing type
    • Attempt to use a block size that exceeds maximum is not explicitly diagnosed
    • upc_forall with empty clauses mis-diagnosed as syntax error
    • Nested upc_forall() semantics are not implemented
    • Static initializers which reference the address of a shared variable are unsupported
    • Failure when attempting to specify maximum blocksize in dynamic threads environment
    • Shared array exceeds maximum size on 32-bit hosts
    • Error message is off-by-one when given blocksize is greater than UPC_MAX_BLOCKSIZE (ILP64 struct sptr)
    • Failure on '[*]' layout factor on multi-dimensional shared array with dynamic threads
    • Failure on '[*]' layout factor applied to array with static threads and size not a multiple of threads
    • Failure to initialize per-thread static variables that refer to shared addresses

GCC UPC 4.3.2.5

  • Added support for NUMA API 2.0
  • Disabled link script support for Apple Mac OS X
  • Documented -fupc-instrument[-functions] switch
  • Added debugging support for packed shared pointer representation
  • Upgraded binary releases to the latest OS versions

GCC UPC 4.3.2.4

  • Support for the Apple Mac OS X platform
  • Improved conformance to the UPC language specification (version 1.2)
  • UPC collectives support implemented in the GCC UPC SMP-based runtime
  • GASP (a performance analysis tool interface for Global Address Space Programming models) support implemented in both the GCC UPC compiler and the GCC UPC SMP-based runtime
  • Code optimization improvements as a result of moving to the GCC 4.3 baseline
Go to top