Re: Debugging problems

From: Paul H. Hargrove (PHHargrove_at_lbl_dot_gov)
Date: Wed Sep 09 2009 - 11:15:37 PDT

  • Next message: Andreev Nikita: "Re[2]: Debugging problems"
    Nikita,
    
    The attached patch adds the options for an additional sub-build with 
    GASP support plus debugging info.  Unfortunately there is no currently 
    way in our infrastructure to separately enable/disable debugging info 
    and our debugging assertions.  Therefore the programs compiled with 
    "-inst -g" will run with lots of assertions that will slow the 
    execution, potentially significantly. So, this particular sub-build is 
    really only suitable for debugging.  However, I did at least disable the 
    low-level tracing and stats collection with are made mostly redundant by 
    GASP instrumentation. 
    
    After applying this patch to the Berkeley UPC source tree, you will need 
    to reconfigure and build Berkeley UPC.  Just as you passed
          --with-multiconf=+opt_inst
    (or similar) when configuring before, you will now want
          --with-multiconf=+opt_inst,+dbg_inst
    to get support for GASP both with and without debugging.  Once you have 
    configured, compiled, and installed, the resulting complier should 
    recognize the case of "-g" and "-inst" together on the command line 
    (order doesn't matter) and use this new sub-build.
    
    I have sanity-checked this by building a compiler configured as 
    described above and confirmed that "upcc -c -g -inst ..." attempts to 
    invoke the proper sub-build, and that the resulting object file and the 
    libs in that sub-build all contain debug info.  However, I don't have 
    PPW or other GASP-enabled tools setup to perform a more complete test.
    
    If you have any further problems, let us know.
    
    -Paul
    
    Paul H. Hargrove wrote:
    > Nikita,
    >
    [snip]
    >
    > I believe there is a way to force creation of an additional sub-build 
    > with what you want, but not by default.  I am going to look into it 
    > and will follow up with a second e-mail containing details of what I 
    > find.
    >
    > -Paul
    [snip]
    
    
    -- 
    Paul H. Hargrove                          PHHargrove_at_lbl_dot_gov
    Future Technologies Group                 Tel: +1-510-495-2352
    HPC Research Department                   Fax: +1-510-486-6900
    Lawrence Berkeley National Laboratory     
    
    
    Index: multiconf.conf.in
    ===================================================================
    RCS file: /var/local/cvs/upcr/multiconf.conf.in,v
    retrieving revision 1.13
    diff -u -p -r1.13 multiconf.conf.in
    --- multiconf.conf.in	5 Nov 2008 15:55:21 -0000	1.13
    +++ multiconf.conf.in	9 Sep 2009 18:02:43 -0000
    @@ -94,6 +94,10 @@ dbg_gccupc ; --with-gccupc=$GCCUPC_TRANS
     # GCC/UPC + UPCR mode
     opt_gccupc ; --with-gccupc=$GCCUPC_TRANS ; $opt{'gccupc'} ; -gccupc 
     
    +# instrumented mode w/ debugging info (for use with GASP-enabled performance tools)
    +# does not enable gasnet-level tracing or stats, but does enable system-wide sanity checks
    +dbg_inst ; --with-translator=$BUPC_TRANS --enable-debug --disable-stats --disable-trace --enable-inst ; $opt{'g'} && ( $opt{'inst'} || $opt{'inst-functions'} || $opt{'inst-local'} || $opt{'inst-toolname'} ) ; -bupc
    +
     # Debug configuration - enables system-wide sanity checks and globally disables backend optimization
     # also enables tracing and stats
     dbg ; --with-translator=$BUPC_TRANS --enable-debug ; $opt{'g'} ; -trace,-bupc
    

  • Next message: Andreev Nikita: "Re[2]: Debugging problems"