Low Power Scheduling per Sistemi Real Time



Documenti analoghi
Calcolatori Elettronici A a.a. 2008/2009

Scheduling. Lo scheduler è la parte del SO che si occupa di

Lo scheduling. Tipici schedulatori

Scheduling. Scheduling 14/12/2003 1/7

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web: Prof. G. Quarella prof@quarella.

IL RISPARMIO ENERGETICO E GLI AZIONAMENTI A VELOCITA VARIABILE L utilizzo dell inverter negli impianti frigoriferi.

Scheduling della CPU:

Scheduling. Sistemi Operativi e Distribuiti A.A Bellettini - Maggiorini. Concetti di base

Sistema operativo: Gestione della memoria

Algoritmi di scheduling

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.

J. Assfalg Appunti di Sistemi Operativi

La memoria - generalità

1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi?

Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling

Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Gestione della memoria centrale

Algoritmi di scheduling

Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore

Sistemi Operativi Kernel

GUIDA AL CALCOLO DEI COSTI DELLE ATTIVITA DI RICERCA DOCUMENTALE

Dispensa di Informatica I.1

Lo scheduler di UNIX (1)

Approccio stratificato

SCHEDULATORI DI PROCESSO

Scheduling della CPU

Processi e Thread. Scheduling (Schedulazione)

Sistemi Operativi SCHEDULING DELLA CPU

Amplificatori Audio di Potenza

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Corso di Architettura degli Elaboratori

Come valutare le caratteristiche aerobiche di ogni singolo atleta sul campo

Il sistema operativo TinyOS

1. Introduzione. 2. Simulazioni elettromagnetiche per la misura del SAR

brisighellanelcuore.wordpress.com

Sistemi e schedulazione in tempo reale

Inflazione e Produzione. In questa lezione cercheremo di rispondere a domande come queste:

INTRODUZIONE AI CICLI

Stimare il WCET Metodo classico e applicazione di un algoritmo genetico

Abbiamo costruito il grafico delle sst in funzione del tempo (dal 1880 al 1995).

1. La velocità dell ADSL in Italia: evoluzione dal 2010 ad oggi

ALLEGATO 1 Analisi delle serie storiche pluviometriche delle stazioni di Torre del Lago e di Viareggio.

RIDURRE I COSTI ENERGETICI!

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Azionamenti a inverter nel settore HVAC

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX

Il memory manager. Gestione della memoria centrale

Sistemi di Controllo Real Time

La Memoria Cache. Informatica B. Daniele Loiacono

Psicometria (8 CFU) Corso di Laurea triennale STANDARDIZZAZIONE

Scheduling della CPU

Osservatorio SosTariffe.it Telefonia Mobile

Un sistema operativo è un insieme di programmi che consentono ad un utente di

La memoria centrale (RAM)

Aspettative, consumo e investimento

Il concetto di valore medio in generale

Algoritmi di scheduling - Parte 2

Riassunto di Sistemi in Tempo Reale LS

OSCILLOSCOPIO SOFTWARE

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

Pag. 1. Introduzione allo scheduling. Concetti fondamentali. Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Algoritmi.

Pianificazione e controllo delle risorse

Linux Virtuale Linux Virtuale

PowerSchedo. Un sistema di supporto alla decisione nel settore dell'oil&gas. For further information:

bipolari, quando essi, al variare del tempo, assumono valori sia positivi che negativi unipolari, quando essi non cambiano mai segno

Progettazione del robot

Cos è una. pompa di calore?

Calcolare i Rendimenti di Titoli Obbligazionari a tasso fisso con flusso cedolare costante (tipo BTP)

Capitolo 1: Introduzione

Esercizio 1: trading on-line

Tipi classici di memoria. Obiettivo. Principi di localita. Gerarchia di memoria. Fornire illimitata memoria veloce. Static RAM. Problemi: Dynamic RAM

Il tutto a meno, e spesso a molto meno, del costo di un caffé al giorno

Introduzione alla Virtualizzazione

e-dva - eni-depth Velocity Analysis

GESTIONE DELLA CAPACITA

ASSOTELECOMUNICAZIONI ASSTEL

