Internal:Annual Reports: Difference between revisions

From crtc.cs.odu.edu
Jump to navigation Jump to search
Nikos (talk | contribs)
Nikos (talk | contribs)
Line 1: Line 1:




== Milestones, Outcomes, and Metrics ==
== Summary ==


'''Year 1:'''  
'''Year 1:'''  


1. '''''Design the telescopic approach for anisotropic parallel mesh generation and MRTS system based on  
The first year of this project aimed at investigating a tangible implementation plan for design a multi-layered algorithmic and software framework for 3D tetrahedral anisotropic parallel mesh generation and adaptation relying on error-based metrics.  
        current and emerging low-level multithreading systems and communication substrates.'''''


1.A '''Design Telescopic Approach for Anisotropic Parallel Mesh Generation [Nikos/David_M/David_D]'''
The main accomplishments have been:
1. Identified (and in two cases started) the implementation of three mesh generation approaches for the lower chip-level (optimistic) implementation of 3D tetrahedral anisotropic parallel mesh generation and adaptation: (i) the default method/software based on sequential AFLR3 from MSU –identified basic operations and challenges, (ii) a new implementation (CDT3D) using known algorithms for anisotropic mesh generation and adaptation, but taking into account lessons learned from and new requirements for ODU’s telescopic approach and (iii) a completely new method in which an anisotropic 3D metric is embedded and isotropically meshed on a manifold in 4D dimensional space which could leverage ODU’s 4D Delaunay-based  parallel optimistic I2M conversion technology.
2. Started the process of designing and implementing  two out of four layers of the telescopic approach using TetGen (Delaunay-based open source mesh generation software): (i) Parallel Constrained (PC) layer that targets multiple racks of nodes,  (ii) Parallel Data Refinement (PDR) layer that targets multiple nodes (within a single rack).
3. Identified test cases with NASA/LaRC (CAD model of a half DLR-F6 Airbus-type aircraft and a series of complex components from AIM@SHAPE repository) to evaluate mesh generation and adaptation modules.
4. Identified two state-of-the-art software runtime systems from industry, academia and national labs that meet the requirements of the proposed Multi-Layered Runtime System (MRTS): (i) OCR is a runtime system from Intel and (ii) Argo is an exascale-era ecosystem build by a collaboration effort between DoE labs (mainly ANL) and academia.


'''Action Items:'''
The results so far are promising. For example, the initial PDR implementation using TetGen and homegrown I2M conversion methods is stable (i.e., generate the same quality mesh with the sequential code, see Figure 1), robust (i.e., can mesh all the geometries tried –those the sequential code manages to process), with more than 95% code re-use and it is efficient both at:
 
(i) the node-level (with 32 cores): the fixed speedup is more than 16 for a mesh with 800M element and scalable (weak) speedup is close to 20.  
i)  Choose 2 to 3 geometries pertinent to this project and generate surface mesh, normals, flag couple of features that might need further processing [David_D/David_M]
(ii) the rack(s)-level (30 nodes with 20 cores each) using MPI+threads and CRTC’s I2M conversion software, the PDR.PODM’s scalable speedup is increasing linearly with a mesh 1.14 billion elements (using 600 cores). Figure 2 depicts the performance for both Distributed Shared Memory paradigm on cc-NUMA machines and Distributed Memory paradigm on a cluster of nodes at CRTC. We anticipate better performance for AFLR3 and PDR-like approach we plan to start implementing in Years 2 and 3 of this project.
    -- The geometries should expose the benefits of AFLR3 and adaptation through MOESS's
        error-based metrics vs. isotropic meshing
      -- Simple aerospace geometry described by surface triangulation, focus on parallel
          volume mesh generation [David_D, Due by Jan. 2016]
      -- Simple ideal benchmark geometry described by both surface triangulation and analytic
          means, focus on parallel volume mesh generation and adaptation using error-based
          metrics [David_D/David_M, Due by Jan. 2016]
      -- NASA/LaRC Test cases from [http://aaac.larc.nasa.gov/tsab/cfdlarc/aiaa-dpw/Workshop3/workshop3.htm 1] and [http://aaac.larc.nasa.gov/tsab/cfdlarc/aiaa-dpw/Workshop3/DPW3-geom.html 2] like [[File: CADModelofDLR-F6.png |50px]] and [[File:DPW-W1 BaselineWing.png|50px]]
          described by surface triangulation, normals, some features (flaged), focus on
          overheads for scalable geometry, jump-start parallel volume mesh generation
          [Nikos/NASA-LaRC, Due by Dec. 2015]
 
 
ii) Identify AFLR3 operations for fine-grain concurrency for optimistic layer [David_M/Nikos]
  David_M: AFLR3 is under re-organization. It is expected to be completed by March 2016.
                  Goal explore concurrency for AFT-based methods at fine-grain level.
  David_M: Explore the triple (Mesh, Solver, Refinement) paradigm
  Nikos: Can look into this, if I get the AFLR3 src code and pertinent papers to leverage
              understanding from Delaunay-Based find-grain level.
  Nikos/David_D: consider the evaluation of an  alternative approach based on Delaunay
                based methods in parametric space
 
 
