Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mothership-facing changes to support hardware idle. #282

Merged

Conversation

mvousden
Copy link
Contributor

This changeset:

  • Adds a new Orchestrator configuration field modes::single_app_mode, to configure whether the Orchestrator operates in single-application mode (supporting hardware idle) when true, or not when false. I was going to make this a preprocessor define, but then I remembered that this was what the configuration system was for!
  • Modifies the (APP, SPEC) message to carry an additional boolean, populated with modes::single_app_mode in Root. This field (when true) changes how applications are initialised in the Mothership via the backend (HostLink, using startAll over startOne, and go over goOne).
  • Introduces a new message keyset (APP, EMPT), which carries a codePath string and a dataPath string. This message is sent to the Mothership from Root at deploy time if modes::single_app_mode is true. On receipt, the Mothership uses the loadAll method from the backend to populate code and data sections for each core. These paths must be defined from some higher-order magic (e.g. composer). This change introduces a compiler warning indicating where this must be defined.

There is also documentation, in the FEATURE-0242-HardwareIdle branch of the documentation repository: https://github.com/POETSII/orchestrator-documentation/tree/FEATURE-0242-HardwareIdle-Mothership

Also note - this functionality has not been tested, because there is no dummy binary yet.

… discriminate between when we are supposed to support hardware idle, and when we are not.
… the Mothership know. The Mothership will use global backend 'start' and 'go' methods instead.
…e at deploy time. It causes a Mothership to call backend's loadAll method.
@mvousden mvousden requested a review from heliosfa August 27, 2021 17:50
@mvousden mvousden self-assigned this Aug 27, 2021
@mvousden
Copy link
Contributor Author

Note that checks fail, because we're calling a hostlink method that does not yet exist. See also POETSII/tinsel#111

@heliosfa
Copy link
Contributor

I have merged in the changes I have made to the parent branch and I have addressed the bits that needed to be addressed.

Where were we at with the related tinsel PR? it does not appear to have been deployed to the boxes.

@heliosfa
Copy link
Contributor

Something is not quite working with these changes as I am getting 101(S) Decoder in Mothership:CommonBase (PID 0) has dropped a packet from Mothership:CommonBase(rank 2) to Root:OrchBase:CommonBase(rank d560000) with key 0x%s messages on any run of any application:

POETS> 12:58:17.01:  20(I) The microlog for the command 'load /engine = "../Config/POETSHardwareOneBox.ocfg"' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_17p0.plog'.
POETS> 12:58:17.01: 140(I) Topology loaded from file ||../Config/POETSHardwareOneBox.ocfg||.
POETS> 12:58:17.01:  20(I) The microlog for the command 'call /file = "/home/gmb/Orchestrator/plate3x3.poets"' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_17p1.plog'.
POETS> 12:58:17.01:  20(I) The microlog for the command 'load /app = +plate_3x3.xml' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_17p2.plog'.
POETS> 12:58:17.01: 235(I) Application file ../plate_3x3.xml loading...
POETS> 12:58:17.01:  65(I) Application file ../plate_3x3.xml loaded in 19 ms.
POETS> 12:58:17.02:  20(I) The microlog for the command 'tlink /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_17p3.plog'.
POETS> 12:58:17.02: 234(I) Typelinking graph instance 'plate_3x3'...
POETS> 12:58:17.02: 249(I) Successfully typelinked graph instance 'plate_3x3'.
POETS> 12:58:17.02:  20(I) The microlog for the command 'place /constraint = MaxDevicesPerThread, 1' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_17p4.plog'.
POETS> 12:58:17.02: 322(I) Constraining the maximum number of placed devices per thread in the hardware model to 1.
POETS> 12:58:17.02:  25(E) Unknown clause (cons) in placement command
POETS> 12:58:17.02:  20(I) The microlog for the command 'place /bucket = *' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_17p5.plog'.
POETS> 12:58:17.02: 309(I) Attempting to place graph instance 'plate_3x3' using the 'buck' method...
POETS> 12:58:17.02: 302(I) Graph instance 'plate_3x3' placed successfully.
POETS> 12:58:18.02:  20(I) The microlog for the command 'compose /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_17p6.plog'.
POETS> 12:58:18.02: 803(I) Composing graph instance 'plate_3x3'...
POETS> 12:58:18.02: 804(I) Graph instance 'plate_3x3' composed successfully.
POETS> 12:58:18.02:  20(I) The microlog for the command 'deploy /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_18p0.plog'.
POETS> 12:58:18.02: 184(I) Deployment of graph instance 'plate_3x3' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
POETS> 12:58:18.02:  20(I) The microlog for the command 'initialise /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_18p1.plog'.
POETS> 12:58:18.02: 187(I) Initialisation of graph instance 'plate_3x3' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
POETS> 12:58:18.02:  20(I) The microlog for the command 'run /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T12_58_18p2.plog'.
POETS> 12:58:18.02: 188(I) Run of graph instance 'plate_3x3' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
POETS>
POETS>
POETS>
POETS>
POETS> 12:58:32.55: 101(S) Decoder in Mothership:CommonBase (PID 0) has dropped a packet from Mothership:CommonBase(rank 2) to Root:OrchBase:CommonBase(rank d560000) with key 0x%s
POETS> 12:58:32.56: 529(I) Mothership (rank 2): Deployment of application 'PlateHeat::plate_3x3' (to this Mothership) complete.
POETS> 12:58:32.56: 186(I) Application 'PlateHeat::plate_3x3' successfully deployed on all Motherships it is mapped to.
POETS> 12:58:32.56: 530(I) Mothership (rank 2): Initialising fully-defined application 'PlateHeat::plate_3x3'.
POETS>