Teoria dei Giochi. Anna Torre

DOCUMENTO DI SPECIFICA DEI REQUISITI SOFTWARE

Principi di Schedulazione in tempo reale

La schedulazione. E.Mumolo

Gli input sono detti anche fattori di produzione: terra, capitale, lavoro, materie prime.

Criticità e potenzialità nella creazione di un progetto di efficientamento per i CAS.

Scheduling di processi HRT

Dario Savarino Cuneo 16 dicembre 2009 RISPARMIO ENERGETICO E TUTELA DELL AMBIENTE

OCCUPATI SETTORE DI ATTIVITA' ECONOMICA

Il Sistema Operativo (1)

Moto circolare uniforme

Il Taeg = 0. Trasparenza e credito ai consumatori ABISERVIZI S.p.A. - Riproduzione vietata - Tutti i diritti sono riservati.

Il profiling dei disoccupati basato sull occupabilità: un alternativa di targeting in assenza di evidenza sull efficacia degli interventi

Il mercato di monopolio

4 3 4 = 4 x x x 10 0 aaa

Sistemi operativi e reti A.A Lezione 2

Monitoraggio sulla conversione dei prezzi al consumo dalla Lira all Euro

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti

Configurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith

V= R*I. LEGGE DI OHM Dopo aver illustrato le principali grandezze elettriche è necessario analizzare i legami che vi sono tra di loro.

Estratto dal settimanale Terra e Vita n. 16/2004, pagg

AMBIENTE E RISPARMIO ENERGETICO AMBIENTE E RISPARMIO ENERGETICO. Motori elettrici più efficienti: un opportunità di risparmio

Transcript:

Low Power Scheduling per Sistemi Real Time Corso di Sistemi Real Time A.A. 2007-08 Ing. Giordano Kaczynski Sistemi Real Time 1

Introduzione Il consumo di energia nei sistemi portatili negli ultimi anni è diventato un problema importante. Notebook, palmari. Telefoni cellulari, macchine fotografiche. Robot, dispositivi medici portatili, satelliti, sonde. La principale limitazione dei progettisti di questi sistemi è la scarsa durata delle batterie, a fronte di una sempre crescente richiesta di maggiori prestazioni. Compromesso tra prestazioni e consumo di energia. Sistemi Real Time 2

Il consumo di energia Un minor consumo di energia vuol dire: Maggior durata delle batterie. Minor dissipazione di potenza (sistemi di raffreddamento più semplici ed economici). Sistemi più piccoli e leggeri. Maggiore affidabilità. I progressi fatti nel campo delle batterie non sono sufficienti. Il consumo di energia dei chip aumenta seguendo la legge di Moore (raddoppia ogni 18 mesi). L incremento delle capacità delle batterie è di meno del 5% annuo. Sistemi Real Time 3

Cosa si può fare? Punto di vista hardware: Progettazione mirata non solo alle prestazioni ma anche al risparmio di energia. Supporto di diversi stati di funzionamento. CPU con Voltage Scaling. Punto di vista software: SO (supporto al DVS e/o scheduling appropriato). Compilatore (intra-task DVS). Sistemi Real Time 4

Il Carico computazionale Il carico computazionale che una CPU deve sostenere non è omogeneo. I picchi computazionali richiesti sono molto più alti del carico medio fornito alla CPU. Le richieste di alte prestazioni sono occasionali e di breve durata. Per la maggior parte del tempo è sufficiente un processore con prestazioni basse. Un processore con prestazioni più basse consuma meno energia? Sistemi Real Time 5

Potenza e CMOS I moderni microprocessori embedded sono basati quasi esclusivamente sulla logica a CMOS. Nei transistor CMOS, per quanto concerne la componente dinamica della potenza, vale: 2 P CV La componente statica ha un peso trascurabile, anche se quest ultima ultimamente sta crescendo. f Sistemi Real Time 6

Frequenza e voltaggio L aspetto interessante è la relazione che sussiste tra la frequenza ed il voltaggio nei transistor CMOS: V Ma allora la potenza dinamica è proporzionale a V 3! Diminuendo la frequenza di funzionamento andando ad agire sul voltaggio otteniamo potenzialmente un grosso risparmio di energia. f Sistemi Real Time 7

