Notes #1
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Modèle par tâche
1 tâche = morceau de code : exemple : fn principale d'un thread
Cette tâche peut créer de nouvelles tâches, l'ordre d'exécution des tâches est désordonnées.
Si on veut faire
B
avecA
, alors on créeB
dansA
car on ne peut pas exécuter une tâche avant sa création.Soit
f
,c
Tâche : exécuter
f(c)
Solution 1
pthread
+join them
pour être sûr que le programme ne termine pas avant d'avoir terminé et c'est bonpthread
directementSolution 2
sched_spawn
, on empile la tâche sur la pileSolution 3
Question ouverte : pourquoi une pile au lieu d'une file ?
En java, c'est un
thread_pool
, et ça marche très bien sur 2 cœurs, relativement 4 et plus du tout sur 16C'est cher quand il y a de la contention, dû aux mutex
Solution 4
k
et essayer de piquer du travail àt_k+1
jusqu'à ce qu'il revienne à lui, s'il n'a rien trouvé, c'est qu'il n'y a rien à faire donc il s'endort. S'il trouve, alors il prend la tâche en haut de la pile.\Rightarrow
On a donc plus une pile, mais un deck.Notes
Tout ça donne : 13/20
Pour avoir + il faut faire des extensions.
À l'oral pour la démo, il faut faire une démo cool qui utilises tous les cœurs ; apparemment il y a plein d'algo qui le font.
Date de rendu
On vise le 10