dit UPM On the Effect of Protected Entry Servicing Policies on the Response Time of Ada Tasks Jorge Garrido Juan Zamorano Alejandro Alonso Juan A. de la Puente Universidad Politécnica de Madrid (UPM), Spain
Context § Apply general multiprocessor resource sharing protocols to Ada tasking model • Scheduling • Implementation 2
Problem statement § Multiprocessor protocols define general policies for accessing shared resources • Upper-bound number of access requests • Upper-bound access time per request MSRP § Servicing policies MrsP • Priority based FMLP • FIFO queues RNLP SEPP M-BWI 3
MSRP & MrsP § MSRP – Multiprocessor Stack Resource Prolicy § MrsP – Multiprocessor Resource Sharing Protocol ü PCP/SRP-based protocols ü Fixed priority scheduling ü Access cost to globally shared resources bounded ü Number of concurrent accesses ü Spin-waiting FIFO order ü Spin-wait & access • MSRP : non-preemptable • MrsP : local ceiling priority + helping mechanism 4
MSRP & MrsP P 1 P 2 P 3 … P n queue access time 5
MSRP & MrsP P 1 P 2 P 3 … P n ? 6
Self-Service Model Accesses r Evaluates r barrier τ 2 τ 1 Blocked on r Entry access to r closed barrier • Simple approach • More context switches if • Potential parallel on same processor execution on • Difficult to implement multiprocessors 7
Proxy Model Evaluates r barrier Entry access to r Accesses r τ 2 τ 1 Blocked on r closed barrier • Less context switches • More complex design • Simple implementation • Overhead for server task 8
Which should be the preferred servicing implementation model for multiprocessor systems? 9
Ideal Accesses r Evaluates r barrier τ y P 2 τ x P 1 Blocked on r Entry access to r closed barrier 10
Self-service approach (I) Accesses r Opens r closed barrier Blocked on r τ x closed barrier P 2 Entry access to r τ 2 τ 1 P 1 t • Directly applying self-service on multiprocessor • Does not preserve PCP/SRP properties 11
Self-service approach (II) Accesses r Opens r closed barrier τ x Blocked on r closed barrier P 2 Entry access to r τ 2 τ 1 P 1 t • Potential solution: • Revert to previous active priority when queued on entry But … 12
Self-service approach (III) Opens r closed Executes new call to r barrier Blocked on r Entry access τ x closed barrier to r P 2 τ 2 τ 1 P 1 P 1 t … any access in between breaks the eggshell model 13
Self-service approach (IV) Opens r closed Serves entry first, then barrier executes new call to r τ x Blocked on r closed barrier P 2 τ 2 τ 1 P 1 P 1 t • Can be solved by servicing open entry barriers first • But that is a ‘delayed proxy model’ • More complex implementation 14
Proxy model Opens r closed Serves entry on barrier τ 1 behalf Accesses r again Blocked on r τ x closed barrier P 2 Entry serviced τ 2 τ 1 P 1 t • Proxy model preserves SRP/PCP and eggshell properties • Remote entry servicing has to be notified 15
MSRP & MrsP – Proxy model § Entry servicing overhead § Full Ada tasking: number of task accessing entries § Ravenscar profile: one entry servicing § Compatible with MrsP helping mechanism § Entry servicing considered as part of the resource access § Overhead to be taken into account for potential number of preemptions 16
Conclusions § Self-service not compatible with MSRP & MrsP § Might be the preferred option for other multiprocessor systems § Proxy model can preserve relevant MSRP & MrsP properties § Entry servicing overhead can be computed for MSRP & MrsP § Proxy model compatible with MrsP helping mechanism § Entry servicing considered as part of the resource access 17
dit UPM On the Effect of Protected Entry Servicing Policies on the Response Time of Ada Tasks Jorge Garrido Juan Zamorano Alejandro Alonso Juan A. de la Puente Universidad Politécnica de Madrid (UPM), Spain
Recommend
More recommend