Debug run output:

gmb@ayres:~/Orchestrator$ ./orchestrate.sh -b plate3x3.poets
[DEBUG]: [LAUNCHER] Welcome to the POETS Launcher. Raw arguments:
[DEBUG]: [LAUNCHER]     Argument 0: ./orchestrate
[DEBUG]: [LAUNCHER]     Argument 1: /p
[DEBUG]: [LAUNCHER]     Argument 2: =
[DEBUG]: [LAUNCHER]     Argument 3: "/local/orchestrator-common/orchestrator_dependencies_7/mpich/lib::"
[DEBUG]: [LAUNCHER]     Argument 4: /b
[DEBUG]: [LAUNCHER]     Argument 5: =
[DEBUG]: [LAUNCHER]     Argument 6: "/home/gmb/Orchestrator/plate3x3.poets"
[DEBUG]: [LAUNCHER]
[DEBUG]: [LAUNCHER] Parsed arguments:
[DEBUG]: [LAUNCHER]     Hardware description file path: Not specified.
[DEBUG]: [LAUNCHER]     Override host: Not specified.
[DEBUG]: [LAUNCHER]     Motherships: enabled
[DEBUG]: [LAUNCHER]     If requested, valgrind will not be run quietly.
[DEBUG]: [LAUNCHER]     We are going to run the generated command.
[DEBUG]: [LAUNCHER]
[DEBUG]: [LAUNCHER] Performing POETS box check...
[DEBUG]: [LAUNCHER] Building command...
[DEBUG]: [LAUNCHER] The real-time clock is currently DISABLED.
[DEBUG]: [LAUNCHER] Running this command: mpiexec.hydra -genv LD_LIBRARY_PATH "/local/orchestrator-common/orchestrator_dependencies_7/mpich/lib::" -l -hostlist ayres:3 -n 1 /home/gmb/Orchestrator/bin/root /batch=\"/home/gmb/Orchestrator/plate3x3.poets\" : -n 1 /home/gmb/Orchestrator/bin/logserver : -n 1 /home/gmb/Orchestrator/bin/mothership
[0] Attach debugger (Root process 31932 (0x7cbc)), hit <return>.....

