-
Notifications
You must be signed in to change notification settings - Fork 1
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
Mothership-facing changes to support hardware idle. #282
Conversation
… 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.
Note that checks fail, because we're calling a hostlink method that does not yet exist. See also POETSII/tinsel#111 |
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. |
Something is not quite working with these changes as I am getting
Debug run output:
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
|
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. |
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 |
…TSII/Orchestrator into FEATURE-0242-HardwareIdle-Mothership
Judging purely by the Edit: Both need testing, I'll do that once I've got an app running |
I now get the attached composer error (linker problem?) when using the example from https://github.com/poetsii/Orchestrator_examples/tree/BUGFIX-0231-typenames |
Oooh, interesting. I thought I fixed that yesterday. Give me a moment to see if I have forgotten a push |
Potential fix at POETSII/tinsel#112. |
Fixed in acd5c84 - sorry it took a few minutes, git in the office was so far out of date that it could not authenticate... |
As far as I can see, the issues you have outlined have been resolved. I found some misleading logging output, and addressed it in |
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. |
OK, I will have a dig. This is turning out to be a "fun" one... |
….com/POETSII/Orchestrator into FEATURE-0242-HardwareIdle-Mothership
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.
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? |
This changeset:
modes::single_app_mode
, to configure whether the Orchestrator operates in single-application mode (supporting hardware idle) whentrue
, or not whenfalse
. I was going to make this a preprocessor define, but then I remembered that this was what the configuration system was for!APP
,SPEC
) message to carry an additional boolean, populated withmodes::single_app_mode
in Root. This field (whentrue
) changes how applications are initialised in the Mothership via the backend (HostLink, usingstartAll
overstartOne
, andgo
overgoOne
).APP
,EMPT
), which carries acodePath
string and adataPath
string. This message is sent to the Mothership from Root at deploy time ifmodes::single_app_mode
istrue
. On receipt, the Mothership uses theloadAll
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-MothershipAlso note - this functionality has not been tested, because there is no dummy binary yet.