D
Don Y
Guest
My RTOS lets me migrate live processes between nodes (distributed
multiprocessor).
My hardware lets me power nodes up/down at will.
I leverage these capabilities to dynamically reassign hardware
resources to do load leveling, load shedding, etc. to adjust
the hardware\'s capabilities to the CURRENT nature of the
problem. I.e., if I don\'t need the I/Os that a node offers,
I can power down that node -- *if* I can seemlessly migrate its
active processes to other nodes. Or, I can power down its
field interface and just use the compute resources to address
a problem running on some other node!
I\'ve augmented the patch-panels that distribute the drops
to the nodes with \"indicators\" (visual and otherwise) that
allow a user to quickly assess the state of the system
(\"Any red lights? Too many \'black\' lights??\")
[users can be blind, deaf, CVD, etc.]
I prepared a simulation for colleagues to illustrate what
typical events look like. For example, a node being wound-down
as it\'s I/Os were no longer needed (e.g., wire EDM being
taken off-line). Or, a hardware failure detected in a node
(I/O shorted, etc.). Or, a node unplugged/replugged. Or,
a new load coming on-line requiring additional I/Os. Or,
a process temporarily requiring additional compute resources.
Or, a power failure necessitating the shedding of nonessential
loads (processes), etc.
To someone who knows what\'s happening (or, likely happening),
the indicators prove a helpful reassurance that things are
happening as they are intended.
To a casual user, it\'s just a pretty \"light show\". <frown>
[In the case of faults, the \"display\" makes it easy to identify the
failed node and consult a \"real\" display for more information.
Note that because the panel is powered, it can display the status
of UNpowered nodes, too!]
Unfortunately, there are scant few \"systems\" that are
distributed physically in this way so hard to extrapolate
from any \"status indicators\" that THEY might provide.
The closest *common* sort of application is that of a
network switch feeding a NoW. But, as those aren\'t
necessarily all \"entwined\", there\'s very little that
the switch can offer beyond link status/rate and activity
(because the switch is just *fabric* and has no awareness
of the application in which it is deployed).
The infotainment systems on aircraft might be similar
(I am assuming they aren\'t designed with an \"all-or-nothing\"
approach and can continue to operate with individual
\"seat failures\").
Other interconnected system examples seem like they would
just present a \"check engine\" indicator to the user in the
event of ANY sort of failure. E.g., the user would likely
not be able to tell if one of the headlight drivers in
his vehicle had shit-the-bed (without actually checking the
\"light output\" from the driver!)
Industrial deployments likewise rely on a \"smart display\"
to convey status to the user. (does profinet instrument
switches in an application-specific way?)
What other apps (types of apps) can I look at?
[Note, I don\'t want to have to keep a \"smart display\"
running just so a user can assess the status of all of
the nodes when a panel of tiny LEDs can provide the
necessary information in a reduced form -- that also
makes it easy for the user to identify the *cable*
associated with the node!]
multiprocessor).
My hardware lets me power nodes up/down at will.
I leverage these capabilities to dynamically reassign hardware
resources to do load leveling, load shedding, etc. to adjust
the hardware\'s capabilities to the CURRENT nature of the
problem. I.e., if I don\'t need the I/Os that a node offers,
I can power down that node -- *if* I can seemlessly migrate its
active processes to other nodes. Or, I can power down its
field interface and just use the compute resources to address
a problem running on some other node!
I\'ve augmented the patch-panels that distribute the drops
to the nodes with \"indicators\" (visual and otherwise) that
allow a user to quickly assess the state of the system
(\"Any red lights? Too many \'black\' lights??\")
[users can be blind, deaf, CVD, etc.]
I prepared a simulation for colleagues to illustrate what
typical events look like. For example, a node being wound-down
as it\'s I/Os were no longer needed (e.g., wire EDM being
taken off-line). Or, a hardware failure detected in a node
(I/O shorted, etc.). Or, a node unplugged/replugged. Or,
a new load coming on-line requiring additional I/Os. Or,
a process temporarily requiring additional compute resources.
Or, a power failure necessitating the shedding of nonessential
loads (processes), etc.
To someone who knows what\'s happening (or, likely happening),
the indicators prove a helpful reassurance that things are
happening as they are intended.
To a casual user, it\'s just a pretty \"light show\". <frown>
[In the case of faults, the \"display\" makes it easy to identify the
failed node and consult a \"real\" display for more information.
Note that because the panel is powered, it can display the status
of UNpowered nodes, too!]
Unfortunately, there are scant few \"systems\" that are
distributed physically in this way so hard to extrapolate
from any \"status indicators\" that THEY might provide.
The closest *common* sort of application is that of a
network switch feeding a NoW. But, as those aren\'t
necessarily all \"entwined\", there\'s very little that
the switch can offer beyond link status/rate and activity
(because the switch is just *fabric* and has no awareness
of the application in which it is deployed).
The infotainment systems on aircraft might be similar
(I am assuming they aren\'t designed with an \"all-or-nothing\"
approach and can continue to operate with individual
\"seat failures\").
Other interconnected system examples seem like they would
just present a \"check engine\" indicator to the user in the
event of ANY sort of failure. E.g., the user would likely
not be able to tell if one of the headlight drivers in
his vehicle had shit-the-bed (without actually checking the
\"light output\" from the driver!)
Industrial deployments likewise rely on a \"smart display\"
to convey status to the user. (does profinet instrument
switches in an application-specific way?)
What other apps (types of apps) can I look at?
[Note, I don\'t want to have to keep a \"smart display\"
running just so a user can assess the status of all of
the nodes when a panel of tiny LEDs can provide the
necessary information in a reduced form -- that also
makes it easy for the user to identify the *cable*
associated with the node!]