[0] POETS>[2] [DEBUG]: [MOTHERSHIP] Setting up MPI hooks.
[2] [DEBUG]: [MOTHERSHIP] Loading Tinsel backend...
[0]  13:00:02.03:  20(I) The microlog for the command 'load /engine = "../Config/POETSHardwareOneBox.ocfg"' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_02p0.plog'.
[0] POETS> 13:00:02.03: 140(I) Topology loaded from file ||../Config/POETSHardwareOneBox.ocfg||.
[0] POETS>[0]  13:00:02.03:  20(I) The microlog for the command 'call /file = "/home/gmb/Orchestrator/plate3x3.poets"' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_02p1.plog'.
[0] POETS>[0]  13:00:02.03:  20(I) The microlog for the command 'load /app = +plate_3x3.xml' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_02p2.plog'.
[0] POETS> 13:00:02.03: 235(I) Application file ../plate_3x3.xml loading...
[0] POETS>[0]  13:00:02.03:  65(I) Application file ../plate_3x3.xml loaded in 39 ms.
[0] POETS>[0]  13:00:02.03:  20(I) The microlog for the command 'tlink /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_02p3.plog'.
[0] POETS>[0]  13:00:02.03: 234(I) Typelinking graph instance 'plate_3x3'...
[0] POETS>[0]  13:00:02.03: 249(I) Successfully typelinked graph instance 'plate_3x3'.
[0] POETS>[0]  13:00:02.04:  20(I) The microlog for the command 'place /constraint = MaxDevicesPerThread, 1' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_02p4.plog'.
[0] POETS>[0]  13:00:02.04: 322(I) Constraining the maximum number of placed devices per thread in the hardware model to 1.
[0] POETS>[0]  13:00:02.04:  25(E) Unknown clause (cons) in placement command
[0] POETS>[0]  13:00:02.04:  20(I) The microlog for the command 'place /bucket = *' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_02p5.plog'.
[0] POETS>[0]  13:00:02.04: 309(I) Attempting to place graph instance 'plate_3x3' using the 'buck' method...
[0] POETS>[0]  13:00:02.04: 302(I) Graph instance 'plate_3x3' placed successfully.
[0] POETS>[0]  13:00:04.04:  20(I) The microlog for the command 'compose /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_02p6.plog'.
[0] POETS>[0]  13:00:04.04: 803(I) Composing graph instance 'plate_3x3'...
[0] POETS>[0]  13:00:04.04: 804(I) Graph instance 'plate_3x3' composed successfully.
[0] POETS>[0]  13:00:04.05:  20(I) The microlog for the command 'deploy /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_04p0.plog'.
[0] POETS>[0]  13:00:04.05: 184(I) Deployment of graph instance 'plate_3x3' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
[0] POETS>[0]  13:00:04.05:  20(I) The microlog for the command 'initialise /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_04p1.plog'.
[0] POETS>[0]  13:00:04.05: 187(I) Initialisation of graph instance 'plate_3x3' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
[0] POETS>[0]  13:00:04.05:  20(I) The microlog for the command 'run /app = *' will be written to '../Output/Microlog/Microlog_2021_10_26T13_00_04p2.plog'.
[0] POETS>[0]  13:00:04.05: 188(I) Run of graph instance 'plate_3x3' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
[0] POETS>[2] [DEBUG]: [MOTHERSHIP] Tinsel backend loaded.
[2] [DEBUG]: [MOTHERSHIP] Starting producer consumer threads.
[2] [DEBUG]: [MOTHERSHIP] Threads started successfully. The main thread is now waiting to join.
[0]  13:00:17.13: 101(S) Decoder in Mothership:CommonBase (PID 0) has dropped a packet from Mothership:CommonBase(rank 2) to LogServer:CommonBase(rank d560000) with key 0x%s
[0] POETS>[0]  13:00:17.13: 599(I) Mothership: Received 'Q::APP,Q::EMPT' message. Pushing it to the 'MPI Command-and-control' queue.
[0] POETS>[0]  13:00:17.13: 599(I) Mothership: Received 'Q::APP,Q::SUPD' message. Pushing it to the 'MPI Command-and-control' queue.
[0] POETS>[0]  13:00:17.13: 599(I) Mothership: Received 'Q::APP,Q::DIST' message. Pushing it to the 'MPI Command-and-control' queue.
[0] POETS>[0]  13:00:17.13: 599(I) Mothership: Received 'Q::APP,Q::DIST' message. Pushing it to the 'MPI Command-and-control' queue.
[0] POETS>[0]  13:00:17.14: 599(I) Mothership: Received 'Q::CMND,Q::INIT' message. Pushing it to the 'MPI Command-and-control' queue.
[0] POETS>[0]  13:00:17.14: 599(I) Mothership: Received 'Q::CMND,Q::RUN' message. Pushing it to the 'MPI Command-and-control' queue.
[0] POETS>[0]  13:00:17.14: 597(I) Mothership: Processing 'Q::APP,Q::SPEC' (0xd500000) message. Fields: appName=PlateHeat::plate_3x3, distCount=3, appNumber=0, soloApp=true
[0] POETS>[0]  13:00:17.14: 597(I) Mothership: Processing 'Q::APP,Q::SUPD' (0xd510000) message. Fields: appName=PlateHeat::plate_3x3, soPath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/libSupervisor.so
[0] POETS>[0]  13:00:17.14: 597(I) Mothership: Processing 'Q::APP,Q::DIST' (0xd4b0000) message. Fields: appName=PlateHeat::plate_3x3, codePath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_code_0.v, dataPath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_data_0.v, coreAddr=0x0, threadsExpected=0x0 0x1 0x2 0x3 0x4 0x5 0x6
[0] POETS>[0]  13:00:17.14: 597(I) Mothership: Processing 'Q::APP,Q::DIST' (0xd4b0000) message. Fields: appName=PlateHeat::plate_3x3, codePath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_code_32.v, dataPath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_data_32.v, coreAddr=0x20, threadsExpected=0x20 0x21
[0] POETS>[0]  13:00:17.14: 529(I) Mothership (rank 2): Deployment of application 'PlateHeat::plate_3x3' (to this Mothership) complete.
[0] POETS>[0]  13:00:17.14: 186(I) Application 'PlateHeat::plate_3x3' successfully deployed on all Motherships it is mapped to.
[0] POETS>[0]  13:00:17.14: 597(I) Mothership: Processing 'Q::CMND,Q::INIT' (0x2520000) message. Fields: appName=PlateHeat::plate_3x3
[0] POETS>[0]  13:00:17.14: 530(I) Mothership (rank 2): Initialising fully-defined application 'PlateHeat::plate_3x3'.
[0] POETS>[0]  13:00:17.14: 585(I) Mothership: Calling backend->loadInstrsOntoCore with arguments codePath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_code_0.v, meshX=0x0, meshY=0x0, coreId=0x0.
[0] POETS>[0]  13:00:17.15: 584(I) Mothership: Calling backend->loadDataViaCore with arguments dataPath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_data_0.v, meshX=0x0, meshY=0x0, coreId=0x0.
[0] POETS>[0]  13:00:17.15: 585(I) Mothership: Calling backend->loadInstrsOntoCore with arguments codePath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_code_32.v, meshX=0x0, meshY=0x0, coreId=0x2.
[0] POETS>[0]  13:00:17.16: 584(I) Mothership: Calling backend->loadDataViaCore with arguments dataPath=/home/gmb/.orchestrator/app_binaries/PlateHeat__plate_3x3/softswitch_data_32.v, meshX=0x0, meshY=0x0, coreId=0x2.
[0] POETS>[0]  13:00:17.16: 579(I) Mothership: Calling backend->startAll.
[0] POETS>[0]  13:00:17.16: 578(I) Mothership: Calling backend->go.
[0] POETS>[0]  13:00:17.16: 583(I) Mothership: Initialising supervisor device for application 'PlateHeat::plate_3x3'.
[0] POETS>[0]  13:00:17.16: 597(I) Mothership: Processing 'Q::CMND,Q::RUN' (0x2480000) message. Fields: appName=PlateHeat::plate_3x3
[0] POETS>[0]  13:00:17.16: 592(I) Mothership: The MPI Cnc queue is empty, so the MPI Cnc Resolver Thread is spinning slowly.
[0] POETS>

