Mira Computational Readiness Assessment

Assess your project's computational readiness for Mira

A review of the following computational readiness points in relation to scaling, porting, I/O, memory and vectorization may help you to determine if the INCITE Program is an appropriate resource for your research efforts.
 

Scaling

  1. For current large allocations, (100M-300M) can the science runs scale to 32-racks of Intrepid (or 100,000 cores on other systems)?
  2. For current allocations up to 100M, can the science runs scale to 8 or 16 racks of Intrepid (or 32,000-64,000 cores on other systems)?
  3. Do you have a good plan for scaling, either through scaling the code or ensembles?

Porting

  1. Has the code been ported to a Blue Gene/P system?
  2. Has the code been ported to a Blue Gene/Q system? Most codes that run on Intrepid will run on Mira with no changes, but tuning yields better performance.

I/O Requirements

  1. Do you understand your I/O requirements?
  2. Do you have the ability to adjust your method for I/O if required?

Memory

  1. Do you have methods to exploit node-level parallelism and your memory footprint? The more this is understood, the better the code will be at exploiting many lessons learned for Mira.

Vectorization

  1. Do you use BLAS/FFT/etc., for a large percentage of computation?
  2. Do you have explicitly vectorized code on any platform (e.g., SSE, double hummer, etc.)?
  3. If you haven't pursued vectorization yet, is your code otherwise amenable to it?