Dynamic Voltage Scaling I moderni processori embedded possono operare a frequenze diverse, grazie al Dynamic Voltage Scaling. Transmeta Crusoe/Efficeon con LongRun. AMD K6+2 con PowerNow! Intel XScale con SpeedStep. A frequenze più elevate si hanno voltaggi più alti, quindi maggior consumo di energia. I livelli di voltaggio a disposizione sono ad intervalli discreti. Sistemi Real Time 8

Transmeta Crusoe Facciamo un esempio, il processore Transmeta Crusoe: Frequenza (Mhz) Voltaggio (V) Potenza relativa (%) 700 1.65 100 600 1.50 80.59 500 1.40 59.03 400 1.30 41.14 300 1.25 24.60 200 1.10 12.70 Sistemi Real Time 9

Quanto risparmiamo? Quanta energia risparmiamo utilizzando un Crusoe alla minima frequenza, rispetto alla massima? Risparmio (1.65) (1.1) 2 2 700 200 Ma siamo sicuri che non manca qualcosa? = = 7.875 Sistemi Real Time 10

Energia e potenza L energia si misura nel tempo. E T = P dt = P T 0 L intervallo di tempo T varia al variare della frequenza. Sistemi Real Time 11

Allora quanto risparmiamo? Il risparmio ottenuto effettivo è dato dal seguente rapporto: Risparmio = E E max min = (1.65) (1.1) 2 2 700 T 200 T max min In definitiva: E E 2 max 1.65 = = min 1.1 2.25 Risparmiamo circa il 55% di energia. Sistemi Real Time 12

DVS e Real Time Gli algoritmi DVS classici falliscono nei sistemi real time. Essi si basano solo sul carico medio riscontrato sulla CPU. Non tengono conto dei vincoli temporali, il rallentamento della frequenza potrebbe far violare le deadline. Esempio: Un task ha un tempo di esecuzione di 2 ms alla massima frequenza. La sua deadline è di 3 ms. Il processore viene scalato al 50% della frequenza massima. Il task completa l esecuzione dopo 4 ms: deadline miss. Sistemi Real Time 13

RT-DVS Scheduling E necessario accoppiare l algoritmo DVS con uno scheduling real time appropriato, in maniera tale da minimizzare l energia consumata ma al contempo garantire il soddisfacimento dei vincoli temporali. Verranno presentati alcuni algoritmi di schedulazione, chiamati anche algoritmi RT-DVS, che permettono prestazioni real time con minimizzazione dell energia. In particolare, essi garantiscono l hard real time. Sistemi Real Time 14

Assunzioni Verranno fatte le seguenti assunzioni, laddove non diversamente specificato: No preemption. Deadline uguale al periodo del task. Tempo di esecuzione dei task è pari al WCET. No eventi aperiodici. Le frequenze del processore a disposizione, normalizzate rispetto alla frequenza massima, sono: 100%, 75%, 50% e 25%. Sistemi Real Time 15

Static Voltage Scaling Lo Static Voltage Scaling è l approccio più semplice: Si sceglie la frequenza più bassa che permette di garantire le deadline. La frequenza viene scelta offline per il task set e rimane fissa per tutto il tempo. Per la schedulazione può essere utilizzato qualunque algoritmo (EDF, RM, ecc ). Sistemi Real Time 16

Static Voltage Scaling Consideriamo il seguente task set: Task 1 2 3 Tempo di esecuzione 3 ms 3 ms 1 ms Periodo 8 ms 10 ms 14 ms Schedulazione con EDF (o RM) alla frequenza massima: Sistemi Real Time 17

Static Voltage Scaling EDF Per schedulare con EDF basta fare il test di schedulabilità modificato per lo Static Voltage Scaling: con c i p i α = f f max α dove f è la frequenza attuale ed f max quella massima. Sistemi Real Time 18

Static Voltage Scaling EDF Scegliamo: α = 0.75 Vogliamo cioè schedulare con EDF al 75% della frequenza massima. c i p i = 0.7464 α Con EDF è possibile schedulare. Sistemi Real Time 19