Also, it looks like we have had a warnings regression with the latest version of Hostlink. The changes @m8pple added to DebugLink.h in POETSII/tinsel#105 are not C++98

In file included from ../../Source/Mothership/Mothership.h:14:0,
                 from ../../Source/Mothership/ThreadLogic.cpp:5:
/local/tinsel/hostlink/HostLink.h:27:33: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   int max_connection_attempts = 5;

@mvousden
Copy link
Contributor Author

Something is not quite working with these changes [...]

I've tried to reproduce, but I get a composer error with the pregenerated 3x3 plate heat XML and batch script (I assume this is what you're using, based on your output). I attach my microlog as output.
Microlog_2021_10_27T12_29_27p6.txt

@heliosfa
Copy link
Contributor

Something is not quite working with these changes [...]

I've tried to reproduce, but I get a composer error with the pregenerated 3x3 plate heat XML and batch script (I assume this is what you're using, based on your output). I attach my microlog as output. Microlog_2021_10_27T12_29_27p6.txt

The Hardware Idle branches are based off the typenames fixes that are pending in #276. You will need the pregenerated XML from the related PR on the examples repo rather than from development: POETSII/Orchestrator_examples#14

@mvousden
Copy link
Contributor Author

mvousden commented Oct 27, 2021

Judging purely by the 101 error message, c4450fe adds an entry to the Mothership's MPI message map, which should at least fix that problem. 7fb7f9e fixes a mismatch between decode's 101 message text and its format

