Parallelization of a Non-Linear Analysis Code

Travis Whitlow

Alabama A & M University

Research Alliance in Math and Science

Computer Science and Engineering Division

Mentors: Dr. Lee Hively and Dr. Jim Nutaro

http://www.csm.ornl.gov/Internships/rams_07/abstracts/t_whitlow.pdf

Research

Over the last decade, ORNL has developed and patented a novel approach for forewarning of a large variety of machine and biomedical events. One of the most amazing uses of this research involves accurate prediction of epileptic seizures with up to 4.5 hours of forewarning. The analysis involves 27 GB of brain wave data with 40 seizure datasets and 20 non-event datasets. The majority of this analysis to date has been on desktop computers.

An important next step in this effort is implementation on a high-performance computer for rapid analysis. This work involves conversion of the existing research-class, nonlinear statistical FORTRAN code to a parallelized form that runs on a high-performance cluster computer. The brain wave data will be analyzed for seizure forewarning for various values of the statistical parameters. The goal is maximal total true rate, which is the sum of true positives (correct

prediction of a seizure event) and true negatives (no forewarning when no event occurs).

Objectives

1. Convert an existing research-class, nonlinear statistical

FORTRAN code to a parallelized form that runs on a high-performance cluster computer

2. Analyze brain wave data for seizure forewarning for various values of the statistical parameters

3. Find a parameter set that maximizes the total true rate

Seizure Prediction Process

2

1.EEG data gathered and sent to SeizAlert device

2(a).Artifact removal done and discrete points generated

1

3

2(b). Analysis of dissimilarity

Methodology

The program paradigm MPI (Message Passing Interface) was used to convert the existing code into a more parallelized form, which was ran on a high-performance cluster.

3. Forewarning result

Fig.3. SeizAlert seizure prediction process

Results

How was it done?

(example)

Lets say,

T= CPU time (seconds/program)

T-graph

FORTRAN + MPI

include ‘mpif.h’

integer myrank,a

call MPI_INIT (…)

call MPI_COMM_RANK(…)

…

call MPI_FINALIZE

end

FORTRAN

Program Example

integer :: a

a = 0

do I = 1,10

a = a+1

end do

print*, a

Using MPI and running n processors,

, still (ideally)

But 10 times the output, when n = 10

The CPU time was predicted to remain somewhat constant, given the assumption that each processor had identical calculating ability.

Also, examination of the forewarning summaries made it possible to narrow the parameter space by graphing the total true rate versus each parameter.

By doing so a visible parameter value region is shown, making it possible to see which values generate higher total true rates.

Fig.1. Example of parallelized FORTRAN code using MPI

As you can see, MPI isn’t a program language in itself, but is merely a software vehicle that carries a code to and from processors and allows numerous copies of a code to be executed simultaneously.

Sent to processors

Gather results

Future Work

Initialization

Output

Biomedical examples include forewarning of ventricular fibrillations

(total true rate = fT = 5/5) and fainting (fT = 2/2) from surface heart waves (electro-cardiogram, ECG); detection of sepsis onset (fT = 23/23) from ECG, and breathing difficulty from surface chest sounds (fT = 2/2). Industrial applications provide forewarning of machine failures from motor power to tri-axial acceleration.

Each job is calculated simultaneously

Fig.2. Parallel code using multiple processors

The Research Alliance in Math and Science program is sponsored by the Mathematical, Information, and Computational Sciences Division, Office of Advanced Scientific Computing Research, U.S. Department of Energy. The work was performed at the Oak Ridge National Laboratory, which is managed by UT-Battelle, LLC under Contract No. De-AC05-00OR22725. This work has been authored by a contractor of the U.S. Government, accordingly, the U.S. Government retains a nonexclusive, royalty-free license to publish or reproduce the published form of this contribution, or allow others to do so, for U.S. Government purposes.

OAK RIDGE NATIONAL LABORATORY

U.S. DEPARTMENT OF ENERGY

The author would like to thank Dr. Hively and Dr. Nutaro for all the help on accomplishing my project, as well as Dr. Deng of Alabama A&M for his encouragement and financial support to participate in this program.