Contoh: Time-shared computer and multi-teller bank

Slides:



Advertisements
Presentasi serupa
PERTEMUAN KE-5 Heintje Hendrata, S.Kom
Advertisements

Sistem Tunggu (Delay System)
Salah satu tujuan perhitungan trafik
SINGLE SERVER QUEUEING SYSTEMS. Single-server queueing system with fixed length run Mean interarrival time1.000 minutes Mean service time0.500 minutes.
TEORI ANTRIAN.
Pertemuan 04- Penjadwalan Proses sistem operasi
Ervi Nurafliyan Susanti ( )
PENJADWALAN PROSES.
Sistem Delay (Sistem Antrian/Delay System)
Slide sebagian besar diambil dari:
Proses dan Penjadwalan
Slide 7 – Penjadwalan Process
Manajemen Proses Meliputi : Pengelolaan sisklusi hidup proses
PENJADWALAN PROSES.
Penjadwalan Proses.
MATERI 4 SISTEM OPERASI Scheduling Process Oleh : Mufadhol, S.Kom
Simulasi Discrete-Event
Oleh : Defiana Arnaldy, M.Si
BAB 9 SIMULASI ANTRIAN.
EVENT & VARIABLES.
BAB 9 SIMULASI ANTRIAN.
 System state : koleksi variabel state yang diperlukan untuk menggambarkan sistem pada saat tertentu.  Simulation clock : variabel yang menghasilkan.
Pemodelan dan Simulasi Sistem (Pendahuluan)
PROCESS SCHEDULING A.A. Gde Bagus Ariana, ST..
Pendekatan Simulasi Kejadian Diskret Pertemuan 10.
Penjadwalan Process.
Analisis Output Pemodelan Sistem.
SIMULASI.
Pemodelan Simulasi Sistem Diskrit
Teori Antrian.
Operations Management
PENJADWALAN PROSES.
V. Penjadwalan Proses Penjadwalan CPU terjadi pada sistem operasi yang mempergunakan multiprogramming. Penjadwalan berupa kumpulan kebijakan untuk menentukan.
OPERATING SYSTEM.
Algorithma Penjadwalan Proses
DISUSUN OLEH : IPHOV KUMALA SRIWANA
Single Channel Single Server
SISTEM OPERASI Dosen Pengampu : Erfanti Fatkhiyah, ST., M.Cs.
III. Penjadwalan Proses
Slide 7 – Penjadwalan Process
PENJADWALAN PROSES.
STMIK-IM BANDUNG Chalifa Chazar
Penjadwalan Proses.
Penjadwalan Proses.
ALGORITMA PENJADWALAN PROSES
Operations Management
Operations Management
Fakultas Ilmu Komputer Defri Kurniawan, M.Kom
Penjadwalan Proses Edi Sugiarto, S.Kom.
PART 3 Penjadwalan cpu.
Single Channel Single Server
Operations Management
MODEL ANTRIAN 14.
Single Server Multiple Channel (M/M/s)
DISUSUN OLEH : IPHOV KUMALA SRIWANA
Mata Kuliah REKAYASA TRAFIK TELEKOMUNIKASI ( B a b 5 ) Dosen : Ir
SI403 Riset Operasi Suryo Widiantoro, MMSI, M.Com(IS)
Oleh : Solichul Huda, M.Kom
INPUT OUTPUT SIMULASI SISTEM ANTRIAN
Teknik Pengambilan Keputusan
PENJADWALAN PROSES.
MATERI PENJADWALAN PROSES
Penjadwalan Proses M. Ghofar Rohman.
SIMULASI.
Operations Management
Teori Antrian.
Slide 7 – Penjadwalan Process
Contoh Simulasi kasus antrian Single Server
COURSE DAY 3.
OPERATING SYSTEM. 1.Fungsi Sistem Operasi 2.Penjadwalan Proses 3.Memori Manajemen Dukungan Sistem Operasi meliputi:
Transcript presentasi:

