1. A method performed at a compute node for storing data generated by a plurality of parallel processes to a shared object in a parallel computing system, wherein said method is performed by at least a first one of said parallel processes that generate said shared object, wherein said compute node hosts at least said first one of said parallel processes and wherein said method comprises the steps of: dynamically determining a write block size for storing said data; exchanging a determined amount of said data with at least a second one of said parallel processes to achieve a block of said data having said dynamically determined write block size, wherein said exchanging comprises said first one of said parallel processes one or more of (i) sending said determined amount of said data to, and (ii) receiving said determined amount of said data from, said at least second one of said parallel processes to achieve said block of said data having said dynamically determined write block size at said compute node hosting said first one of said parallel processes; and writing said block of said data having said dynamically determined block size to a file system for storage.