Multiclass-interface 1.3__tar.gz → 1.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {multiclass_interface-1.3 → multiclass_interface-1.5/Multiclass_interface.egg-info}/PKG-INFO +1 -1
- {multiclass_interface-1.3/Multiclass_interface.egg-info → multiclass_interface-1.5}/PKG-INFO +1 -1
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/mpi_interface.py +10 -5
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/version.py +2 -2
- {multiclass_interface-1.3 → multiclass_interface-1.5}/.gitignore +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/.gitlab-ci.yml +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/LICENSE +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/Multiclass_interface.egg-info/SOURCES.txt +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/Multiclass_interface.egg-info/dependency_links.txt +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/Multiclass_interface.egg-info/requires.txt +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/Multiclass_interface.egg-info/top_level.txt +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/README.md +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/__init__.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/multi_object_list.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/multiprocess_interface.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/__init__.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/my_test_cls.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/test_mpi.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/test_multiclass_list.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/test_multiprocessinterface.py +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/pyproject.toml +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/sequence_diagrams.md +0 -0
- {multiclass_interface-1.3 → multiclass_interface-1.5}/setup.cfg +0 -0
|
@@ -7,17 +7,22 @@ comm = None
|
|
|
7
7
|
size = 1
|
|
8
8
|
rank = 0
|
|
9
9
|
name = ""
|
|
10
|
+
mpi = False
|
|
10
11
|
main = True
|
|
11
12
|
|
|
12
13
|
|
|
13
|
-
def activate_mpi():
|
|
14
|
-
global comm, size, rank, name, main
|
|
14
|
+
def activate_mpi(collective_mpi=True, loop_until_close=True, terminate_on_close=True):
|
|
15
|
+
global comm, size, rank, name, main, mpi, LOOP_UNTIL_CLOSE, TERMINATE_ON_CLOSE, COLLECTIVE_MPI
|
|
15
16
|
from mpi4py import MPI
|
|
16
17
|
comm = MPI.COMM_WORLD
|
|
17
18
|
size = MPI.COMM_WORLD.Get_size()
|
|
18
19
|
rank = MPI.COMM_WORLD.Get_rank()
|
|
19
20
|
name = MPI.Get_processor_name()
|
|
21
|
+
mpi = True
|
|
20
22
|
main = rank == 0
|
|
23
|
+
COLLECTIVE_MPI = collective_mpi
|
|
24
|
+
LOOP_UNTIL_CLOSE = loop_until_close
|
|
25
|
+
TERMINATE_ON_CLOSE = terminate_on_close
|
|
21
26
|
|
|
22
27
|
|
|
23
28
|
MPIClassInterfaceAttributes = {
|
|
@@ -33,9 +38,9 @@ MPIClassInterfaceAttributes = {
|
|
|
33
38
|
'closed'}
|
|
34
39
|
|
|
35
40
|
|
|
36
|
-
LOOP_UNTIL_CLOSE = True
|
|
37
|
-
TERMINATE_ON_CLOSE = True
|
|
38
|
-
COLLECTIVE_MPI = True
|
|
41
|
+
LOOP_UNTIL_CLOSE = True # MPI workers (rank>0) will enter the work loop and wait for commands from rank 0
|
|
42
|
+
TERMINATE_ON_CLOSE = True # MPI workers (rank>0) will terminate (sys.exit) when the close command is called via rank0
|
|
43
|
+
COLLECTIVE_MPI = True # rank0 acts as a single point of contact (scatters command+arg and gathers results)
|
|
39
44
|
|
|
40
45
|
|
|
41
46
|
class MPIClassInterface():
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/Multiclass_interface.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/Multiclass_interface.egg-info/requires.txt
RENAMED
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/Multiclass_interface.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/multi_object_list.py
RENAMED
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/multiprocess_interface.py
RENAMED
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/__init__.py
RENAMED
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/my_test_cls.py
RENAMED
|
File without changes
|
{multiclass_interface-1.3 → multiclass_interface-1.5}/multiclass_interface/tests/test_mpi.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|