1 / 13

Performance optimization on fish modeling software

Performance optimization on fish modeling software. Stephen Beery. In conjunction with the Ocean Modeling Group at University of Maine. Process & Topics. Background of project ID subroutines Conversion of code Implementation of CUDA Software testing Future research. Background.

fifi
Download Presentation

Performance optimization on fish modeling software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Performance optimization on fish modeling software Stephen Beery In conjunction with the Ocean Modeling Group at University of Maine

  2. Process & Topics • Background of project • ID subroutines • Conversion of code • Implementation of CUDA • Software testing • Future research

  3. Background • Part of Yi Xu’s research • Peruvian Anchovies, IBM system • Good for parallelization • Lots of fishes, need more processor power • What is CUDA?

  4. Identify Effective Subroutines • What is a subroutine? • ‘develop’ routine • ‘initspawn’ routine

  5. Conversion of Code • Only support for C as of August, 2009 • FORTRAN must be converted • Methods • Rewrote routines in C • Called C code from FORTRAN • Data accessed from common blocks/structs

  6. Implementation of CUDA

  7. Structure of CUDA file Import necessary libraries Declare any variables to be used while computing on the device Allocate memory on the graphics device CUDA core code Copy data over to GPU Execute the CUDA kernel (calls the global function) Original code to be improved Copy memory back to host Free the GPU memory

  8. Interaction between FORTRAN and CUDA 1 2 4 3 6 5

  9. Job Timing *data not conclusive

  10. Issues & Difficulties • Inter-language data-retention • 3 different languages in use • Referencing several types of memory • I/O and CUDA

  11. What happens next? • Research will continue on project • FORTRAN API to be released • Eliminates need for code conversion • Existing code will be important for reference • CUDA knowledge will be passed on • Data problems fixed • More concrete results • Wider range of testing possibilities

  12. Anchovies

  13. Acknowledgements • Thank you: • U Maine SuperMe faculty • Ocean Modeling Group • Steve Cousins, M.S. • Fei Chai, Ph.D. • Huijie Xue, Ph.D. • Supporters • National Science Foundation • U.S. Department of Defense • My REU friends

More Related