25
Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group ATLAS LOOK-AHEAD SCHEDULING USING WORKLOAD METRICS MICHAEL ROITZSCH, STEFAN WÄCHTLER, HERMANN HÄRTIG

ATLAS - TU Dresdenos.inf.tu-dresden.de/Studium/RTS/WS2013/12-ATLAS.pdf · Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group ATLAS LOOK-AHEAD SCHEDULING

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group

ATLAS LOOK-AHEAD SCHEDULING USING WORKLOAD METRICS

MICHAEL ROITZSCH, STEFAN WÄCHTLER, HERMANN HÄRTIG

TU Dresden ATLAS

A COMPLEX WORLD

�2

Hardware

Application

Operating System

Frameworks

work

time

TU Dresden ATLAS

API DILEMMA

�3

 guaranteessimplicity

strict contracts loose rules

TU Dresden ATLAS

API DILEMMA

�4

 guaranteessimplicity

strict contracts loose rules

perio

dic

task

s ▸

slack

recl

aim

ing ▸

fair

shar

ing ▸

appl

icat

ion

hint

s ▸

ATLA

S ▸

TU Dresden ATLAS

ATLASAuto-Tuning Look-Ahead Scheduler

support desktop-class applications with a fitting interface

simplify by only asking for knowledge from the application domain

improve scheduling behavior compared to CFS

�5

�6

TU Dresden ATLAS

CFS BEHAVIOR

�7

0

45

90

135

180

0 5 10 15 20 25 30

Fram

e In

terv

al (m

s)

TU Dresden ATLAS

INTERFACES

�8

Scheduler

Application

TU Dresden ATLAS

INTERFACES

�9

Application

TU Dresden ATLAS

INTERFACES

�10

J=(e,d)

TU Dresden ATLAS

INTERFACES

�11

J=(e,d)

ATLAS Estimator

J’=(m,d)

TU Dresden ATLAS

⎡ | | ⎣

⎤ | | ⎦

⎡ | | ⎣

⎤ | | ⎦

⎤ | | ⎦

⎡ | | ⎣

x1

x2

x3

Job 1 m11 m12 m13 … t1

Job 2 m21 m22 m23 … t2

Job 3 m31 m32 m33 … t3

Job 4 m41 m42 m43 … t4

Metrics TimesCoefficients

× =≈

MATH

�12

provided measuredinferred

TU Dresden ATLAS

AUTO-TUNING LOOK-AHEAD SCHEDULER

�13

TU Dresden ATLAS

SCHEDULINGsubmit(thread, deadline, metrics)

next()

�14

Input Decode

ApplicationScheduler

LRT: run just when necessary

EDF: tolerate underestimation

TU Dresden ATLAS

SUMMARYATLAS uses explicit job submission

deadlines describe timing requirements

execution times derived fromworkload metrics

adopting ATLAS and obtaining metrics

precision of estimation

improved scheduling behavior�15

TU Dresden ATLAS

CODE AVAILABLE

�16

https://os.inf.tu-dresden.de/~mroi/svn/video/branches/2013-RTAS-ATLAS/

TU Dresden ATLAS

ADOPTING ATLAS

�17

void input() {! for (;;) {! frame = read_frame(); video_queue.put(frame);! }!}!!void decoder() {! for (;;) { frame = video_queue.get();! decode(frame);! picture_queue.put(frame);! }!}

TU Dresden ATLAS

ADOPTING ATLAS

�18

void input() {! for (;;) {! frame = read_frame();

video_queue.put(frame);! }!}!!void decoder() {! for (;;) { frame = video_queue.get();! decode(frame);! picture_queue.put(frame);! }!}

atlas_job_submit(decoder, deadline(), metrics());

TU Dresden ATLAS

ADOPTING ATLAS

�19

void input() {! for (;;) {! frame = read_frame();

video_queue.put(frame);! }!}!!void decoder() {! for (;;) {

atlas_job_next();

frame = video_queue.get();! decode(frame);! picture_queue.put(frame);! }!}

atlas_job_submit(decoder, deadline(), metrics());

TU Dresden ATLAS

PREDICTION

�20

0%

10%

20%

30%

40%

Shore Black Swan Park Run Rush Hour Hungergames

Time Only Reduced Full

Mea

n Re

lativ

e Er

ror

TU Dresden ATLAS

PREDICTION

�21

������������

��� �������

�� �����������

����������

�����

��

��

��

��

��

��

�����������

���� ���� ���� ���� ����

�22

TU Dresden ATLAS

ATLAS BEHAVIOR

�23

Fram

e In

terv

al (m

s)

0

45

90

135

180

0 5 10 15 20 25 30

ATLAS CFS

TU Dresden ATLAS

FUTURE IDEAS

handle overload by back pressure

experiment with modern UI workloads like gesture tracking

integrate with runtime forasynchronous dispatch dispatch_async(queue,job,work);

�24

TU Dresden ATLAS

SCORECARDAuto-Tuning Look-Ahead Scheduler

support desktop-class applications: flexible job submission

simplify scheduler interaction: deadlines and metrics

improve scheduling behavior: ATLAS respects timing constraints

�25