summaryrefslogtreecommitdiffstats
path: root/src/H5Fprivate.h
diff options
context:
space:
mode:
authorRobb Matzke <matzke@llnl.gov>1998-09-24 15:51:05 (GMT)
committerRobb Matzke <matzke@llnl.gov>1998-09-24 15:51:05 (GMT)
commit311e4c9ebfbea0be881586df16a8a411bb7fc9f8 (patch)
treee92cf9dde45481da9a6070ce0926a1d279538201 /src/H5Fprivate.h
parentf180bc993f45bdb5d3a46abeab9e1378e6f210da (diff)
downloadhdf5-311e4c9ebfbea0be881586df16a8a411bb7fc9f8.zip
hdf5-311e4c9ebfbea0be881586df16a8a411bb7fc9f8.tar.gz
hdf5-311e4c9ebfbea0be881586df16a8a411bb7fc9f8.tar.bz2
[svn-r720] Changes since 19980922
---------------------- ./src/H5F.c ./src/H5Fprivate.h ./src/H5P.c ./src/H5Ppublic.h ./test/chunk.c ./test/dsets.c The number of slots in the raw data cache can be queried or set with H5Pget/set_cache(), which now take an extra argument. The default number of slots is 521 and the default maximum size is 1MB. ./src/H5Fistore.c ./src/H5Fprivate.h Finished optimizations. The cache is now a hash and a linked list instead of an array. The cpu time on my machine for H5F_istore_lock() has been cut by 60% and H5F_istore_unlock() by 35%.
Diffstat (limited to 'src/H5Fprivate.h')
-rw-r--r--src/H5Fprivate.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/H5Fprivate.h b/src/H5Fprivate.h
index cf92283..6e80fa0 100644
--- a/src/H5Fprivate.h
+++ b/src/H5Fprivate.h
@@ -239,7 +239,8 @@ typedef struct H5F_create_t {
* File-access property list.
*/
typedef struct H5F_access_t {
- intn mdc_nelmts; /* Size of meta data cache (nelmts) */
+ intn mdc_nelmts; /* Size of meta data cache (elements) */
+ intn rdcc_nelmts; /* Size of raw data chunk cache (elmts) */
size_t rdcc_nbytes; /* Size of raw data chunk cache (bytes) */
double rdcc_w0; /* Preempt read chunks first? [0.0..1.0]*/
hsize_t threshold; /* Threshold for alignment */
@@ -419,10 +420,10 @@ typedef struct H5F_rdcc_t {
uintn nflushes;/* Number of cache flushes */
size_t nbytes; /* Current cached raw data in bytes */
intn nslots; /* Number of chunk slots allocated */
-#ifndef H5F_RDCC_NEW
+ struct H5F_rdcc_ent_t *head; /* Head of doubly linked list */
+ struct H5F_rdcc_ent_t *tail; /* Tail of doubly linked list */
intn nused; /* Number of chunk slots in use */
-#endif
- struct H5F_rdcc_ent_t *slot; /* Chunk slots, each points to a chunk */
+ struct H5F_rdcc_ent_t **slot; /* Chunk slots, each points to a chunk*/
} H5F_rdcc_t;
/*