SYS2 4

Résumé de la dernière fois :clock1:

Deux types de tâches:

Waiting time


Type de caches

Quand on met dans le cache, on met toujours un peu plus.
Quand on déréference un case d’un tableau y’a de fortes chances qu’on deréference la deuxieme…

Rappel de la pipeline:

Cela permet d’aller plus vite que si on faisait l’execution d’un coup car comme ça, on peut découper les tâches.

Les étapes qui sont touchés par le cache sont le fetch et memory.
Du coup c’est fetch et memory qui vont ralentir la pipeline car ils utilisent tous les deux L2 -> Solution: L1I et L1D

L2 est partagé entre les coeurs.







G



Coeur1

Coeur1



L2

L2



Coeur1--L2




Coeur2

Coeur2



L2--Coeur2




Gaby a expliqué au dernier cours que c’est L3 qui est entre les coeurs. A vérifier.

TLB: Lien entre adresse physique et virtuelle.

Comment améliorer l’algo du round robin ?

Pour le moment on a une queue, et on rentre des process IO-Bound et CPU-Bound.

IO-BOUND: Quantum plus petit mais plus fréquemment
CPU-Bound: Plus long mais moins fréquement

On a deux queue: IO Bound prgram et CPU bound program

Quand on passe de run a waiting -> Queue des IO Bound
Quand on passe de run a ready -> Queue des CPU Bound

CFS (Completly fair scheduler): Il faut minimiser le waiting time. On considère que chaque programmes a son propre cpu et on va compter leurs temps passer sur le cpu. Dans le CFS on a 4 scheduler différent. (plus d’info sur kernel.org)


Cours d’alex