160 likes | 170 Views
Creating a Parallel Program to Compute Statistical Information. Victoria Sensano. Maui Scientific Research Center Research Supervisor: Douglas Hope. The Goal To Automate the process of rating images. Benefits To test imaging systems Design and optimize imaging systems. Where to start?
E N D
Creating a Parallel Programto Compute Statistical Information Victoria Sensano Maui Scientific Research Center Research Supervisor: Douglas Hope
The Goal To Automate the process of rating images • Benefits • To test imaging systems • Design and optimize imaging systems Where to start? Understand how to define information in an image.
How does one define information in an image • Based on the amount of information in the image • Information is computed using ensembles of object and image scenes • Based on how well one can associate an image with its object scene Associate “Statistical Comparison” Object Ensemble of Spiral Galaxies Given Image Scene Images from : http://hubblesite.org/gallery
Object and Image Ensembles Object Ensemble Image Ensemble Image provided by Boeing
Important Question to Address... How many object and image scenes in the ensembles are required to make a good comparison? • Constraints: • Limited memory • Solution: • Break the problem up into pieces then combine
My Project • Create a parallel program • - adapt existing single processor code to run in a parallel environment • Create two Matlab programs • - divide the frequencies between processors • - combine frequencies to form information maps • Evaluate performance within parallel environment • - Verify results obtained by the parallel program
How Programs Work Together Three existing external programs used to create image and object ensembles Matlab Program 1 Distributes frequency values Parallel Program Sets up parallel environment Existing Matlab Programs Computes the information Combines results Matlab Program 2
Three existing external Program used to create image and object ensembles Matlab Program 1 Distributes frequency values Parallel Program Existing Matlab Programs Matlab Program 2
Matlab Program 1 -- Divide the Workload • Distributes the work load by allowing the user to select the amount of processors to be used. • This program divides the frequency values between the amount of processors selected for computation. Frequency values between 1 and 100 Processor 1 Select Amount of Processors Frequency values between 101 and 200 3 Processors Processor 2 Frequency values between 201 and 300 Processor 3
Three existing external Program used to create image and object ensembles Matlab Program 1 Distributes frequency values Parallel Program Sets up parallel environment Existing Matlab Programs Matlab Program 2
Parallel Program Sets up the parallel environment using MPI and C to run the existing Matlab programs on the Huinalu Cluster at the Maui High Performance Computing Center. Sends a message to each processor to 1) Open files that contain frequency values 2) Begins to open existing Matlab Program Processor sends acknowledgment of receiving the message Each node begins to compute information at its assigned frequency values
Three existing external Program used to create image and object ensembles Matlab Program 1 Distributes frequency values Parallel Program Sets up parallel environment Computes the information Existing Matlab Programs Matlab Program 2 Combines results
Combines results forming information maps Information Map - is a combination of frequencies within its Fourier Domain Matlab Program 2 -- Combine Results Aperture 4cm Aperture 3cm SNR 5 SNR 10 SNR 15 (4) Red color = more information at low frequencies (0) Blue color = less information at high frequencies SNR 20
Evaluating Performance within the Parallel Environment Approaching its limit Testing: 1) Design 2) Efficiency • Pros: • Faster Results than using a single processor to do computations Cons: Data Dependencies - use of the same storage location
Conclusion • Project Achievements: • Used MPI and C to run existing Matlab programs in a parallel environment • Created Matlab programs to distribute workload over the processors and combine results • Confirmed that Matlab programs performed as expected • Evaluated the parallel program for its design and efficiency • Future Goals of Researchers: • Use parallel implementation to compute information using large ensembles • Numerically confirm theoretical predictions • Use information to characterize the quality of an image
National Science Foundation Center for Adaptive Optics Malika Bell, Lisa Hunter, Liz Esperanza and the CfAO instructors Maui Scientific and Research Center Douglas Hope and Stuart Jefferies Maui Community College Mark Hoffman and Wallette Pallegrino Maui Economic and Development Board Isla Yap and Leslie Wilkins Acknowledgements Funding provided through a Research Experiences for Undergraduates (REU) Supplement to the Center for Adaptive Optics, a National Science Foundation Science and Technology Center (STC), AST-987683 Satellite images : http://www.spaceimaging.com/default.htm