Contoh: Time-shared computer and multi-teller bank Catatan diambil dari “Simulation Modeling and Analysis” by A. Law and W. Kelton, Third edition, McGraw Hill, 2000.

Tujuan Contoh simulasi Model komputer time-shared Multi-teller bank dengan jockey Model job shop

Model komputer Time-Shared

Spesifikasi masalah Terminal “berpikir”, kemudian meng-isukan job Think time terdistribusi eksponensial - 25 detik Job service time juga terdistribusi eksponensial - 0.8 detik Aturan pemrosesan job processing rule: round-robin Waktu setiap kali diproses CPU  q = 0.1 detik. (quantum) Jika sisa waktu pemrosesan > q detik, akan diberikan q detik, kemudian dikeluarkan kembali Jika sisa waktu pemrosesan  q detik, akan diberikan selama yang diperlukan, kemudian dikembalikan ke terminalnya Cara lain pemrosesan job: FIFO, SJF, LIFO dsb. Swap time:  = 0.15 detik. Diperlukan pada saat job memasuki CPU sebelum pemrosesan dimulai

Spesifikasi masalah Waktu Respon satu job = (waktu job kembali ke terminal) – (waktu job meninggalkan terminalnya). Pada awalnya, komputer kosong dan tidak bekerja, seluruh n job pada think state di terminal mereka. Aturan penghentian: dikumpulkan 1000 waktu respon Output: Rata-rata waktu respon Rata-rata jumlah job pada antrian CPU Utilisasi CPU Pertanyaan: berapa terminal (n) dapat dimuati job dan memiliki waktu respon rata-rata di bawah 30 detik?

Mengubah spesifikasi menjadi program Kedatangan Job Pemrosesan CPU Akhiri simulasi Terminal

Event, list Event list, atribut: 1 = Kedatangan job di komputer (di akhir think time) 2 = Job meninggalkan CPU (selesai atau dikeluarkan sementara) 3 = Akhir simulasi (dijadwalkan setelah job ke-1000 selesai) list, atribut: 1 = queue, attributes = [waktu kedatangan job pada komputer, waktu layanan yang tersisa] 2 = CPU, attributes = [waktu kedatangan job pada komputer, waktu layanan yang tersisa] Dalam CPU, jika waktu layanan yang tersisa > 0 maka job membutuhkan waktu CPU sebesar ini setelah lewat di CPU terakhir kali; jika waktu layanan yang tersisa  0, job akan selesai setelah lewat di CPU kali ini 25 = event list, attributes = [event time, event type]

Variable, random stream variable: waktu respon Random-number stream: 1 = think time, 2 = service time

arrive() function Function arrive() Letakkan job pada antrian CPU idle? Ya Tidak Return Start CPU run

start_CPU_run() function

end_CPU_run() function

Multi-teller Bank Kedatangan baru: Pada awalnya kosong dan idle Waktu antar kedatangan: Exp (mean = 1 mnt.) Waktu layanan: Exp (mean = 4.5 mnt.) Kedatangan baru: Jika ada teller yang idle (tidak bekerja), pilih teller idle yang paling kiri Jika semua teller sibuk, pilih antrian paling pendek Pada awalnya kosong dan idle Penghentian: Pintu tutup setelah 480 menit. Jika semua teller idle pada saat itu, langsung stop. Jika ada teller yang masih bekerja, tetap beroperasi hingga semua nasabah meninggalkan pelayanan.

Aturan Jockey Misalkan teller i (i tertentu) selesai melayani — misalnya, i = 3 pada gambar di atas. Maka teller i menjadi idle, atau antrian i berkurang 1. Mungkin seorang nasabah pada antrian lain, j ( i) pindah ke teller i (jika sekarang idle) atau ke ujung antrian i yang sekarang lebih pendek Untuk setiap teller/antrian k, nk = jumlah nasabah yang menghadapi (antri + yang dilayani) teller k segera setelah teller i selesai melayani Prosedur: Jika nj > ni + 1 untuk j  i, maka jockey akan terjaadi Jika nj > ni + 1 untuk beberapa nilai j  i, pilih j yang paling dekat (min |j – i|) Jika nj > ni + 1 untuk dua nilai j  i yang sama dekat (kiri dan kanan), pilih yang kiri (nilai j yang lebih kecil)

