Berkeley Unified Parallel C

Software Screenshot:
Berkeley Unified Parallel C
Software Details:
Version: 2.16.0
Upload Date: 20 Feb 15
Distribution Type: Freeware
Downloads: 11

Rating: 1.0/5 (Total Votes: 1)

Berkeley Unified Parallel C, or UPC for short, is an open source C programming language extension.

Berkeley Unified Parallel C offers high performance computing on large-scale parallel machines.

What is new in this release:

  • Initial release of mxm-conduit
  • This is the initial release of GASNet and Berkeley UPC with support for the "MXM" API for Mellanox's InfiniBand HCAs. This is based on the code which Mellanox has been distributing for about one year.
  • Optional collectives acceleration using Mellanox's FCA
  • Works with both ibv-conduit and mxm-conduit on recent Mellanox HCAs
  • See gasnet/other/fca/README-fca.txt
  • Pami-conduit is no longer "BETA"
  • Gemini-conduit performance improvements:
  • Improved performance for 129 to 4096 byte transfers.
  • This release includes *experimental* support (OFF by default) for improved performance via uGNI's "RELAXED_PI_ORDERING", which can be enabled using an environment variable. See the conduit README for more information.
  • Improved performance of pointer-to-shared arithmetic for common cases:
  • Adding a constant 0, 1 or -1 to a pointer-to-shared
  • Adding a constant multiple of block size to a pointer-to-shared
  • Above cases multiplied by THREADS (in static-threads environment)
  • Improved performance of operations on upc_lock_t:
  • Re-implemented based on the MCS list-based queue lock algorithm
  • Operations within a shared-memory node are performed w/o AMs
  • Improved platform support/portability
  • Support for Apple's clang 4.0 as backend compiler (Xcode 4.2+)
  • Configure option --with-default-network=
  • Useful on systems with multiple network APIs installed
  • Changes/additions in preparation for upcoming UPC 1.3 specification:
  • Add upc_tick.h and associated functions and document the corresponding Berkeley UPC extension as superseded
  • Implement upc_all_free() and upc_all_lock_free() and document the corresponding Berkeley UPC extension as superseded
  • Update handling of clarified barrier-matching corner cases
  • Update upc-examples to remove calls to upc_local_alloc()

