#!/bin/sh # sit class file # # Christoph Niethammer (C) 2011 # Kamran Idrees (C) 2015 # CATEGORY="compiler" PACKAGE="berkeley_upc" VERSION="2.20.2" PACKAGENAME="Berkeley UPC Runtime" URL="http://upc.lbl.gov" INSTALLER="Kamran Idrees " # Archive A and package name P A=${PACKAGE}-${VERSION}.tar.gz P=${PACKAGE}-${VERSION} module load compiler/berkeley_upc_translator MAKEOPTS+=" MPI_CC=$MPICC" # Interesting configure options: # # 1. Enable Totalview debugging support for UPC: # --with-multiconf=+dbg_tv # # 2. Enable Global-Address-Space Profiling (GASP) performance instrumentation support: # --with-multiconf=+opt_inst # # 3. Enable Struct pointers-to-shared, which are primarily useful for increasing the UPC_MAX_BLOCK_SIZE, # number of UPC threads, or addressable memory supported by the implementation. # Default 'packed' pointer-to-shared representation stores all the fields of a # pointer-to-shared (address, thread, and phase offset) in a single 64-bit integer type. # NOTE: Struct pointers-to-shared are slower than default 'packed' pointer-to-shared, but have larger maximum values! # --enable-sptr-struct' # # 4. Enable use of inter-Process SHared Memory (PSHM) support # --enable-pshm # # 5. Select network API UPC programs will be compiled to use by default. # NOTE: Systems equipped with a supported high-performance network should definitely use that API instead of either UDP or MPI # (which both have much higher latencies and CPU overheads than most low-level network APIs). # --with-default-network CONFIGURE_OPTS=" \ --with-default-network=aries --enable-pshm BUPC_TRANS=$BUPC_TRANSLATOR "