Sto tentando di trovare un modo per dimostrare come i diversi scheduler possono influire sul runtime di un programma. Finora, sto usando solo la funzione time su linux per cercare di vedere le differenze misurabili usando noop, CFS e programmatori di scadenza, ma non sto avendo fortuna. Per i programmi di test, ho appena scritto una serie di programmi C che fondamentalmente eseguono il loop e contano i numeri.Che cosa è un buon programma in C che può dimostrare punti di forza/debolezza di diversi scheduler di Linux (noop, CFS, scadenza)?
Ho pensato che forse se avvii un processo che conta ad un numero più alto, e poi inizio un secondo processo che non conta altrettanto alto; utilizzando lo scheduler di scadenza, il secondo processo potrebbe terminare in modo significativamente più veloce perché è un lavoro che richiede meno risorse. Tuttavia, non vedo alcuna differenza tra gli scheduler. Mi chiedo se forse la mia comprensione degli scheduler sia un po 'imperfetta? Esiste un tipo di programma più appropriato che potrei provare a fare per dimostrare alcuni di questi concetti?
Qualcuno può darmi qualche consiglio, consiglio o qualcosa del genere?
Bella domanda! Non ci sono benchmark disponibili? Non reinventare la ruota e utilizzare uno di questi. Magari cerca dei documenti scientifici sugli scheduler e controlla i benchmark che hanno usato per misurarli. – sestus
Perché non usi 'hackbench' o altri strumenti di benchmarking. O per i programmi personalizzati, [https://github.com/tsuna/contextswitch](https://github.com/tsuna/contextswitch) è un buon punto di partenza. –