The goals of the High Performance Biomedical Computing Program are to identify and solve those complex biomedical problems that can benefit from high performance computing and communications hardware, modern software engineering principles, and efficient algorithms. This effort includes providing high performance parallel computer systems for the NIH and development of parallel algorithms for biomedical applications. Using a high performance parallel computer, biomedical scientists can greatly reduce the time it takes to complete computationally intensive tasks and can adopt new approaches for processing experimental data. This may allow for the inclusion of more data in a calculation, the determination of a more accurate result, a reduction in the time needed to complete a long calculation, or the implementation of a new algorithm or more realistic model. High performance parallel computing also allows biomedical scientists to analyze and study large datasets that cannot be processed within a practical amount of computer time on conventional sequential or vector processing machines. With high bandwidth network connections and interactive user interfaces, parallel computing is readily accessible to a biomedical researcher in the laboratory or clinic at the investigator's computer workstation. In addressing these computational challenges, the Computational Bioscience and Engineering Laboratory (CBEL) is developing algorithms for a wide range of biomedical applications where computational speed and advanced visualization techniques are important. These include image processing of electron micrographs, medical imaging, radiation treatment planning, electron paramagnetic resonance imaging and spectroscopy, human genetic linkage analysis, cDNA microarray data analysis, protein folding prediction, protein structure determination via nuclear magnetic resonance (NMR) spectroscopy and x-ray crystallography, quantum chemical methods, and molecular dynamics simulations. The ultimate goal is to provide high performance parallel computing to facilitate the science that is done at the NIH. While developing these computationally demanding applications, CBEL is investigating the following high performance computing issues: (1) partitioning a problem into many parts that can be independently executed on different processors; (2) designing the parts so that the computing load can be distributed evenly over the available processors or dynamically balanced; (3) designing algorithms so that the number of processors is a parameter and the algorithms can be configured dynamically for the available machine; (4) developing tools and environments for producing portable parallel programs; (5) incorporating interactive data visualization into the user environment; (6) monitoring system performance; (7) proving that a parallel algorithm on a given machine meets its specifications; and (8) evaluating modern parallel computer architectures for their performance characteristics on biomedical applications.