IRIS task schedulling (Real-time system)

Post on 11-Jun-2015

127 views 3 download

Tags:

description

This presentation show you how to schedule the IRIS task in real-time system. The kind of IRIS task algorithm are mostly discussed here. (Most of this slide using Indonesian Language). Aufar Fajar - Computer Engineering, MCU

Transcript of IRIS task schedulling (Real-time system)

Penjadwalan Untuk Tugas IRISAufar Fajar – 1127019Yosua Natanael – 1127017Jefry Karundeng – 0827034

Pengantar Tugas IRIS (increased reward with

increased service) adalah tugas yang menghasilkan output baik jika diberikan pelayanan yang baik.

Contoh : Algoritma kalkulasi nilai

Iterations Errors

1 0.001014100351829362328076440339

2 0.000000007376250992035108851841

3 0.000000000000000000183130608478

Algoritma IRIS

Identical Linear

Functions

Non-Identical Linear Functions

0/1 Reward Functions

Identical Concave Reward Functions

Non-Identical Concave Reward

Functions

Identical Linear Functions

IRIS Task

Mandatory Portions

Optional Portions

ei = Mi + oi

Total Waktu Eksekusi adalah penjumlahan antara waktu Mandatory Portions dan Optional

Portions

(WAJIB)

(Tidak WAJIB)

Tujuan Penjadwalan IRIS : REWARD maksimal, Mandatory portions terkesekusi sebelum deadline

Jadwal dikatakan optimal, jika reward

maksimal untuk semua tugas. (setidaknya

mandatory portions terselesaikan semua)

Algoritma (IRIS1)

1. Jadwalkan seluruh set tugas dengan algoritma EDF (Namai hasilnya dengan ST), Jika ST feasible, STOP. Jika tidak, lanjut ke poin 2

2. Jalankan EDF untuk mandatory portions saja (Namai Hasilnya dengan SM). Jika tidak feasible, STOP (Stuck). Jika feasible, lanjut ke Poin 3

3. Sesuaikan dengan jadwal ST dengan SM agar dapat menghasilkan reward. Namai hasil final dengan ST1

Reward Functions

Eksekusi T4 tidak cukup

EDF pada Mandatory

Waktu Eksekusi cukup

Penyesuaian SM dan ST0 menghasilkan waktu eksekusi yang cukup

Non-identical Linear Functions

𝑅𝑖={ 0𝑤𝑖 (𝑥−𝑚𝑖)𝑤𝑖𝑚𝑖

If x ≤ mi

If mi ≤ x ≤ mi + oi

If x > mi + oi

• Setiap tugas memiliki bobot (weight) wi yang terasosiasi dengan tiap tugas.

• Prosedur untuk penjadwalan tugas yang optimal: Jalankan tugas dengan bobot terbesar dan mandatory portions tetap harus tereksekusi semua, agar tercapai rewards. (IRIS 2)

0/1 Reward Functions

Artinya, kita tidak mendapatkan reward apapun jika mengeksekusi optional portion hanya sebagian. Jika kita jalankan optional portion sampai selesai, kita akan dapatkan sebuah reward

𝑅𝑖 (𝑥 )={01 If x < mi + oi

If x ≥ mi + oi

Identical Concave Reward Functions Pada bagian ini, kita anggap release

time untuk semua tugas adalah sama.

𝑅𝑖 (𝑥 )={ 𝑓 (𝑥 )𝑓 (𝑜𝑖)

If 0 ≤ x < Oi

If x ≥ Oi

Contoh :

Misalkan kita memiliki 5 tugas aperiodik dengan deadline D1 = 2, D2 = 6, D3 = 8, D4 = 10, D5 = 20; tiap tugas memiliki waktu eksekusi 8.

Interval [10, 20]. Hanya tugas T5 yang bisa dijadwalkan pada interval tersebut, dan kita berikan semua waktu eksekusi untuknya sebesar 8. Maka alokasi waktu eksekusinya adalah :

T1 T2 T3 T4 T5

0 0 0 0 8

Interval [8, 10]. Tugas T4, T5 dapat dijadwalkan dalam interval tersebut, tetapi kita sudah memberikan waktu eksekusi penuh bagi T5, sehingga kita tidak mempertimbangkan lagi tugas T5 tersebut. Kita berikan interval ini sepenuhnya untuk T4. Alokasi waktu eksekusi menjadi :

T1 T2 T3 T4 T5

0 0 0 2 8

Interval [6, 8]. Tugas T3, T4, T5 dapat dijadwalkan dalam interval tersebut, sama seperti sebelumnya, kita tidak mempertimbangkan lagi tugas T5. Kita berikan 2 unit waktu untuk T3 agar sama dengan T4. Alokasi waktu eksekusi menjadi :

T1 T2 T3 T4 T5

0 0 2 2 8

Interval [2, 6]. Tugas T2, T3, T4, T5 dapat dijadwalkan dalam interval tersebut, berikan 2 unit kepada T2 sehingga T2, T3, T4 masing-masing dialokasikan 2 unit waktu. Hal ini menyisakan 2 unit waktu lagi dan kita bagi rata ke semua tugas yang ada pada interval tersebut. Alokasi waktu eksekusi menjadi :

T1 T2 T3 T4 T5

0 2.66 2.66

2.66 8

Akhirnya pada interval [0, 2]. Disini jelas kita alokasikan 2 unit bagi T1, maka alokasi waktu eksekusi akhirnya adalah :

T1 T2 T3 T4 T5

2 2.66 2.66

2.66 8

Non- Identical Concave Reward Functions

Sebelumnya, kita mengasumsikan semua tugas memiliki release time yang sama. Kali ini tidak, sehingga kita dapat asumsikan reward functions-nya :

𝑅𝑖 (𝑥 )={ 𝑓 𝑖 (𝑥)𝑓 𝑖(𝑜𝑖)

If 0 ≤ x ≤ Oi

If x ≥ Oi