1. 14 Jan, 2015 2 commits
    • Rob Latham's avatar
      use PATH_MAX instead of magic number · a30a4721
      Rob Latham authored
      
      
      User on OpenMPI list wanted to create a 259 character file.  shared file
      pointer name construction used the magic '256' value to construct a full
      path to the hidden shared file pointer file.  PATH_MAX already exists
      for this purpose, so use it.
      
      While there, found a few spots checking/setting PATH_MAX, so do that in
      one place
      
      Closes #2212
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      a30a4721
    • Rob Latham's avatar
      make ADIOI_Shfp_fname report errors · ed39c901
      Rob Latham authored
      
      
      Right now there's only one error condition: file name too long.  This
      change checks return codes of ADIOI_Strncpy and informs caller.
      Otherwise, really long names result in buffer overruns.
      
      See #2212
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      ed39c901
  2. 08 Jan, 2015 1 commit
  3. 05 Dec, 2014 1 commit
  4. 24 Nov, 2014 1 commit
    • Paul Coffman's avatar
      romio gpfs: select correct read buffer · 230c2df3
      Paul Coffman authored and Rob Latham's avatar Rob Latham committed
      
      
      ROMIO GPFSMPIO_P2PCONTIG threaded read needs to toggle first read buffer
      
      When using both the GPFSMPIO_P2PCONTIG and GPFSMPIO_PTHREADIO
      optimizations there was a correctness bug when reading where for the
      first round the read buffer did not toggle to the two-phase buffer for
      the pthread reader, resulting in diseminating the data from the wrong
      buffer.  The fix is to do the toggle after the first read.
      Signed-off-by: default avatarPaul Coffman <pkcoff@us.ibm.com>
      Signed-off-by: Rob Latham's avatarRob Latham <robl@mcs.anl.gov>
      230c2df3
  5. 13 Nov, 2014 2 commits
  6. 28 Oct, 2014 2 commits
    • Paul Coffman's avatar
      Assign large blocks first in ADIOI_GPFS_Calc_file_domains · c16466e3
      Paul Coffman authored and Rob Latham's avatar Rob Latham committed
      
      
      For files that are less than the size of a gpfs block there seems to be
      an issue if successive MPI_File_write_at_all are called with proceeding
      offsets.  Given the simple case of 2 aggs, the 2nd agg/fd will be utilized,
      however the initial offset into the 2nd agg is distorted on the 2nd call
      to MPI_File_write_at_all because of the negative size of the 1st agg/fd
      because the offset info the 2nd agg/fd is influenced by the size of the
      first.  Simple solution is to reverse the default large block assignment so
      in the case where only 1 agg/fd will be used it will be the first.  By chance
      in the 2 agg situation this is what the GPFSMPIO_BALANCECONTIG
      optimization does and it does not have this problem.
      Signed-off-by: Rob Latham's avatarRob Latham <robl@mcs.anl.gov>
      c16466e3
    • Paul Coffman's avatar
      MP_IOTASKLIST error checking · 976272a7
      Paul Coffman authored and Rob Latham's avatar Rob Latham committed
      
      
      PE users may manually specify the MP_IOTASKLIST for explicit aggregator
      selection.  Code needed to be added to verify that the user
      specification of aggregators were all valid.
      
      Do our best to maintain the old PE behavior of using as much of the
      correctly specified MP_IOTASKLIST as possible and issuing what it
      labeled error messages but were really warnings about the incorrect
      portions and functionally just ignoring it, unless none of it was usable
      in which case it fell back on the default.
      Signed-off-by: Rob Latham's avatarRob Latham <robl@mcs.anl.gov>
      976272a7
  7. 20 Oct, 2014 2 commits
    • Paul Coffman's avatar
      fix failure to update status in p2pcontig case · c2ce2188
      Paul Coffman authored and Rob Latham's avatar Rob Latham committed
      
      
      ADIOI_GPFS_WriteStridedColl and ADIOI_GPFS_ReadStridedColl need to call
      MPIR_Status_set_bytes when GPFSMPIO_P2PCONTIG=1.
      
      When the GPFSMPIO_P2PCONTIG optimization is set, the code path for
      ADIOI_GPFS_WriteStridedColl and ADIOI_GPFS_ReadStridedColl returns
      before MPIR_Status_set_bytes is called.  Duplicate the call to
      MPIR_Status_set_bytes in the GPFSMPIO_P2PCONTIG code path.
      Signed-off-by: Rob Latham's avatarRob Latham <robl@mcs.anl.gov>
      c2ce2188
    • Rob Latham's avatar
      romio: small formatting fix for compiler warnings · 410ba24a
      Rob Latham authored
      Update a debug-only print string to accomodate recent updates to the
      type of the length parameter.
      
      No reviewer
      410ba24a
  8. 01 Oct, 2014 2 commits
  9. 18 Sep, 2014 1 commit
  10. 16 Sep, 2014 2 commits
    • Rob Latham's avatar
      Remove comm_split in deferred open case · 6b9e0dc0
      Rob Latham authored
      comm_split might scale poorly on some systems, and we don't even use the
      resulting communicator.  it was used as a marker, but we have enough
      other information.
      6b9e0dc0
    • Rob Latham's avatar
      fix logic in syshint processing check · 8da6ae0a
      Rob Latham authored
      Ken was right: I was being too clever before.  now, simply and more
      explicitly check if anyone has a NULL systemwide-hint info object.
      8da6ae0a
  11. 03 Sep, 2014 3 commits
  12. 22 Aug, 2014 3 commits
  13. 11 Aug, 2014 4 commits
  14. 07 Aug, 2014 2 commits
    • Rob Latham's avatar
      HINDEXED_BLOCK is not quite an INDEXED_BLOCK · 0e675b02
      Rob Latham authored
      
      
      Someone (Mohamad Chaarawi <chaarawi@hdfgroup.org>) finally used
      HINDEXED_BLOCK and  discovered that ROMIO's HINDEXED_BLOCK
      implementation was.... incomplete.  or at least untested.
      
      - ADIOI_Count_contiguous_blocks simply aborted when fed a type it did
        not know about.  hindexed_block blocks are counted same as
        indexed_block blocks.
      
      - But, the stride between hindexed_block blocks is given by the explicit
        addresses.  indexed_block, on the other hand, computes a stride based
        on type.
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
      0e675b02
    • Paul Coffman's avatar
      Reduce P2PContig communication with local compute · bfc09241
      Paul Coffman authored and Rob Latham's avatar Rob Latham committed
      
      
      P2PContig additional optimizations for performance improvement to
      exchange some communication during aggregation for local computation -
      most helpful at scale
      Signed-off-by: Rob Latham's avatarRob Latham <robl@mcs.anl.gov>
      bfc09241
  15. 05 Aug, 2014 2 commits
  16. 28 Jul, 2014 1 commit
  17. 19 Jul, 2014 1 commit
  18. 18 Jul, 2014 8 commits