@Misc{messerli:jimage, author = {V. Messerli and S. Vetsch and O. Figueiredo and B. Gennart and R. D. Hersch}, title = {Parallelizing {I/O} Intensive Image Access \& Processing Applications}, year = {1998}, howpublished = {Submitted to IEEE Concurrency}, keyword = {parallel I/O, image processing, parallel computing, parallel I/O application, pario-bib}, comment = {See also gennart:CAP, messerli:tomographic, vetsch:visiblehuman.} } @InProceedings{messerli:tomographic, author = {V. Messerli, B. Gennart, R.~D. Hersch}, title = {Performances of the {PS$^2$} Parallel Storage and Processing System for Tomographic Image Visualization}, booktitle = {Proceedings of the Seventeenth International Conference on Distributed Computer Systems}, year = {1997}, month = {December}, pages = {514--522}, publisher = {IEEE Computer Society Press}, address = {Seoul, Korea}, URL = {http://diwww.epfl.ch/w3lsp/pub/publications/ps2/potppsapsftiv.html}, keyword = {parallel computing, parallel I/O, parallel I/O application, image processing, pario-bib}, abstract = {We propose a new approach for developing parallel I/O- andcompute-intensive applications. At a high level of abstraction, a macro data flow description describes how processing and disk access operations are combined. This high-level description (CAP) is precompiled into compilable and executable C++ source language. Parallel file system components specified by CAP are offered as reusable CAP operations. Low-level parallel file system components can, thanks to the CAP formalism, be combined with processing operations in order to yield efficient pipelined parallel I/O and compute intensive programs. The underlying parallel system is based on commodity components (PentiumPro processors, Fast Ethernet) and runs on top of WindowsNT. The CAP-based parallel program development approach is applied to the development of an I/O and processing intensive tomographic 3D image visualization application. Configurations range from a single PentiumPro 1-disk system to a four PentiumPro 27-disk system. We show that performances scale well when increasing the number of processors and disks. With the largest configuration, the system is able to extract in parallel and project into the display space between three and four 512x512 images per second. The images may have any orientation and are extracted from a 100 MByte 3D tomographic image striped over the available set of disks.}, comment = {See also messerli:jimage, gennart:CAP, vetsch:visiblehuman.} } @TechReport{thakur:mpi-io-implement-tr, author = {Rajeev Thakur and William Gropp and Ewing Lusk}, title = {On Implementing {MPI-IO} Portably and with High Performance}, year = {1998}, month = {October}, number = {ANL/MCS-P732-1098}, institution = {Mathematics and Computer Science Division, Argonne National Laboratory}, later = {thakur:mpi-io-implement}, URL = {http://www.mcs.anl.gov/~thakur/papers/mpio-impl.ps.gz}, keyword = {parallel I/O, multiprocessor file system interface, pario-bib}, abstract = {We discuss the issues involved in implementing MPI-IO portably on multiple machines and file systems and also achieving high performance. One way to implement MPI-IO portably is to implement it on top of the basic Unix I/O functions (open, lseek, read, write, and close), which are themselves portable. We argue that this approach has limitations in both functionality and performance. We instead advocate an implementation approach that combines a large portion of portable code and a small portion of code that is optimized separately for different machines and file systems. We have used such an approach to develop a high-performance, portable MPI-IO implementation, called ROMIO.\par In addition to basic I/O functionality, we consider the issues of supporting other MPI-IO features, such as 64-bit file sizes, noncontiguous accesses, collective I/O, asynchronous I/O, consistency and atomicity semantics, user-supplied hints, shared file pointers, portable data representation, file preallocation, and some miscellaneous features. We describe how we implemented each of these features on various machines and file systems. The machines we consider are the HP Exemplar, IBM SP, Intel Paragon, NEC SX-4, SGI Origin2000, and networks of workstations; and the file systems we consider are HP HFS, IBM PIOFS, Intel PFS, NEC SFS, SGI XFS, NFS, and any general Unix file system (UFS). \par We also present our thoughts on how a file system can be designed to better support MPI-IO. We provide a list of features desired from a file system that would help in implementing MPI-IO correctly and with high performance.} } @Misc{vetsch:visiblehuman, author = {S. Vetsch and V. Messerli and O. Figueiredo and B. Gennart and R.D. Hersch and L. Bovisi and R. Welz and L. Bidaut and O. Ratib}, title = {Visible Human Slice Server}, year = {1998}, howpublished = {http://visiblehuman.epfl.ch/}, note = {A web site giving access to 2D views of a 3D scan of a human body.}, URL = {http://visiblehuman.epfl.ch/}, keyword = {image processing, parallel I/O, pario-bib}, abstract = {The computer scientists of EPFL (Prof. R.D. Hersch and his staff), in collaboration with the Geneva Hospitals and WDS Technologies SA, have developed a parallel image server to extract image slices of the Visible Human from any orientation. This 3D dataset originates from a prisoner sentenced to death who offered his body to science. The dead body was frozen and then cut and digitized into 1 mm horizontally spaced slices by the National Library of Medicine, Bethesda-Maryland and the University of Colorado, USA. The total volume of all slices represents a size of 13 Gbyte of data.}, comment = {Very cool. See also gennart:CAP, messerli:tomographic, messerli:jimage.} }