• [^] # Re: However, they must be able to steal from the more loaded cores on other nodes.

    Posté par . En réponse au journal Linux: une décennie de coeurs gaspillés. Évalué à -6.

    oui, et puis je ne m'y tenterais pas. Le portage de certaines dénominations de la langue anglaise vers la langue française sont vraiment insupportable.

    Mon plus bel exemple étant celui ci

    Projects each element of an observable sequence into a new sequence of
    observable sequences by incorporating the element's index and then transforms
    an observable sequence of observable sequences into an observable sequence
    producing values only from the most recent observable sequence.

    tenter le en traduisant observable par sujet, vous allez voir c'est pas fun ; )

    Ceci dit, c'était surtout pour réagir à ceci, mais la citation était mal choisie.

    Le noyau a toujours (ou depuis très longtemps) eu de quoi interagir avec l'ordonnanceur depuis le userspace (avec cpuset par exemple), mais CFS via les cgroups a apporté beaucoup plus de finesse dans cela.

    Je saute aux conclusions (j'avoue je n'ai pas lu tous les bugs), le problème n'est pas le manque d'outils existant ou d'algo, mais leurs intégrations dans un système fiable et cohérent.

    All of these algorithms (le papier en cite plusieurs pour diverses optimisations) showed positive benefits, either in terms of performance or power, for some real applications. However, few of them were adopted in mainstream operating systems, mainly because it is not clear how to integrate all these ideas in scheduler safely.

    Pour réussir ce véritable défi, le papier préconise de commencer par se doter d'outils de visualisation.

    Another lesson we learned as a result of this work is the crucial importance of visualization tools. Understanding the root causes of the bugs we described would not have been possible without visualization of the execution events relevant to the problem.

    et le yakafonkon qui va bien pour aller plus loin

    What we need is to rethink the architecture of the scheduler, since it can no longer remain a small, compact and largely isolated part of the kernel. We now understand that rapid evolution of hardware that we are witnessing today will motivate more and more scheduler optimizations. The scheduler must be able to easily integrate them, and to have a way of reasoning about how to combine them. We envision a scheduler that is a collection of modules: the core module and optimization modules.

    lire aussi,

    There were algorithms that scheduled threads
    so as to minimize contention for shared caches, memory
    controllers and multithreaded CPU pipelines [8, 9, 24, 29,
    34, 42, 46]. There were algorithms that reduced commu-
    nication distance among threads sharing data [41] and de-
    termined the optimal number of cores to allocate to mul-
    tithreaded workloads [17]. There were algorithms that ad-
    dressed the scheduling of threads on asymmetric multicore
    CPUs [22, 35] and algorithms that integrated scheduling
    with the management of power and temperature [19]. Fi-
    nally, there were algorithms that managed the memory on
    NUMA systems, which was closely tied to how threads are
    being scheduled [7, 14, 18, 38], and algorithms that sched-
    uled threads to minimize communication latency on systems
    with an asymmetric interconnect

    si je ne m'abuses évidemment ! Plus évidemment encore, c'est avec joie je me prendrais d'autres -1 si je dit une bêtise. Vu que je suis déjà à -32 je n'ai plus peur de rien :p

    La question qui me reste en suspend étant celle ci, au départ, quels étaient les signes qui montraient une faiblesse de l'algo à cet endroit là ?
    Car si j'en suis le papier, il y a d'abord eu suspicion, puis création d'un outils de visualisation, puis correction, production de preuves et enfin théorisation.
    Ptet je l'ai loupé.