Ordonnanceur par work stealing
This repository has been archived on 2024-05-05. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2024-04-26 01:30:32 +02:00
includes add multiple benchmark support, mandelbrot is still wip 2024-04-24 01:32:17 +02:00
report m2 2024-04-26 01:30:32 +02:00
src Add stats 2024-04-25 00:39:13 +02:00
.clang-format fix format 2024-04-22 02:31:48 +02:00
.gitignore ordonnanceur.elf 2024-03-15 12:32:26 +01:00
Makefile use the tread sanitizer instead of the leak one 2024-04-24 22:23:53 +02:00
README fix typos 2024-04-25 17:04:35 +02:00

Projet de programmation système avancée
=======================================

Compilation optimisée avec ordonnanceur *work-stealing*
-------------------------------------------------------

  make

Ce qui créer l'exécutable `ordonnanceur.elf`.

Paramètres disponibles :

* -q   : lance le benchmark avec quicksort
* -m   : lance le benchmark avec mandelbrot
* -t n : où `n` est le nombre de threads à utiliser, 0 signifie qu'on utilise
         tous les cœurs disponibles.
* -s   : n'utilises pas d'ordonnanceur

Exemple : quicksort en utilisant tous les cœurs disponibles

  ./ordonnanceur.elf -qt 0


Cibles du makefile
------------------

Il est possible d'utiliser d'autres implémentations d'ordonnanceur en changeant
la cible du Makefile.

* `make threads` : lance juste des threads
* `make lifo`    : utilisation d'une pile
* `make random`  : idem que `lifo` mais en prenant une tâche aléatoire
* `make ws`      : work-stealing


Informations
------------

Le rapport se trouve dans le dossier courant.
Lien vers le dépôt : https://git.mylloon.fr/Paris7/work-stealing-scheduler

Anri Kennel 22302653