Optimization of System Performance using OpenMP m Yumiko Kimezawa May 25, 20111RPS
Outline Problems with Previous Research What is OpenMP and MPI ? -A brief example of OpenMP Research Goal Future Work May 25, 2011RPS2
Problems with Previous Research The scale of systems is large Accuracy of PPD Algorithm A/D converters are not implemented -Raw ECG data is analog data May 25, 2011RPS3 PPD Algorithm will be optimized by using OpenMP or MPI
What are OpenMP and MPI ? OpenMP -A shared-memory application programming interface (API) -Facilitator of shared-memory parallel programming -Is used on a board range of SMP architecture -Is usually used to parallelize loops MPI -Message Passing Interface -Programming for distributed-memory architecture -Multiple processes operate independently May 25, 2011RPS4
A brief example of OpenMP May 25, 2011RPS5 Fork-join programming model Team of threads Initial threads Fork Join Thread 0: for(i=0; I < 25; i++) sum += i; Thread 1: for(i=25; I < 50; i++) sum += i; Thread 2: for(i=50; I < 75; i++) sum += i; Thread 3: for(i=75; I < 100;I ++) sum += i; + Sum
Research Goal Optimization of -the HW Implementation of the A/D converter -the SW Parallelization of algorithm Improvement of accuracy of algorithm Real-time evaluation - Conclusive results are sent to the web May 25, 2011RPS6
Future Work Continue to study OpenMP Research of other algorithms May 25, 2011RPS7
May 25, 2011RPS8
Period detection Peaks processing Data reading Derivation Autocorrelation Finding interval Extraction Store of results Discrimination Period-Peaks Detection (PPD) Algorithm (2/2) May 25, 20119RPS
Period detection Peaks processing Data reading Derivation Autocorrelation Finding interval Extraction Store of results Discrimination Period-Peaks Detection (PPD) Algorithm (2/2) : Current sampling data (filtered ECG signals) : Current time (step) Equation May 25, RPS
Period detection Peaks processing Data reading Derivation Autocorrelation Finding interval Extraction Store of results Discrimination Period-Peaks Detection (PPD) Algorithm (2/2) Autocorrelation function : The autocorrelation function : The number of times needed for the calculations to get the period (256 in our program) : The filtered ECG signal May 25, RPS
Period detection Peaks processing Data reading Derivation Autocorrelation Finding interval Extraction Store of results Discrimination Period-Peaks Detection (PPD) Algorithm (2/2) May 25, RPS
System architecture Graphic LCD Controller Master CPU Memory Master CPU Memory Master CPU Timer Graphic LCD Graphic LCD LED JTAG UART JTAG UART PPD Module Master Module LED Controller LED Controller Avalon Bus FIR Filter Timer Slave CPU Memory Slave CPU External Memory External Memory Shared Memory Shared Memory ECG Data Rom May 25, RPS : Data flow : Control signal : Data flow : Control signal
System architecture Graphic LCD Controller Master CPU Memory Master CPU Memory Master CPU Timer Graphic LCD Graphic LCD LED JTAG UART JTAG UART PPD Module Master Module LED Controller LED Controller Avalon Bus FIR Filter Timer Slave CPU Memory Slave CPU External Memory External Memory Shared Memory Shared Memory ECG Data Rom May 25, RPS 1: Signal Reading : Data flow : Control signal : Data flow : Control signal
System architecture Graphic LCD Controller Master CPU Memory Master CPU Memory Master CPU Timer Graphic LCD Graphic LCD LED JTAG UART JTAG UART PPD Module Master Module LED Controller LED Controller Avalon Bus FIR Filter Timer Slave CPU Memory Slave CPU External Memory External Memory Shared Memory Shared Memory ECG Data Rom May 25, RPS 2: Filtering : Data flow : Control signal : Data flow : Control signal
System architecture Graphic LCD Controller Master CPU Memory Master CPU Memory Master CPU Timer Graphic LCD Graphic LCD LED JTAG UART JTAG UART PPD Module Master Module LED Controller LED Controller Avalon Bus FIR Filter Timer Slave CPU Memory Slave CPU External Memory External Memory Shared Memory Shared Memory ECG Data Rom May 25, RPS 3: Analysis : Data flow : Control signal : Data flow : Control signal
System architecture Graphic LCD Controller Master CPU Memory Master CPU Memory Master CPU Timer Graphic LCD Graphic LCD LED JTAG UART JTAG UART PPD Module Master Module : Data flow : Control signal : Data flow : Control signal LED Controller LED Controller Avalon Bus FIR Filter Timer Slave CPU Memory Slave CPU External Memory External Memory Shared Memory Shared Memory ECG Data Rom May 25, RPS 4: Display