Ukuran Kinerja Estimasi Bagaimana efek jumlah teller? Rata-rata jumlah nasabah pada (semua) antrian per satuan waktu Rata-rata dan maksimum delay nasabah pada antrian Bagaimana efek jumlah teller?

Event, list Event list, atribut (n = jumlah teller): 1 = Kedatangan nasabah ke bank 2 = Kepergian nasabah dari teller (harus diketahui teller #) 3 = Tutup pintu pada menit ke-480. (mungkin merupakan Akhir, mungkin juga belum) (Gunakan juga “utility” non-event function jockey jika ada yang ingin jockey, dan, jika ya, lakukan) list, atribut (n = jumlah teller): 1, …, n = queues, attributes = [waktu kedatangan pada antrian] n + 1, …, 2n = tellers, no attributes = (dummy list untuk utilisasi) 25 = event list, attributes = [event time, event type, nomer teller jika event type = 2]

Variabel, stream variable: 1 = delay nasabah pada antrian (s) Random-number streams: 1 = interarrival time, 2 = service time

arrive() function

depart() function

jockey() function

Model Job Shop Model Lima workstation Tiga type job Jumlah mesin yang identik pada setiap workstation seperti pada gambar Jaringan antrian multiserver Tiga type job Waktu antar kedatangan (semua type job digabungkan) exp. (mean = 0.25 jam) Type job ditentukan setelah kedatangan Type 1, 2, 3 w.p. 0.3, 0.5, 0.2 Rute workstation untuk type job: Type 1: 3  1  2  5 (lihat gb.) Type 2: 4  1  3 Type 3: 2  5  1  4  3 Mean service time (2-Erlang distrib.): Type 1: 0.50  0.60  0.85  0.50 Type 2: 1.10  0.80  0.75 Type 3: 1.20  0.25  0.70  0.90  1.0 Pada awalnya kosong dan idle Stop pada waktu 365  8 jam

Model Job Shop (lanjutan) Estimasi Total delay rata-rata pada antrian untuk setiap type job secara terpisah Total delay rata-rata pada antrian secara menyeluruh meliputi semua type job, dibebani oleh probabilitas kejadian (yang telah diketahui) Untuk setiap kelompok mesin secara terpisah: Delay rata-rata pada antrian (semua type job dikumpulkan) Jumlah rata-rata job pada antrian per satuan waktu (semua type job) Utilisasi grup = Jumlah mesin dalam grup Pertanyaan: Jika Anda dapat menambahkan satu mesin ke shop, ke grup mana mesin tersebut harus ditambahkan? Rata-rata jumlah mesin yang bekerja per satuan waktu Jumlah mesin dalam grup

Event, list, dst Event list, atribut: 1 = Kedatangan job pada sistem 2 = Kepergian job dari satu station tertentu 3 = Akhir simulasi list, atribut: 1, …, 5 = queues, attributes = [waktu kedatangan pada station, job type, task number ] 25 = event list, attributes = [event time, event type, job type (jika event type = 2), task number (jika event type = 2)] (Task number sebuah job adalah jarak pada rutenya, diukur dalam stations, sehingga mulailah dari 1, kemudian di-inkremen sebesar 1 untuk setiap station)

variable variable: delay antrian pada grup mesin 1, …, 5 total delay antrian untuk type job 1, 2, 3 Jumlah mesin busy pada grup mesin 1, …, 5 Random-number stream: 1 = interarrival time, 2 = job-type coin flip, 3 = service time