Edit: Both need testing, I'll do that once I've got an app running

@mvousden
Copy link
Contributor Author

I now get the attached composer error (linker problem?) when using the example from https://github.com/poetsii/Orchestrator_examples/tree/BUGFIX-0231-typenames
Microlog_2021_10_27T12_52_48p6.txt

@heliosfa
Copy link
Contributor

I now get the attached composer error (linker problem?) when using the example from https://github.com/poetsii/Orchestrator_examples/tree/BUGFIX-0231-typenames Microlog_2021_10_27T12_52_48p6.txt

Oooh, interesting. I thought I fixed that yesterday. Give me a moment to see if I have forgotten a push

@mvousden
Copy link
Contributor Author

Also, it looks like we have had a warnings regression with the latest version of Hostlink. The changes @m8pple added to DebugLink.h in POETSII/tinsel#105 are not C++98

In file included from ../../Source/Mothership/Mothership.h:14:0,
                 from ../../Source/Mothership/ThreadLogic.cpp:5:
/local/tinsel/hostlink/HostLink.h:27:33: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   int max_connection_attempts = 5;

Potential fix at POETSII/tinsel#112.

@heliosfa
Copy link
Contributor

I now get the attached composer error (linker problem?) when using the example from https://github.com/poetsii/Orchestrator_examples/tree/BUGFIX-0231-typenames Microlog_2021_10_27T12_52_48p6.txt

Fixed in acd5c84 - sorry it took a few minutes, git in the office was so far out of date that it could not authenticate...

@mvousden
Copy link
Contributor Author

mvousden commented Oct 27, 2021

As far as I can see, the issues you have outlined have been resolved. I found some misleading logging output, and addressed it in 09e91f3. It probably still doesn't do what you expect however, so please do throw more things at it.

@heliosfa
Copy link
Contributor

As far as I can see, the issues you have outlined have been resolved. I found some misleading logging output, and addressed it in 09e91f3. It probably still doesn't do what you expect however, so please do throw more things at it.

Okies. I am about to head back home so will have a play with things there. Did you get the 3x3 actually running?

@mvousden
Copy link
Contributor Author

As far as I can see, the issues you have outlined have been resolved. I found some misleading logging output, and addressed it in 09e91f3. It probably still doesn't do what you expect however, so please do throw more things at it.

Okies. I am about to head back home so will have a play with things there. Did you get the 3x3 actually running?

No - Mothership sent start packets (judging by the logs), but got nothing back.

@heliosfa
Copy link
Contributor

OK, I will have a dig. This is turning out to be a "fun" one...

@heliosfa
Copy link
Contributor

OK, I think we are cooking on gas here. I have managed to get the heated plate running again and the Hardware Idle test XML now actually functions as expected.