iii) PDR.AFLR3 implementation:
  -- Given fixed geometries (from 1.A.i) and target 32-core nodes  study impact of costs like:
      pre-process geometry, data-decomposition, roll-backs to meet MOESS's metrics, etc..  
      [David_M/Nikos]
      Nikos: I can run AFLR3 and perform these studies
 
  -- Integration of PDR with AFLR3 [David_M/Nikos]
 
 
iv) Rough estimates of overheads to jump-start process [Nikos: given he has (i) and (iii)]
   
 
1.B  Design MRTS for current and emerging parallel architectures [Nikos/Andriy]
 
i) Install current version of PREMA on ITS machines [Nikos/Andriy]
  -- provide accounts to MIT/MSU
 
ii) Explore power-aware options [Nikos]
  -- profile existing codes, lessons learned
  -- explore use of OpenMP for PDR.AFLR3 to leverage power-aware RTS (from UK)
  -- explore C++ 11 (and above) concurrency constructs for PO.AFLR3 and their interactions
      with power-aware RTS (from UK)
 
 
 
[[Outcome:]] A research report describing the overall design of a multi-layer framework for extreme-scale parallel mesh generation. Included in the report will be specific test cases and metrics for assessing the weak scaling of the mesh-generation framework on NASA capability-class hardware.
 
2.  '''''Design the PDR layer of the multi-layer framework for parallel mesh generation and investigate AFLR modifications in order to be integrated with the PDR framework and issues related to the scalability of querying the geometry.'''''
 
2.A '''Design PDR.AFLR3 layer [Nikos/David_M]'''
 
-- Proposed PDR API [Nikos]
  -- PDR needs to pass/receive to/from AFLR3:
              -- a list of pointers of  "bad" elements w.r.t  error-based metrics and
                  potential obstacles to explore concurrency at the current level of refinement
              -- number of obstacles
 
  -- AFLR3 needs to modify:
              -- elements: introduce a new counter
              -- communicate relevant events to PDR. eg. remove "bad" elements.
 
-- Prepare an abstract  [Nikos/David_M, Due by Feb. 2016]
 
2.B '''Investigate issues related to the scalability of querying the geometry for preparing the input for PDR.AFLR3 [David_M/Nikos/David_D]'''
 
[[Outcome]]: A presentation and paper at an open technological conference or similar forum describing the implementation approach.
 
3. '''''Design of the MOESS API.''''' 
 
Define API between sequential AFLR3 and MIT's MOESS system [David_D/David_M]
 
[[Outcome:]] A research report describing the MOESS API. Included in the report will be specific test cases and metrics for assessing the weak scaling of the MOESS framework on NASA capability-class hardware.
 
4. '''''Preliminary investigation of scalable optimization algorithms for solving the MOESS optimization problem.'' [David_D]'''
 
