mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-03-25 17:00:45 +08:00
parent
fbb9ad2596
commit
fbeddf2c9c
@ -8,33 +8,65 @@
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_CORE</td>
|
||||
<td>Store in memory (optional backing store to disk file).</td>
|
||||
<td>#H5FD_SEC2</td>
|
||||
<td>Serial I/O to file using Unix “section 2” functions.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_FAMILY</td>
|
||||
<td>Store in a set of files.</td>
|
||||
<td>#H5FD_CORE</td>
|
||||
<td>Store in memory (optional backing store to disk file).</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_LOG</td>
|
||||
<td>Store in logging file.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_MPIO</td>
|
||||
<td>Store using MPI/IO.</td>
|
||||
<td>#H5FD_FAMILY</td>
|
||||
<td>Store in a set of files.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_MULTI</td>
|
||||
<td>Store in multiple files. There are several options to control layout.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_SEC2</td>
|
||||
<td>Serial I/O to file using Unix “section 2” functions.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_STDIO</td>
|
||||
<td>Serial I/O to file using Unix “stdio” functions.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_SPLITTER</td>
|
||||
<td>Relays VFD calls to one VFD, and write calls to another VFD. Maintains two files.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_MPIO</td>
|
||||
<td>Store using MPI/IO.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_DIRECT</td>
|
||||
<td>Forces data writes to the file directly without using the system kernel buffer.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_MIRROR</td>
|
||||
<td>Serial I/O to file using Unix “stdio” functions.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_HDFS</td>
|
||||
<td>Read-Only access to Hadoop Distributed File System (HDFS).</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_ROS3</td>
|
||||
<td>Read-Only access to Amazon's S3 service.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_SUBFILING</td>
|
||||
<td>Derived from other "stacked" VFDs such as the splitter, mirror, and family VFDs.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_IOC</td>
|
||||
<td>Relays VFD calls to one VFD, and write calls to another VFD. Maintains two files.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5FD_ONION</td>
|
||||
<td>Provide in-file provenance and revision/version control.</td>
|
||||
</tr>
|
||||
</table>
|
||||
//! [file_driver_table]
|
||||
*
|
||||
@ -57,33 +89,6 @@ the default file driver for all systems.</td>
|
||||
<td>#H5Pset_fapl_sec2</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Direct</td>
|
||||
<td>#H5FD_DIRECT</td>
|
||||
<td>This is the #H5FD_SEC2 driver except data is written to or read from the file
|
||||
synchronously without being cached by the system.</td>
|
||||
<td>#H5Pset_fapl_direct</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Log</td>
|
||||
<td>#H5FD_LOG</td>
|
||||
<td>This is the #H5FD_SEC2 driver with logging capabilities.</td>
|
||||
<td>#H5Pset_fapl_log</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Windows</td>
|
||||
<td>#H5FD_WINDOWS</td>
|
||||
<td>This driver was modified in HDF5-1.8.8 to be a wrapper of the POSIX driver,
|
||||
#H5FD_SEC2. This change should not affect user applications.</td>
|
||||
<td>#H5Pset_fapl_windows</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>STDIO</td>
|
||||
<td>#H5FD_STDIO</td>
|
||||
<td>This driver uses functions from the standard C stdio.h to perform I/O
|
||||
to a single, permanent file on local disk with additional system buffering.</td>
|
||||
<td>#H5Pset_fapl_stdio</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Memory</td>
|
||||
<td>#H5FD_CORE</td>
|
||||
<td>With this driver, an application can work with a file in memory for faster reads and
|
||||
@ -92,6 +97,12 @@ version of the file can be written back to disk or abandoned.</td>
|
||||
<td>#H5Pset_fapl_core</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Log</td>
|
||||
<td>#H5FD_LOG</td>
|
||||
<td>This is the #H5FD_SEC2 driver with logging capabilities.</td>
|
||||
<td>#H5Pset_fapl_log</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Family</td>
|
||||
<td>#H5FD_FAMILY</td>
|
||||
<td>With this driver, the HDF5 file's address space is partitioned into pieces and sent to
|
||||
@ -105,14 +116,21 @@ systems that do not support files larger than 2 gigabytes.</td>
|
||||
<td>With this driver, data can be stored in multiple files according to the type of the data.
|
||||
I/O might work better if data is stored in separate files based on the type of data. The Split
|
||||
driver is a special case of this driver.</td>
|
||||
<td>#H5Pset_fapl_multi</td>
|
||||
<td>#H5Pset_fapl_multi / #H5Pset_fapl_split</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>STDIO</td>
|
||||
<td>#H5FD_STDIO</td>
|
||||
<td>This driver uses functions from the standard C stdio.h to perform I/O
|
||||
to a single, permanent file on local disk with additional system buffering.</td>
|
||||
<td>#H5Pset_fapl_stdio</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Split</td>
|
||||
<td>H5FD_SPLIT</td>
|
||||
<td>#H5FD_SPLITTER</td>
|
||||
<td>This file driver splits a file into two parts. One part stores metadata, and the other part
|
||||
stores raw data. This splitting a file into two parts is a limited case of the Multi driver.</td>
|
||||
<td>#H5Pset_fapl_split</td>
|
||||
<td>#H5Pset_fapl_splitter</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Parallel</td>
|
||||
@ -122,6 +140,56 @@ standard for both communication and file I/O.</td>
|
||||
<td>#H5Pset_fapl_mpio</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Direct</td>
|
||||
<td>#H5FD_DIRECT</td>
|
||||
<td>This is the #H5FD_SEC2 driver except data is written to or read from the file
|
||||
synchronously without being cached by the system.</td>
|
||||
<td>#H5Pset_fapl_direct</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Mirror</td>
|
||||
<td>#H5FD_MIRROR</td>
|
||||
<td>Serial I/O to file using Unix “stdio” functions.</td>
|
||||
<td>#H5Pset_fapl_mirror</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>HDFS</td>
|
||||
<td>#H5FD_HDFS</td>
|
||||
<td>Read-Only access to Hadoop Distributed File System (HDFS).</td>
|
||||
<td>#H5Pset_fapl_hdfs</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>ros3</td>
|
||||
<td>#H5FD_ROS3</td>
|
||||
<td>Read-Only access to Amazon's S3 service.</td>
|
||||
<td>#H5Pset_fapl_ros3</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Subfiling</td>
|
||||
<td>#H5FD_SUBFILING</td>
|
||||
<td>Derived from other "stacked" VFDs such as the splitter, mirror, and family VFDs.</td>
|
||||
<td>#H5Pset_fapl_subfiling</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>IOC</td>
|
||||
<td>#H5FD_IOC</td>
|
||||
<td>Relays VFD calls to one VFD, and write calls to another VFD. Maintains two files.</td>
|
||||
<td>#H5Pset_fapl_ioc</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Onion</td>
|
||||
<td>#H5FD_ONION</td>
|
||||
<td>Provide in-file provenance and revision/version control.</td>
|
||||
<td>#H5Pset_fapl_onion</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Windows</td>
|
||||
<td>#H5FD_WINDOWS</td>
|
||||
<td>This driver was modified in HDF5-1.8.8 to be a wrapper of the POSIX driver,
|
||||
#H5FD_SEC2. This change should not affect user applications.</td>
|
||||
<td>#H5Pset_fapl_windows</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Parallel POSIX</td>
|
||||
<td>H5FD_MPIPOSIX</td>
|
||||
<td>This driver is no longer available</td>
|
||||
|
@ -351,7 +351,8 @@ larger than 2 gigabytes, or retrieves information regarding driver.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5Pset_fapl_log</td>
|
||||
<td>Sets logging driver.</td>
|
||||
<td>The logging driver is a clone of the standard SEC2 (#H5FD_SEC2) driver with additional
|
||||
facilities for logging metrics and activity to a file.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5Pset_fapl_mirror/#H5Pget_fapl_mirror</td>
|
||||
@ -376,15 +377,23 @@ or retrieves information regarding driver.</td>
|
||||
<td>Modifies/queries the file driver properties of the onion driver.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5Pset_fapl_ros3/#H5Pget_fapl_ros3</td>
|
||||
<td>Modifies/queries the file driver properties of the ros3 driver.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5Pset_fapl_sec2</td>
|
||||
<td>Sets driver for unbuffered permanent files or retrieves information regarding driver.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5Pset_fapl_split</td>
|
||||
<td>Sets driver for split files, a limited case of multiple files with one metadata file
|
||||
<td>Sets driver for split files, a limited case of multi driver with one metadata file
|
||||
and one raw data file.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5Pset_fapl_splitter/#H5Pget_fapl_splitter</td>
|
||||
<td>Modifies/queries the file driver properties of the splitter driver.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>#H5Pset_fapl_stdio</td>
|
||||
<td>Sets driver for buffered permanent files.</td>
|
||||
</tr>
|
||||
|
@ -998,7 +998,7 @@
|
||||
* Additional parameters may be added to these functions in the future.
|
||||
*
|
||||
* \subsubsection subsubsec_file_alternate_drivers_split The Split Driver
|
||||
* The Split driver, H5FD_SPLIT, is a limited case of the Multi driver where only two files are
|
||||
* The Split driver is a limited case of the Multi driver where only two files are
|
||||
* created. One file holds metadata, and the other file holds raw data.
|
||||
* The function #H5Pset_fapl_split is used to manage Split file access properties. See the example
|
||||
* below.
|
||||
|
@ -1730,7 +1730,7 @@ H5_DLL herr_t H5Fset_dset_no_attrs_hint(hid_t file_id, hbool_t minimize);
|
||||
* pass the same values for \p file_id and \p flag.
|
||||
*
|
||||
* This function is available only when the HDF5 library is configured with parallel support
|
||||
* (\Code{--enable-parallel}). It is useful only when used with the #H5FD_MPIO driver
|
||||
* (\Code{--enable-parallel | HDF5_ENABLE_PARALLEL}). It is useful only when used with the #H5FD_MPIO driver
|
||||
* (see H5Pset_fapl_mpio()).
|
||||
* \endparblock
|
||||
*
|
||||
|
@ -3354,102 +3354,7 @@ H5_DLL herr_t H5Pget_core_write_tracking(hid_t fapl_id, hbool_t *is_enabled, siz
|
||||
* Valid driver identifiers distributed with HDF5 are listed and
|
||||
* described in the following table.
|
||||
*
|
||||
* <table>
|
||||
* <tr>
|
||||
* <th>Driver Name</th>
|
||||
* <th>Driver Identifier</th>
|
||||
* <th>Description</th>
|
||||
* <th>Related Function</th>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>POSIX</td>
|
||||
* <td>#H5FD_SEC2</td>
|
||||
* <td>This driver uses POSIX file-system functions like read and
|
||||
* write to perform I/O to a single, permanent file on local disk
|
||||
* with no system buffering. This driver is POSIX-compliant and
|
||||
* is the default file driver for all systems.</td>
|
||||
* <td>H5Pset_fapl_sec2()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Direct</td>
|
||||
* <td>#H5FD_DIRECT</td>
|
||||
* <td>This is the #H5FD_SEC2 driver, except data is written to or
|
||||
* read from the file synchronously without being cached by the
|
||||
* system.</td>
|
||||
* <td>H5Pset_fapl_direct()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Log</td>
|
||||
* <td>#H5FD_LOG</td>
|
||||
* <td>This is the #H5FD_SEC2 driver with logging capabilities.</td>
|
||||
* <td>H5Pset_fapl_log()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Windows</td>
|
||||
* <td>#H5FD_WINDOWS</td>
|
||||
* <td>This driver was modified in HDF5-1.8.8 to be a wrapper of the
|
||||
* POSIX driver, #H5FD_SEC2. This change should not affect user
|
||||
* applications.</td>
|
||||
* <td>H5Pset_fapl_windows()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>STDIO</td>
|
||||
* <td>#H5FD_STDIO</td>
|
||||
* <td>This driver uses functions from the standard C stdio.h to
|
||||
* perform I/O to a single, permanent file on local disk with
|
||||
* additional system buffering.</td>
|
||||
* <td>H5Pset_fapl_stdio()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Memory</td>
|
||||
* <td>#H5FD_CORE</td>
|
||||
* <td>With this driver, an application can work with a file in
|
||||
* memory for faster reads and writes. File contents are kept in
|
||||
* memory until the file is closed. At closing, the memory
|
||||
* version of the file can be written back to disk or abandoned.
|
||||
* </td>
|
||||
* <td>H5Pset_fapl_core()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Family</td>
|
||||
* <td>#H5FD_FAMILY</td>
|
||||
* <td>With this driver, the HDF5 file's address space is partitioned
|
||||
* into pieces and sent to separate storage files using an
|
||||
* underlying driver of the user's choice. This driver is for
|
||||
* systems that do not support files larger than 2 gigabytes.
|
||||
* </td>
|
||||
* <td>H5Pset_fapl_family()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Multi</td>
|
||||
* <td>#H5FD_MULTI</td>
|
||||
* <td>With this driver, data can be stored in multiple files
|
||||
* according to the type of data. I/O might work better if
|
||||
* data is stored in separate files based on the type of data.
|
||||
* The Split driver is a special case of this driver.</td>
|
||||
* <td>H5Pset_fapl_multi()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Parallel</td>
|
||||
* <td>#H5FD_MPIO</td>
|
||||
* <td>This is the standard HDF5 file driver for parallel file
|
||||
* systems. This driver uses the MPI standard for both
|
||||
* communication and file I/O.</td>
|
||||
* <td>H5Pset_fapl_mpio()</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Parallel POSIX</td>
|
||||
* <td>H5FD_MPIPOSIX</td>
|
||||
* <td>This driver is no longer available.</td>
|
||||
* <td></td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>Stream</td>
|
||||
* <td>H5FD_STREAM</td>
|
||||
* <td>This driver is no longer available.</td>
|
||||
* <td></td>
|
||||
* </tr>
|
||||
* </table>
|
||||
* \snippet{doc} tables/fileDriverLists.dox supported_file_driver_table
|
||||
*
|
||||
* This list does not include custom drivers that might be
|
||||
* defined and registered by a user.
|
||||
|
Loading…
x
Reference in New Issue
Block a user