@@ -176,7 +176,7 @@ metadata synchronization small.
176
176
# Exit the define mode
177
177
f.enddef()
178
178
179
- # Write to a subarray of the variable, temperature
179
+ # Write to a subarray of the variable, var_dbl
180
180
var_dbl[0 :4 , 16 :20 ] = buf_dbl
181
181
182
182
# Close the file
@@ -224,7 +224,7 @@ collective.
224
224
...
225
225
# Metadata operations to define dimensions and variables
226
226
...
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)
228
228
f.enddef()
229
229
230
230
# Write to variables collectively
@@ -294,17 +294,18 @@ collective.
294
294
nonblocking version of the APIs. A nonblocking API means the call to the API
295
295
will return as soon as the ` put/get ` request has been registered in the
296
296
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.
308
309
* The advantage of using nonblocking APIs is when there are many small
309
310
` put/get ` requests and each of them has a small amount. PnetCDF tries to
310
311
aggregate and coalesce multiple registered nonblocking requests into a large
@@ -315,10 +316,10 @@ collective.
315
316
* Table below shows the difference in python programming between using blocking
316
317
and nonblocking APIs.
317
318
318
- | PnetCDF Blocking APIs | PnetCDF Nonblocking APIs |
319
+ | PnetCDF Blocking APIs PnetCDF Nonblocking APIs |
319
320
| :-------| :--------|
320
321
| ...<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 |
322
323
| ... ||
323
324
| # exit define mode and enter data mode<br >f.enddef() | ditto |
324
325
| ...<br ># Call blocking APIs to write 3 variables to the file | <br ># Call nonblocking APIs to post 3 write requests |
0 commit comments