Sauf que tous les workloads ne sont pas partitionables, que l'utilisation de fibres/goroutines/coroutines/user-space tasks/quel que soit le nom qu'on leur donne implique des echanges de messages et donc un cout en copie, synchronization et context switch (meme en user-space).
Il y a une raison pour laquelle des boites comme Azul existent...
Un autre argument contre les garbage collectors donne par Linus est la perte de localite de reference: lorsque le GC decide de faire une collection, tu te retrouves avec un cache pollue par les objets collectes.
Donc non, un heap par task ne resoud pas tous les problemes.
[^] # Re: Destructeurs
Posté par neologix . En réponse à la dépêche Crystal, un langage proche de Ruby, en version 0.16. Évalué à 2.
Sauf que tous les workloads ne sont pas partitionables, que l'utilisation de fibres/goroutines/coroutines/user-space tasks/quel que soit le nom qu'on leur donne implique des echanges de messages et donc un cout en copie, synchronization et context switch (meme en user-space).
Il y a une raison pour laquelle des boites comme Azul existent...
Un autre argument contre les garbage collectors donne par Linus est la perte de localite de reference: lorsque le GC decide de faire une collection, tu te retrouves avec un cache pollue par les objets collectes.
Donc non, un heap par task ne resoud pas tous les problemes.