Static Voltage Scaling EDF Risultato della schedulazione con EDF al 75% della frequenza massima: Sistemi Real Time 20

Static Voltage Scaling RM Proviamo la schedulazione con RM al 75% della frequenza massima: La prima istanza del task 3 ha un deadline miss, non è possibile utilizzare RM al 75% della frequenza massima. Sistemi Real Time 21

WCET Che cosa succede se il tempo di computazione è minore del WCET? Task 1 2 3 Tempo di esecuzione 3 ms 3 ms 1 ms Periodo 8 ms 10 ms 14 ms Immaginiamo di avere invece i seguenti tempi di esecuzione per la prima e per la seconda invocazione dei task: Task 1 2 3 Prima invocazione 2 ms 1 ms 1 ms Seconda invocazione 1 ms 1 ms 1 ms Con lo Static Voltage Scaling sprecheremmo energia inutilmente. Sistemi Real Time 22

Cycle Conserving EDF Il Cycle Conserving EDF varia dinamicamente la frequenza in funzione del carico effettivo. Sfrutta il fatto che in media un task impiega meno tempo del suo WCET. Si cerca di conservare i cicli di esecuzione che invece verrebbero sprecati facendo girare la CPU in modalità idle. Approccio utilizzato: Si confronta, dopo l esecuzione di un istanza di un task, il tempo di esecuzione effettivo e il WCET. Se sono stati risparmiati cicli, si scala la frequenza. Sistemi Real Time 23

Cycle Conserving EDF Schedulazione con Cycle Conserving EDF al 75% della frequenza massima: Dopo la prima invocazione del task 1 è stato risparmiato poco più di un ciclo. Sistemi Real Time 24

Cycle Conserving EDF Si ricalcola l utilizzazione del processore: c i p i = 2 8 + 3 10 + 1 14 = 0.621 Essa è maggiore di 0.5, quindi si mantiene la frequenza al 75%. Sistemi Real Time 25

Cycle Conserving EDF Dopo la fine del task 2 si ricalcola nuovamente l utilizzazione del processore: c i p i = 2 8 + 0.421 L utilizzazione è minore di 0.5 (ma maggiore di 0.25), quindi si può abbassare la frequenza al 50%. 1 10 + 1 14 = Sistemi Real Time 26

Look Ahead RT-DVS Il Look Ahead RT-DVS è un algoritmo molto aggressivo. Si cerca di spostare quanto più carico possibile oltre la deadline più vicina. Si setta la frequenza minima necessaria per fare il lavoro allocato adesso, soddisfacendo comunque i vincoli temporali. Tramite il meccanismo di prenotazione si riserva una porzione di CPU in anticipo per le future invocazioni dei task. Sistemi Real Time 27

Look Ahead RT-DVS Si cerca di allocare il task 3 dopo la prima deadline, tra D 1 e D, 3 prenotando la banda per le future istanze di T 1 e T 2. Si alloca la banda per T 1. Sistemi Real Time 28

Look Ahead RT-DVS Si cerca di allocare T 2 dopo la prima deadline D 1, ma non c è abbastanza banda per tutto il task. La rimanente parte del task 2 viene allocata prima della deadline D 1. Sistemi Real Time 29

Look Ahead RT-DVS Dopo l esecuzione di T si 1 riesegue il calcolo per T 2. Risultato finale. Sistemi Real Time 30

Confronti Confrontiamo le prestazioni in termini di consumo di energia degli algoritmi proposti: Schedulazione Energia utilizzata Solo EDF 1 Static Voltage RM 1 Static Voltage EDF 0.64 Cycle Conserving RM 0.71 Cycle Conserving EDF 0.52 Look Ahead EDF 0.44 Sistemi Real Time 31

Conclusioni Con l introduzione di semplici algoritmi di schedulazione DVS per il real time è possibile ottenere significativi risparmi energetici. Esistono però ancora parecchi campi aperti. Soft real time. Gestione degli eventi aperiodici. Overhead introdotto dal cambiamento di frequenza. Consumo di energia del ciclo idle. Possibiltà di prelazione. Sistemi Real Time 32