Overview
Java's File I/O libraries perform extremely poorly on array data,
because they force you to read/write elements one at a time.
I've recently added array operations to the File I/O libraries of
Titanium
to support fast bulk I/O.
Also see my page on
Bulk I/O extensions to Java
These extensions are without contest the fastest way to perform
I/O on array data in Titanium.
Documentation for the Bulk File
I/O Extensions
These pages document the usage of the library extensions
Bulk I/O on Java Arrays
available starting in tc version 0.694/IF.92
Bulk I/O on Titanium Arrays
available starting in tc version 1.47
Asynchronous Bulk I/O
still under development - not yet available to users, but comments are welcome
Papers
These papers provide experimental results motivating the extensions,
which can provide speedups in excess of 60x!
Bonachea, D., Dickens, P. and Thakur, R. "
High-Performance File I/O in Java: Existing Approaches and Bulk I/O Extensions,"
Argonne National Laboratory, Technical Report #ANL/MCS-P840-0800, August 2000.
(PostScript ps)
Submitted to the
Concurrency and Computation:Practice and Experience Journal, for publication in an upcoming issue.