Re: building Berkeley upc with pgi-6.1-2 with gm conduit

From: Jason Beech-Brandt (jason_at_ahpcrc_dot_org)
Date: Tue Jul 18 2006 - 15:08:47 PDT

  • Next message: Konstantin Kleisouris: "upc_all_sort"
    Dan,
    
    OK, thanks for the warning.  I've just got a working build, so I haven't 
    tried to build any of our application code with it.  I'll let you know 
    how we get on.
    
    Thanks again.
    
    Jason
    
    Dan Bonachea wrote:
    > Jason -
    >
    > It's worth noting that we've rarely/never(?) tested the specific 
    > combination of gm-conduit with PGI (due to a lack of access to a 
    > machine with that combination), so it's possible there are other 
    > undiscovered bugs there.... There are also some known (and unresolved) 
    > PGI optimizer bugs which can affect UPC code, eg:
    >   http://upc-bugs.lbl.gov/bugzilla/show_bug.cgi?id=1402
    > We've been working with the PGI team to get this and other PGI bugs 
    > we've discovered fixed, but I'd still hesitate to call PGI a fully 
    > production-quality C compiler. Please let us know how it goes for you...
    >
    > If you encounter trouble, an alternate solution is to use a 
    > different/more robust C compiler - the x86_64 version of Intel C 
    > generates quite good code for Opterons, and is what we usually 
    > recommend for GM PC clusters. gcc is also usually quite stable and 
    > robust, although the optimizer is less aggressive than Intel's.
    >
    > Dan
    >
    > At 01:45 PM 7/17/2006, Paul H. Hargrove wrote:
    >> Jason,
    >>
    >> PGI versions prior to 6.1 lacked the required inline asm support.  
    >> So, you have a new enough version of the PGI compiler.  However, the 
    >> corresponding support in bupc is not in the released 2.2.2.  The 
    >> atomics support has undergone a significant re-write since the 2.2.x 
    >> series, and thus there is no simple patch to bring a 2.2.2 version up 
    >> to the current atomic support.  However, the following 2-line change 
    >> *might* work:
    >>
    >> --- gasnet_atomicops.h  7 Mar 2006 23:36:46 -0000       1.76.2.5
    >> +++ gasnet_atomicops.h  17 Jul 2006 20:41:30 -0000
    >> @@ -53,7 +53,6 @@
    >>  #if defined(GASNETI_FORCE_GENERIC_ATOMICOPS) || /* for debugging 
    >> */        \
    >>      defined(CRAYT3E)   || /* T3E seems to have no atomic ops 
    >> */        \
    >>      defined(_SX)       || /* NEC SX-6 atomics not available to user 
    >> code? */ \
    >> -    (defined(__PGI) && defined(BROKEN_LINUX_ASM_ATOMIC_H)) || /* 
    >> haven't implemented atomics for PGI */ \
    >>      defined(__SUNPRO_C) || defined(__SUNPRO_CC) /* haven't 
    >> implemented atomics for SunCC */
    >>    #define GASNETI_USE_GENERIC_ATOMICOPS
    >>  #endif
    >> @@ -272,7 +271,7 @@
    >>     * support for inline assembly code
    >>     * 
    >> ------------------------------------------------------------------------------------ 
    >> */
    >>    #elif defined(__i386__) || defined(__x86_64__) /* x86 and 
    >> Athlon/Opteron */
    >> -    #if defined(__GNUC__) || defined(__INTEL_COMPILER) || 
    >> defined(__PATHCC__)
    >> +    #if defined(__GNUC__) || defined(__INTEL_COMPILER) || 
    >> defined(__PATHCC__) || defined(__PGI)
    >>        #ifdef GASNETI_UNI_BUILD
    >>          #define GASNETI_LOCK ""
    >>        #else
    >>
    >>
    >> However, it is entirely possible that this will trigger PGI bugs that 
    >> we work around in various ways in our development head.
    >>
    >> -Paul
    >>
    >> Jason Beech-Brandt wrote:
    >>> Hi,
    >>> I'm trying to build Berkeley upc-2.2.2 runtime with pgi 6.1-2 on our 
    >>> Opteron cluster with the gm-conduit.  However, when I do so I'm 
    >>> getting an error like
    >>> ~/src/berkeley_upc-2.2.2/gasnet/gm-conduit/gasnet_core.c:
    >>> PGC-F-0249-#error --  "We need real atomic ops with signal-safety 
    >>> for gasnet_exit..." 
    >>> (~/src/berkeley_upc-2.2.2/gasnet/gm-conduit/gasnet_core.c: 907)
    >>> PGC/x86-64 Linux/x86-64 6.1-2: compilation aborted
    >>> I've seen some bugs in the bugzilla list concerning pgi and atomics, 
    >>> but I got a bit lost.  Are there some source/configure modifications 
    >>> I can use to get this to work?
    >>> Thanks in advance for the advice.
    >>> Jason
    >>
    >>
    >> -- 
    >> Paul H. Hargrove                          PHHargrove_at_lbl_dot_gov
    >> Future Technologies Group
    >> HPC Research Department                   Tel: +1-510-495-2352
    >> Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900
    >
    

  • Next message: Konstantin Kleisouris: "upc_all_sort"