a synchronous scheduling service for distributed real-time java

21
A synchronous scheduling service (SSS) for distributed real-time Java Pablo Basanta-Val, Iria Estévez-Ayres, Marisol García-Valls, and Luis Almeida mailto:[email protected] †Jornadas de Tiempo Real 2011- Madrid( ) Publicado en IEEE Transactions on Parallel and Distributed Syste

Upload: universidad-carlos-iii-de-madrid

Post on 30-Jun-2015

204 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A synchronous scheduling service for distributed real-time Java

A synchronous scheduling service (SSS)for distributed real-time Java

Pablo Basanta-Val, Iria Estévez-Ayres, Marisol García-Valls, and Luis Almeida

mailto:[email protected]

†Jornadas de Tiempo Real 2011- Madrid( ) Publicado en IEEE Transactions on Parallel and Distributed Systems

Page 2: A synchronous scheduling service for distributed real-time Java

Outline• Context and Motivation• FTT and DREQUIEMI integration• SSS (Synchronous Scheduling Service)

– Master Slave Model– Choreographies– Choreographies scheduling/scheduler– Architecture and examples– Performance

• Conclusion and ongoing work

2

Page 3: A synchronous scheduling service for distributed real-time Java

Context

• Java programmers may use two specifications for develop their real-time applications– RTSJ: The Real-Time Specification for Java– DRTSJ: The Distributed Real-Time Specification for Java

• DRTSJ has focused on remote object upcalling and abstractions (distributable threads). – But not in a predictable networks– Networks predictability is a requirement

JRT-11 3

Page 4: A synchronous scheduling service for distributed real-time Java

In this work

• We introduce time-triggered orientation in distributed real-time Java– Basic model used the FTT (Flexible Time-Triggered)

protocol– Supported as a new service in distributed real-time Java

• SSS (Synchronous Scheduling Service)

• We obtain a more predictable network management– Useful for instance in high-integrity applications

JRT-11 4

Page 5: A synchronous scheduling service for distributed real-time Java

FTT and DREQUIEMI integration (1/3)

JRT-11 5

Page 6: A synchronous scheduling service for distributed real-time Java

FTT and DREQUIEMI integration (2/3)

JRT-11 6

Page 7: A synchronous scheduling service for distributed real-time Java

FTT and DREQUIEMI integration (3/3)

JRT-11 7

Page 8: A synchronous scheduling service for distributed real-time Java

System overview

JRT-11 8

Page 9: A synchronous scheduling service for distributed real-time Java

Choreographies set

JRT-11 9

Page 10: A synchronous scheduling service for distributed real-time Java

T and S choreographies

JRT-11 10

Page 11: A synchronous scheduling service for distributed real-time Java

C and P choreographies

JRT-11 11

Page 12: A synchronous scheduling service for distributed real-time Java

Scheduling Choreographies• Each choreography is

modeled as non preemptive task– {O, T, C, D}

• The choreographies executed by the master- It runs a NPR-EDF

- Simple admission control (T=D)

JRT-11 12

Page 13: A synchronous scheduling service for distributed real-time Java

Implementation issues: Convergence Layer

JRT-11 13

Page 14: A synchronous scheduling service for distributed real-time Java

Example 1: real-time producer consumer (1/2)

JRT-11 14

producerslave

consumerslave

Every 10 ms generates a sample

Process data coming from a producer

10 10

Maximum network delay: 20 ms

Page 15: A synchronous scheduling service for distributed real-time Java

Example real-time producer consumer (2/2)

JRT-11 15

PC# Produce# producer # CC.dataO= 5msT= 10 msC= 2 msD= 10 ms

CC # Consume# consumer# O= 15 msT= 10 msC= 2 msD= 10 ms

producerslave

consumerslave

Every 10 ms generates a sample

Process data coming from a producer

10 10

Maximum network delay: 20 ms

master

NPR-EDF

Page 16: A synchronous scheduling service for distributed real-time Java

Experiments (1/2)End-to-End costs (us) over 796 MHz-100Mbps

JRT-11 16

JTime

J2ME-RMIOP

TimesysOs

DREQUIEMI

Convergence Layer

Master-slave templates

Page 17: A synchronous scheduling service for distributed real-time Java

Experiments (2/2) End-to-End costs (bytes) over 796 MHz-100Mbps

JTime

J2ME-RMIOP

TimesysOs

DREQUIEMI

Convergence Layer

Master-slave templates

Page 18: A synchronous scheduling service for distributed real-time Java

Jitter [new]time vs. event triggered

JRT-11 18

JTime

J2ME-RMIOP

TimesysOs

DREQUIEMI

Convergence Layer

Master-slave templates

Page 19: A synchronous scheduling service for distributed real-time Java

Conclusions

• Developed techniques to include time-triggered orientation in distributed real-time Java– Synchronous Scheduling Service (SSS)

• Empirical evidences showed better performance than an ET approach– Because TCP/IP stacks and OS are not fully preemptive

JRT-11 19

Page 20: A synchronous scheduling service for distributed real-time Java

Ongoing work

• Developing a minimum time-triggered implementation without DREQUIEMI– Ongoing master thesis

• Changes in the model– NPR-RMS model vs. NPR-EDF– One way choreographies

JRT-11 20

Page 21: A synchronous scheduling service for distributed real-time Java

JRT-11 21