gmb@ayres:~/Orchestrator$ ./orchestrate.sh -b testHWIdle.poets
POETS> 15:58:45.02:  20(I) The microlog for the command 'load /engine = "../Config/POETSHardwareOneBox.ocfg"' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_45p0.plog'.
POETS> 15:58:45.02: 140(I) Topology loaded from file ||../Config/POETSHardwareOneBox.ocfg||.
POETS> 15:58:45.02:  20(I) The microlog for the command 'call /file = "/home/gmb/Orchestrator/testHWIdle.poets"' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_45p1.plog'.
POETS> 15:58:45.02:  20(I) The microlog for the command 'load /app = +test_hwidle.xml' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_45p2.plog'.
POETS> 15:58:45.02: 235(I) Application file ../test_hwidle.xml loading...
POETS> 15:58:45.02:  65(I) Application file ../test_hwidle.xml loaded in 20 ms.
POETS> 15:58:45.02:  20(I) The microlog for the command 'tlink /app = *' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_45p3.plog'.
POETS> 15:58:45.02: 234(I) Typelinking graph instance 'test_hwidle_instance'...
POETS> 15:58:45.02: 249(I) Successfully typelinked graph instance 'test_hwidle_instance'.
POETS> 15:58:45.02:  20(I) The microlog for the command 'place /spread = *' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_45p4.plog'.
POETS> 15:58:45.02: 309(I) Attempting to place graph instance 'test_hwidle_instance' using the 'spre' method...
POETS> 15:58:45.02: 302(I) Graph instance 'test_hwidle_instance' placed successfully.
POETS> 15:58:46.02:  20(I) The microlog for the command 'compose /app = *' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_45p5.plog'.
POETS> 15:58:46.02: 803(I) Composing graph instance 'test_hwidle_instance'...
POETS> 15:58:46.02: 804(I) Graph instance 'test_hwidle_instance' composed successfully.
POETS> 15:58:46.02:  20(I) The microlog for the command 'deploy /app = *' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_46p0.plog'.
POETS> 15:58:46.02: 184(I) Deployment of graph instance 'test_hwidle_instance' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
POETS> 15:58:46.03:  20(I) The microlog for the command 'initialise /app = *' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_46p1.plog'.
POETS> 15:58:46.03: 187(I) Initialisation of graph instance 'test_hwidle_instance' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
POETS> 15:58:46.03:  20(I) The microlog for the command 'run /app = *' will be written to '../Output/Microlog/Microlog_2021_10_27T15_58_46p2.plog'.
POETS> 15:58:46.03: 188(I) Run of graph instance 'test_hwidle_instance' staged. Waiting for Mothership(s) to acknowledge receipt in the background.
POETS> 15:59:00.85: 529(I) Mothership (rank 2): Deployment of application 'test_hwidle::test_hwidle_instance' (to this Mothership) complete.
POETS> 15:59:00.85: 530(I) Mothership (rank 2): Initialising fully-defined application 'test_hwidle::test_hwidle_instance'.
POETS> 15:59:00.85: 186(I) Application 'test_hwidle::test_hwidle_instance' successfully deployed on all Motherships it is mapped to.
POETS> 15:59:00.90: 531(I) Mothership (rank 2): Initialisation of application 'test_hwidle::test_hwidle_instance' (to this Mothership) complete.
POETS> 15:59:00.90: 186(I) Application 'test_hwidle::test_hwidle_instance' ready to start on all Motherships it is mapped to.
POETS> 15:59:00.90: 532(I) Mothership (rank 2): Starting (running) fully-initialised application 'test_hwidle::test_hwidle_instance'.
POETS> 15:59:00.90: 186(I) Application 'test_hwidle::test_hwidle_instance' running on all Motherships it is mapped to.
POETS> 15:59:01.11: 521(I) Debug byte received from thread '0x0' with content 'aa'.
POETS> 15:59:01.11: 521(I) Debug byte received from thread '0x0' with content 'bb'.

Reconciling this, I guess this needs to be merged into the main feature branch and then I need to do docs updates for everything before opening a proper PR? sound like a plan?

@heliosfa heliosfa merged commit 57e67eb into FEATURE-0242-HardwareIdle Nov 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants