summaryrefslogtreecommitdiffstats
path: root/doxygen/examples/tables/fileDriverLists.dox
blob: 125df635da3398690870dbc850308a4ed0774121 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
/** File Driver List
 *
//! [file_driver_table]
<table>
<caption>I/O file drivers</caption>
<tr>
<th>File Driver</th>
<th>Description</th>
</tr>
<tr>
<td>#H5FD_CORE</td>
<td>Store in memory (optional backing store to disk file).</td>
</tr>
<tr>
<td>#H5FD_FAMILY</td>
<td>Store in a set of files.</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>
</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>
</table>
//! [file_driver_table]
 *
 *
//! [supported_file_driver_table]
<table>
<caption id="table_file_drivers">Supported file drivers</caption>
<tr>
<th>Driver Name</th>
<th>Driver Identifier</th>
<th>Description</th>
<th>Related API</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 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>
</tr>
<tr>
<td>Split</td>
<td>H5FD_SPLIT</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>
</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>
//! [supported_file_driver_table]
 *
 */