Distributing the workload of computationally intensive software components across a set of homogeneous computing resources (nodes, hosts, processors, cores), for the purpose of allowing them to meet precise timing (response-time) constraints, is often a pain due to the difficulties in understanding how the software will actually scale. Often, such a problem is faced by recurring to a trial-and-error process. In this paper, a methodology is introduced to tackle the problem of finding the optimum number of processors for deploying parallelisable real-time software components. Basic building blocks of the methodology are: a generic performance model for the response-time of a parallel software component; a concrete procedure for tuning optimally the parameters of the model; the application of optimisation techniques that allow to compute what is the minimum allocation needed to meet precise deadline constraints, as well as the one that minimises the response-time; the consideration of multiple real-time (independent) components to be deployed on the same multi/many-core hardware.
Optimum Scalability Point for Parallelisable Real-Time Components
CUCINOTTA, TOMMASO
2011-01-01
Abstract
Distributing the workload of computationally intensive software components across a set of homogeneous computing resources (nodes, hosts, processors, cores), for the purpose of allowing them to meet precise timing (response-time) constraints, is often a pain due to the difficulties in understanding how the software will actually scale. Often, such a problem is faced by recurring to a trial-and-error process. In this paper, a methodology is introduced to tackle the problem of finding the optimum number of processors for deploying parallelisable real-time software components. Basic building blocks of the methodology are: a generic performance model for the response-time of a parallel software component; a concrete procedure for tuning optimally the parameters of the model; the application of optimisation techniques that allow to compute what is the minimum allocation needed to meet precise deadline constraints, as well as the one that minimises the response-time; the consideration of multiple real-time (independent) components to be deployed on the same multi/many-core hardware.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.