Re: upc_threadof() inconsistency?

From: Paul H. Hargrove (PHHargrove_at_lbl_dot_gov)
Date: Sun Apr 11 2010 - 15:30:45 PDT

  • Next message: Abdullah Kayi: "Re: upc_threadof() inconsistency?"
    Reinhold Bader wrote:
    [snip]
    > Note that if I replace the declaration
    > shared [*] int a[THREADS][3];
    > by
    > shared [3] int a[THREADS][3];
    > (which I believe should be equivalent in this situation)
    > the problem seems not to appear (neither the changing values nor the
    > incorrect affinities).
    >   
    [snip]
    
    
    Yes, I find that the replacement declaration makes all three compilers 
    agree in all respects.
    I will include that in the bug report.
    
    However, my lack of confidence in understanding multi-dimensional arrays 
    in UPC leaves me unable to agree or disagree with your believe that 
    '[*]' and '[3]' are equivalent.  Based on the three compilers it looks 
    as if Cray and GCCUPC have different layouts in the '[*]' case (and 
    Berkeley UPC appears to have one that may overlap itself in some way!).
    
    Is anybody reading this who can state with any certainty the correct 
    layout for the following:
        shared [*] int a[THREADS][3];
    In particular is it, or is it NOT, equivalent to
        shared [3] int a[THREADS][3];
    
    
    -Paul
    
    -- 
    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     
    

  • Next message: Abdullah Kayi: "Re: upc_threadof() inconsistency?"