diff options
Diffstat (limited to 'testpar')
-rw-r--r-- | testpar/t_coll_chunk.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/testpar/t_coll_chunk.c b/testpar/t_coll_chunk.c index 8f4fdf2..8da2e12 100644 --- a/testpar/t_coll_chunk.c +++ b/testpar/t_coll_chunk.c @@ -686,6 +686,12 @@ coll_chunktest(const char* filename, status = H5Pinsert2(xfer_plist, H5D_XFER_COLL_CHUNK_LINK_HARD_NAME, H5D_XFER_COLL_CHUNK_SIZE, &prop_value, NULL, NULL, NULL, NULL, NULL, NULL); VRFY((status >= 0),"testing property list inserted succeeded"); + + prop_value = H5D_XFER_COLL_CHUNK_FIX; + status = H5Pinsert2(xfer_plist, H5D_XFER_COLL_CHUNK_LINK_TO_MULTI, H5D_XFER_COLL_CHUNK_SIZE, &prop_value, + NULL, NULL, NULL, NULL, NULL, NULL); + VRFY((status >= 0),"testing property list inserted succeeded"); + break; case API_MULTI_HARD: @@ -700,6 +706,12 @@ coll_chunktest(const char* filename, status = H5Pinsert2(xfer_plist, H5D_XFER_COLL_CHUNK_LINK_NUM_TRUE_NAME, H5D_XFER_COLL_CHUNK_SIZE, &prop_value, NULL, NULL, NULL, NULL, NULL, NULL); VRFY((status >= 0),"testing property list inserted succeeded"); + + prop_value = H5D_XFER_COLL_CHUNK_FIX; + status = H5Pinsert2(xfer_plist, H5D_XFER_COLL_CHUNK_LINK_TO_MULTI_OPT, H5D_XFER_COLL_CHUNK_SIZE, &prop_value, + NULL, NULL, NULL, NULL, NULL, NULL); + VRFY((status >= 0),"testing property list inserted succeeded"); + break; case API_LINK_FALSE: @@ -740,7 +752,11 @@ coll_chunktest(const char* filename, case API_LINK_HARD: status = H5Pget(xfer_plist,H5D_XFER_COLL_CHUNK_LINK_HARD_NAME,&prop_value); VRFY((status >= 0),"testing property list get succeeded"); - VRFY((prop_value == 0),"API to set LINK COLLECTIVE IO without optimization succeeded"); + if(prop_value !=0){/*double check if the option is switched to multiple chunk internally.*/ + status = H5Pget(xfer_plist,H5D_XFER_COLL_CHUNK_LINK_TO_MULTI, &prop_value); + VRFY((status >= 0),"testing property list get succeeded"); + VRFY((prop_value == 1),"API to set LINK COLLECTIVE IO without optimization succeeded"); + } break; case API_MULTI_HARD: status = H5Pget(xfer_plist,H5D_XFER_COLL_CHUNK_MULTI_HARD_NAME,&prop_value); @@ -750,7 +766,11 @@ coll_chunktest(const char* filename, case API_LINK_TRUE: status = H5Pget(xfer_plist,H5D_XFER_COLL_CHUNK_LINK_NUM_TRUE_NAME,&prop_value); VRFY((status >= 0),"testing property list get succeeded"); - VRFY((prop_value == 0),"API to set LINK COLLECTIVE IO with true optimization succeeded"); + if(prop_value !=0){/*double check if the option is switched to multiple chunk internally.*/ + status = H5Pget(xfer_plist,H5D_XFER_COLL_CHUNK_LINK_TO_MULTI_OPT, &prop_value); + VRFY((status >= 0),"testing property list get succeeded"); + VRFY((prop_value == 1),"API to set LINK COLLECTIVE IO without optimization succeeded"); + } break; case API_LINK_FALSE: status = H5Pget(xfer_plist,H5D_XFER_COLL_CHUNK_LINK_NUM_FALSE_NAME,&prop_value); |