Project

General

Profile

Cleanup #1103

Refactor AMPI virtual topologies

Added by Sam White over 2 years ago. Updated 10 months ago.

Status:
Merged
Priority:
Normal
Assignee:
Category:
AMPI
Target version:
Start date:
06/15/2016
Due date:
% Done:

0%


Description

Currently, ampiCommStruct has members for all possible topologies (cart, graph, dist_graph), even though a a communicator can only be one or zero of those topologies.
There is lots of duplicated code for handling different aspects of these topologies.

I propose refactoring this by creating a virtual Topology class which has 3 derived classes: Cart, Graph, and DistGraph. Make an instance of that class a member in ampiCommStruct, and also have an integer identifying the type of that class in ampiCommStruct (with value MPI_UNDEFINED, MPI_CART, MPI_GRAPH, or MPI_DIST_GRAPH). This way ampiCommStruct's pup routine can use that int to correctly pup the Topology instance.

History

#1 Updated by Sam White over 2 years ago

  • Status changed from New to In Progress

#2 Updated by Sam White over 2 years ago

  • Status changed from In Progress to Implemented

#3 Updated by Sam White over 1 year ago

  • Target version changed from 6.8.0 to 6.8.1

#4 Updated by Sam White over 1 year ago

  • Target version changed from 6.8.1 to 6.9.0

#5 Updated by Sam White 10 months ago

  • Status changed from Implemented to Merged

Also available in: Atom PDF