@@ -176,7 +176,7 @@ metadata synchronization small.
176176 # Exit the define mode
177177 f.enddef()
178178
179- # Write to a subarray of the variable, temperature
179+ # Write to a subarray of the variable, var_dbl
180180 var_dbl[0 :4 , 16 :20 ] = buf_dbl
181181
182182 # Close the file
@@ -224,7 +224,7 @@ collective.
224224 ...
225225 # Metadata operations to define dimensions and variables
226226 ...
227- # Exit the define mode (by default, in the collective I/O mode)
227+ # Exit the define mode (by default, into the collective I/O mode)
228228 f.enddef()
229229
230230 # Write to variables collectively
@@ -294,17 +294,18 @@ collective.
294294 nonblocking version of the APIs. A nonblocking API means the call to the API
295295 will return as soon as the ` put/get ` request has been registered in the
296296 PnetCDF library. The commitment of the request may happen later, when a call
297- to ` ncmpi_wait_all/ncmpi_wait ` is made. The nonblocking APIs are listed below.
298- + Variable.iput_var() - posts a nonblocking request to write to a variable.
299- + Variable.iget_var() - posts a nonblocking request to from from a variable.
300- + Variable.bput_var() - posts a nonblocking, buffered request to write to a variable.
301- + Variable.iput_varn() - posts a nonblocking request to write multiple subarrays to a variable.
302- + Variable.iget_varn() - posts a nonblocking request to read multiple subarrays from a variable.
303- + Variable.bput_varn() - posts a nonblocking, buffered request to write multiple subarrays to a variable.
304- + File.wait_all() - waits for nonblocking requests to complete, using collective MPI-IO.
305- + File.wait() - waits for nonblocking requests to complete, using independent MPI-IO.
306- + File.attach_buff() - Let PnetCDF to allocate an internal buffer to cache bput write requests.
307- + File.detach_buff() - Free the attached buffer.
297+ to ` File.wait_all()/File.wait() ` is made. The nonblocking APIs are listed
298+ below.
299+ + ` Variable.iput_var() ` - posts a nonblocking request to write to a variable.
300+ + ` Variable.iget_var() ` - posts a nonblocking request to from from a variable.
301+ + ` Variable.bput_var() ` - posts a nonblocking, buffered request to write to a variable.
302+ + ` Variable.iput_varn() ` - posts a nonblocking request to write multiple subarrays to a variable.
303+ + ` Variable.iget_varn() ` - posts a nonblocking request to read multiple subarrays from a variable.
304+ + ` Variable.bput_varn() ` - posts a nonblocking, buffered request to write multiple subarrays to a variable.
305+ + ` File.wait_all() ` - waits for nonblocking requests to complete, using collective MPI-IO.
306+ + ` File.wait() ` - waits for nonblocking requests to complete, using independent MPI-IO.
307+ + ` File.attach_buff() ` - Let PnetCDF to allocate an internal buffer to cache bput write requests.
308+ + ` File.detach_buff() ` - Free the attached buffer.
308309* The advantage of using nonblocking APIs is when there are many small
309310 ` put/get ` requests and each of them has a small amount. PnetCDF tries to
310311 aggregate and coalesce multiple registered nonblocking requests into a large
@@ -315,10 +316,10 @@ collective.
315316* Table below shows the difference in python programming between using blocking
316317 and nonblocking APIs.
317318
318- | PnetCDF Blocking APIs | PnetCDF Nonblocking APIs |
319+ | PnetCDF Blocking APIs PnetCDF Nonblocking APIs |
319320| :-------| :--------|
320321| ...<br ># define 3 variables of NC_DOUBLE type ||
321- | psfc = f.createVariable("PSFC", "f8", ("time", "lat", "lon"))<br >prcp = f.createVariable("prcp ", "f8", ("time", "lat", "lon"))<br >snow = f.createVariable("SNOW", "f8", ("time", "lat", "lon")) | ditto |
322+ | psfc = f.createVariable("PSFC", "f8", ("time", "lat", "lon"))<br >prcp = f.createVariable("PRCP ", "f8", ("time", "lat", "lon"))<br >snow = f.createVariable("SNOW", "f8", ("time", "lat", "lon")) | ditto |
322323| ... ||
323324| # exit define mode and enter data mode<br >f.enddef() | ditto |
324325| ...<br ># Call blocking APIs to write 3 variables to the file | <br ># Call nonblocking APIs to post 3 write requests |
0 commit comments