TY - JOUR
T1 - Decentralized Task Reallocation on Parallel Computing Architectures Targeting an Avionics Application
AU - Khamvilai, Thanakorn
AU - Sutter, Louis
AU - Baufreton, Philippe
AU - Neumann, François
AU - Feron, Eric
N1 - KAUST Repository Item: Exported on 2021-05-10
Acknowledgements: This effort has been funded in part by SAFRAN, by the KAUST baseline fund, and by the National Science Foundation, Grants CNS 1544332 and 1446758. We would like to thank Philippe Monmousseau for his work on prioritizing the applications.
PY - 2021/5/6
Y1 - 2021/5/6
N2 - This work presents an online decentralized allocation algorithm of a safety-critical application on parallel computing architectures, where individual Computational Units can be affected by faults. The described method includes representing the architecture by an abstract graph where each node represents a Computational Unit. Applications are also represented by the graph of Computational Units they require for execution. The problem is then to decide how to allocate Computational Units to applications to guarantee execution of a safety-critical application. The problem is formulated as an optimization problem with the form of an Integer Linear Program. A state-of-the-art solver is then used to solve the problem. Decentralizing the allocation process is achieved through redundancy of the allocator executed on the architecture. No centralized element decides on the allocation of the entire architecture, thus improving the reliability of the system. Inspired by multi-core architectures in avionics systems, an experimental illustration of the work is also presented. It is used to demonstrate the capabilities of the proposed allocation process to maintain the operation of a physical system in a decentralized way while individual components fail.
AB - This work presents an online decentralized allocation algorithm of a safety-critical application on parallel computing architectures, where individual Computational Units can be affected by faults. The described method includes representing the architecture by an abstract graph where each node represents a Computational Unit. Applications are also represented by the graph of Computational Units they require for execution. The problem is then to decide how to allocate Computational Units to applications to guarantee execution of a safety-critical application. The problem is formulated as an optimization problem with the form of an Integer Linear Program. A state-of-the-art solver is then used to solve the problem. Decentralizing the allocation process is achieved through redundancy of the allocator executed on the architecture. No centralized element decides on the allocation of the entire architecture, thus improving the reliability of the system. Inspired by multi-core architectures in avionics systems, an experimental illustration of the work is also presented. It is used to demonstrate the capabilities of the proposed allocation process to maintain the operation of a physical system in a decentralized way while individual components fail.
UR - http://hdl.handle.net/10754/669132
UR - https://link.springer.com/10.1007/s10957-021-01862-7
U2 - 10.1007/s10957-021-01862-7
DO - 10.1007/s10957-021-01862-7
M3 - Article
SN - 0022-3239
JO - Journal of Optimization Theory and Applications
JF - Journal of Optimization Theory and Applications
ER -