OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
NoMasterGraph.h
Go to the documentation of this file.
1 //
2 // Class NoMasterGraph
3 // A simple empty master graph (no neighbors, every island works isolated).
4 //
5 // Copyright (c) 2010 - 2013, Yves Ineichen, ETH Zürich
6 // All rights reserved
7 //
8 // Implemented as part of the PhD thesis
9 // "Toward massively parallel multi-objective optimization with application to
10 // particle accelerators" (https://doi.org/10.3929/ethz-a-009792359)
11 //
12 // This file is part of OPAL.
13 //
14 // OPAL is free software: you can redistribute it and/or modify
15 // it under the terms of the GNU General Public License as published by
16 // the Free Software Foundation, either version 3 of the License, or
17 // (at your option) any later version.
18 //
19 // You should have received a copy of the GNU General Public License
20 // along with OPAL. If not, see <https://www.gnu.org/licenses/>.
21 //
22 #ifndef __NO_MASTER_GRAPH__
23 #define __NO_MASTER_GRAPH__
24 
25 #include <set>
26 
27 template < class TopoDiscoveryStrategy_t >
28 class NoMasterGraph : public TopoDiscoveryStrategy_t {
29 
30 public:
31 
32  std::set<size_t> execute(size_t numMasters, size_t dimensions, size_t id,
33  int island_id) {
34  std::set<size_t> empty;
35  return empty;
36  }
37 };
38 
39 #endif
std::set< size_t > execute(size_t numMasters, size_t dimensions, size_t id, int island_id)
Definition: NoMasterGraph.h:32