diff options
Diffstat (limited to 'src/H5Dpkg.h')
-rw-r--r-- | src/H5Dpkg.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/H5Dpkg.h b/src/H5Dpkg.h index dc842e8..363ef1d 100644 --- a/src/H5Dpkg.h +++ b/src/H5Dpkg.h @@ -256,6 +256,13 @@ typedef struct H5D_piece_info_t { size_t buf_off; /* Buffer offset for in-place type conversion */ bool filtered_dset; /* Whether the dataset this chunk is in has filters applied */ struct H5D_dset_io_info_t *dset_info; /* Pointer to dset_info */ + bool entire_chunk; /* Whether whole chunk is selected */ + bool in_cache; + bool skip_chk_to_mds; + void *buf; + unsigned idx_hint; /* Index of chunk in cache, if present */ + H5F_block_t chunk_block; /* Offset/length of chunk in file */ + hsize_t chunk_idx; /* Chunk index for EA, FA indexing */ } H5D_piece_info_t; /* I/O info for a single dataset */ @@ -273,6 +280,15 @@ typedef struct H5D_dset_io_info_t { H5S_t *file_space; /* Pointer to the file dataspace */ H5S_t *mem_space; /* Pointer to the memory dataspace */ + size_t num_sel_cache_chks; /* Number of pieces found in cache */ + size_t num_unsel_cache_chks; /* Number of pieces NOT found in cache */ + size_t num_chks_to_load; /* # of chunks not found in cache that needs to be loaded */ + size_t num_ents_to_evict; /* # of non selected cache entries to be evicted */ + size_t free_cache_slots; /* # of free slots in the cache */ + size_t max_cache_chunks; /* max # of chunks in the cache */ + H5SL_t *chunks_to_load; /* Skip list containing information for chunks to load to cache */ + H5SL_t *entries_to_evict; /* Skip list containing information for entries to evict from cache */ + union { struct H5D_chunk_map_t *chunk_map; /* Chunk specific I/O info */ H5D_piece_info_t *contig_piece_info; /* Piece info for contiguous dataset */ @@ -324,6 +340,7 @@ typedef struct H5D_io_info_t { H5D_mpio_actual_io_mode_t actual_io_mode; /* Actual type of collective or independent I/O */ #endif /* H5_HAVE_PARALLEL */ unsigned no_selection_io_cause; /* "No selection I/O cause" flags */ + size_t full_io_chks_to_mds; /* # of chunks to add into MDS selection I/O op */ } H5D_io_info_t; /* Created to pass both at once for callback func */ |