[[Outcome:]]  A presentation and paper at an open technological conference or similar forum investigating MOESS optimization algorithms for extreme scale computations.  The metrics developed in Milestone (3) will be used to assess the performance of the optimization algorithm.


== Issues for next (Dec. 4) WebEx meeting: ==
== Issues for next (Dec. 4) WebEx meeting: ==

Revision as of 04:34, 27 March 2018


Summary

Year 1:

The first year of this project aimed at investigating a tangible implementation plan for design a multi-layered algorithmic and software framework for 3D tetrahedral anisotropic parallel mesh generation and adaptation relying on error-based metrics.

The main accomplishments have been: 1. Identified (and in two cases started) the implementation of three mesh generation approaches for the lower chip-level (optimistic) implementation of 3D tetrahedral anisotropic parallel mesh generation and adaptation: (i) the default method/software based on sequential AFLR3 from MSU –identified basic operations and challenges, (ii) a new implementation (CDT3D) using known algorithms for anisotropic mesh generation and adaptation, but taking into account lessons learned from and new requirements for ODU’s telescopic approach and (iii) a completely new method in which an anisotropic 3D metric is embedded and isotropically meshed on a manifold in 4D dimensional space which could leverage ODU’s 4D Delaunay-based parallel optimistic I2M conversion technology. 2. Started the process of designing and implementing two out of four layers of the telescopic approach using TetGen (Delaunay-based open source mesh generation software): (i) Parallel Constrained (PC) layer that targets multiple racks of nodes, (ii) Parallel Data Refinement (PDR) layer that targets multiple nodes (within a single rack). 3. Identified test cases with NASA/LaRC (CAD model of a half DLR-F6 Airbus-type aircraft and a series of complex components from AIM@SHAPE repository) to evaluate mesh generation and adaptation modules. 4. Identified two state-of-the-art software runtime systems from industry, academia and national labs that meet the requirements of the proposed Multi-Layered Runtime System (MRTS): (i) OCR is a runtime system from Intel and (ii) Argo is an exascale-era ecosystem build by a collaboration effort between DoE labs (mainly ANL) and academia.

The results so far are promising. For example, the initial PDR implementation using TetGen and homegrown I2M conversion methods is stable (i.e., generate the same quality mesh with the sequential code, see Figure 1), robust (i.e., can mesh all the geometries tried –those the sequential code manages to process), with more than 95% code re-use and it is efficient both at: (i) the node-level (with 32 cores): the fixed speedup is more than 16 for a mesh with 800M element and scalable (weak) speedup is close to 20. (ii) the rack(s)-level (30 nodes with 20 cores each) using MPI+threads and CRTC’s I2M conversion software, the PDR.PODM’s scalable speedup is increasing linearly with a mesh 1.14 billion elements (using 600 cores). Figure 2 depicts the performance for both Distributed Shared Memory paradigm on cc-NUMA machines and Distributed Memory paradigm on a cluster of nodes at CRTC. We anticipate better performance for AFLR3 and PDR-like approach we plan to start implementing in Years 2 and 3 of this project.

Issues for next (Dec. 4) WebEx meeting:

Issues to address:

    i)  Interaction between MOESS and AFLR3 i.e., API (sequential code can be used as is at this point)
    ii  Interaction between PDR and AFLR3 (API is the goal, a closer look of the AFLR3 code at ODU 
        will help to   build an optimal API) and study separation of concerns between PDR and AFLR3     
    iii) STL description for couple test geometries relevant to NASA LaRC that will allow to expose benefits from PDR.AFLR3 and MOESS.
    iv) Study overheads for pre-processing (Geometry, AFLR3 might require).
    v)  Evaluate all possible approaches to propose optimistic fine-grain parallelization
         A. direct use of a fully functional AFLR3 (new re-organized code)
         B. indirect use of parallel Delaunay-based PODM approach in the parametric space
         C. investigate building from scratch new parallel implementation from a simpler AFT-code and build functionality as we go
         D. evaluate a bottom up approach starting from parallel triangulation, etc.. 
    vi) Set milestones and deliverables for semi-annual report
    vii) Software License and potential IP issues.