What is new in version 2.14.0:

  • Beta release of gemini-conduit
  • This release includes a BETA of native support for the Cray XE network. See GASNet's ChangeLog for more details.
  • New runtime features
  • Most runtime error messages in a debug (-g) build now include source file and line number information.
  • Implemented collective deallocation functions based on a UPC language extension proposal by Cray (fixes bug 3060).
  • Enhancements/improvements to UPC Runtime and GASNet
  • Implemented faster atomics for x86, x86-64 and PPC64.
  • Improved signal handling for smp-conduit.
  • Fix output corruption sometimes seen when redirecting stdout/stderr.
  • GASNET_TMPDIR env var to control placement of most temporary files.
  • Enhancements/improvements to upcc (see the upcc manpage)
  • Implement support for HTTP proxy when using network translator.
  • Enhancements/improvements to upcdecl (see the upcdecl manpage)
  • Now supports additional types, including upc_lock_t, upc_file_t, offset_t and size_t (fixes bug 2953).
  • Now supports THREADS and simple arithmetic expressions in array dimensions and layout qualifiers (fixes bug 2954).
  • Improved platform support/portability
  • Fixed bugs 2648 and 2748: problems with autoconf 2.64 and newer.
  • Now ship with updated config.guess and friends.
  • Removed constructs deprecated in perl 5.12.
  • Added work-arounds for Open64 and PathScale compiler bugs.
  • Fixed various warnings seen with recent gcc and icc versions.
  • Better MIPS and ARM support in GASNet.
  • Improved support for GCC UPC
  • Add support for all Berkeley UPC extensions when using the GCCUPC back-end (fixes bug 2884).
  • Fixed bug 2427: default optimization incorrect in dbg_gccupc build.
  • Enforce alignment of struct PTS only when target arch requires it.
  • Fixed the following notable bugs in 2.12.2 UPC and GASNet libraries:
  • (see http://upc-bugs.lbl.gov for details):
  • bug2506/3030: more space-efficient shared heap allocator
  • bug2768: errors with firehose at node counts over 4096
  • bug3008: runtime detection of shared-NULL dereference (with -g)
  • bug3035: compilation chokes on byteswap.h and arpa/inet.h
  • bug3053: reductions with blocksize==0 result in error (crash)
  • unreported: PSHM-over-SYSV broken for non-contiguous proc distribution
  • Fixed several additional minor bugs/issues not reported in Bugzilla.
  • Fixed the following notable bugs in 2.12.2 source-to-source translator
  • (see http://upc-bugs.lbl.gov for details):
  • bug1319: refixed to reject expansion of asm()-based macros in UPC code
  • bug3017: erroneous type error involving shared[1] int and shared int
  • bug3037: erroneous "discards qualifiers" warnings with string constants
  • bug3039: silent truncation of large enum values (now issues a warning)

What is new in version 2.12.1:

  • Numerous bugfixes and enhancements.

What is new in version 2.10.0:

  • New runtime features
  • Experimental shared-memory support (see the section "INTRA-NODE SHARED MEMORY SUPPORT" in INSTALL.txt)
  • Experimental collectives autotuner (see gasnet/README)
  • Expand BUPC atomic extensions w/ additional operations and 32-bit types
  • Enhance bupc_thread_distance() to detect processes on same compute node
  • Implement bupc_{cast,castable,thread_castable}() extensions based on a UPC language proposal from HP
  • UPC source-to-source translator changes
  • Many corner cases now generate compiler errors or warnings instead of crashing the translator
  • Much improved quality of code generated when experimental UPC-level optimizations are enabled by -opt
  • Deprecate support for building translator on Tru64 and AIX
  • Enhancements/improvements to upcrun (see the upcrun manpage)
  • Implement -conf=file and -norc command line options
  • Implement UPCRUN_NORC environment variable (analogous to UPCC_NORC)
  • Implement -bind-threads option
  • Fix bug 1553 - set appropriate env vars on IBM SP for pthreads runs
  • Several improvements to job spawning on Cray-XT series
  • Enhancements/improvements to upcc (see the upcc manpage)
  • Implement -conf=file command line option
  • Correct behavior when -g and -tv are both specified
  • Extend config file format to be multiconf friendly
  • Enhance upcc-multi to reject contradictory argument pairings
  • Improved platform support
  • Cray XT support extended to PE 2.1.42+ and to PrgEnv-Intel
  • IBM BG/P support extended to V1R4M0 drivers
  • Support MacOS 10.6 (Snow Leopard) including Apple's new gcc-4.2.1
  • Add support for building with libtool-2.0 and newer
  • Improved support for GCC UPC
  • Support for virtual address field order in shared pointer representation
  • Added support for MacOS 10.5 and newer
  • Misc changes/improvements
  • Tools now work around sometimes buggy UTF-8 support in perl
  • Use strict prototypes in public headers and generated code to allow compilation with -Wstrict-prototypes
  • Expanded test suite and fixed several bugs in the tests themselves
  • Fixed several minor bugs/issues with the configure and build scripts
  • Fix the following notable bugs in 2.8.0 runtime libraries
  • (see http://upc-bugs.lbl.gov for details):
  • bug1840: SIGFPE crashes (environment variable UPC_SUPPRESS_SIGFPE can now be used to control suppression of SIGFPE)
  • bug1976: (1st half) portals-conduit AMMedium payload corruption
  • bug1976: (2nd half) use-after-free in GASNET_VIS_AMPIPE code
  • bug2461: PTL_ME_IN_USE runtime crash from portals-conduit
  • bug2462: catch basin overflow failure on portals-conduit
  • bug2507: mutex debug code yields warning on every compile on IRIX/gcc/64
  • bug2530: mis-aligned use of x86-64 cmpxchg16b instruction
  • bug2576/2633: XLC crashes due to CFLAGS used in an opt build
  • bug2582: lapi-conduit LongAsync memory leak
  • bug2583: AMMedium payload corruption on lapi-conduit
  • bug2584: Segfault from upc_free() with pgicc 7.2-5 through 8.0-4
  • bug2588: assertion failure when out-of-memory message expected
  • bug2606: trace output corruption with high pthread count
  • bug2613: FATAL ERROR: Firehose: Ran out of request handles
  • bug2617: PtlMDUpdate errors on portals-conduit
  • bug2627: long pause at exit time due to sync() call
  • bug2665: could not build shmem-conduit with TotalView support
  • bug2674: testinternal-par failure on portals-conduit (iop check assertion)
  • bug2677: infrequent fflush(NULL) failure on AIX
  • bug2683: deal with aggressive alias assumptions of gcc-4.4.x
  • Fix the following notable bugs in 2.8.0 source-to-source translator
  • (see http://upc-bugs.lbl.gov for details):
  • bug244: translator crashes on incomplete types
  • bug247: need compiler error for over-size arrays (instead of under-allocation)
  • bug1546/2504/2522/2642: various problems with arrays inside structs
  • bug2396: bad codegen for complex upc_forall affinity expression
  • bug2502: mismatched static vs. non-static declaration/definition
  • bug2626: NPB2.4-UPC Benchmark FT class C compilation error
  • bug2643: Wrong precedence generating a flat address for multi-dimensional array

What is new in version 2.8.0:

  • Add native support for IBM BlueGene/P via new 'dcmf' network
  • Upgrade portals network support to cache local memory registration
  • Many small improvements to IBM LAPI support
  • Fix performance and correctness problems in Myrinet GM support
  • Add Pathscale compilers to supported list for Cray XT machines
  • Improved support for XLC compilers on Linux
  • Extend "ibv" (InfiniBand) support to Qlogic's InfiniPath
  • adapters
  • Add/improve support for MIPSEL/Linux platforms, including SiCortex
  • Extend GCCUPC support to GCCUPC 4.2.0.2 and newer
  • Add user documentation for experimental UPC-level compiler
  • optimizations (see the upcc manpage)
  • Workaround for a gcc 4.x (x= 4.3.0, though our previously
  • documented workarounds remain valid
  • Add support for autoconf 2.62 and newer
  • Add experimental support for ARM processors
  • Misc improvements and/or fixes for MIPS, Alpha, PPC and SPARC processors
  • Fix the following notable bugs in 2.6.0 (see http://upc-bugs.lbl.gov for
  • details):
  • bug1847Fix stability problems in cygwin -pthread apps
  • bug2391Berkeley UPC atomics failures on SGI Altix
  • bug2383Failure to parse gcc-4.3.2's private includes
  • bug2304"make install" always appears up-to-date on Cygwin
  • bug2209Provide missing documentation for IBM SP job launch
  • bug2188Support unequal thread distribution on LAPI network
  • bug2025Translator build failures w/ g++ >= 4.1.2
  • Various code generation bugs in the source-to-source translator
  • Source-to-source translator error messages on various valid inputs
  • Source-to-source translator crashes on various valid inputs
  • Additional bug reports resolved with improved/clarified documentation
  • Additional bugs fixed in GASNet (see gasnet/ChangeLog)
  • Numerous misc minor bug fixes

Similar Software

Bolt
Bolt

11 May 15

EC2Box
EC2Box

22 Jun 18

Comments to Berkeley Unified Parallel C

Comments not found
Add Comment
Turn on images!