# Research Summary

## Group Member: Viktor Decyk

## High Performance Computing

The purpose of this research is to develop strategies, algorithms, and techniques to enable effective use of high performance computers for the solution of large-scale scientific problems.

#### BASIC SCIENTIFIC PROGRAMMING

**Why Fortran?**

*This Op-Ed article describes why Fortran still dominates high performance scientific computing. One reason: it is not your grandfather's FORTRAN.*

**Why Fortran?**

**Fortran 95 Lectures**

*These lectures are intended to introduce Fortran77 programmers to the new features of Fortran95. Strategies for how to modernize old Fortran77 codes incrementally, as well as object-oriented design in Fortran 95 will be discussed.*

**Fortran 95 Lectures**

**Modernization of Fortran Legacy Code**

*This presentation describes how to use the object-based features of Fortran95 to modernize legacy Fortran77 codes.*

**Modernization of Fortran Legacy Code**

**Optimization techniques for RISC processors**

*This preprint describes general strategies for optimizing particle-in-cell-codes written in Fortran for RISC processors. These strategies include data reorganization to improve cache utilization and code reorganization to improve efficiency of arithmetic pipelines. Results show performance improvements of 1.4 to 3.4 times can be achieved. Final version published in Computers in Physics, 10 (3) May/June 1996.*

**Optimization techniques for RISC processors**

**Object-Oriented Programming in Fortran 90**

*This web site describes modern features of Fortran90, an object-based language useful for complex scientific programs.*

ALGORITHMS FOR PARTICLE-IN-CELL CODES

**UPIC: UCLA Parallel PIC Framework**

BASIC PLASMA PHYSICS