-
defragmentation
Bonjour,
quelqu'un sait il ou je pourrais trouver des algos de défragmentation ou des articles parlant de défragmentation ?
En fait pour être tout à fait exact, j'ai un getionnaire de mémoire qui accumule des objets dans un éspace mémoire de taille limité. Les objets sont de tailles variables, mais alignés sur une taille par défaut. Donc au fur et a mesure il se créer des trous dans mon séguement de mémoire. Une fois plein comme je ne peu pas réallouer, il faut que j'optimise la manière dont c'est rangé.
-
Bonjour,
Si j'ai bien compris, il faut que tu cherches des information sur la fragmentation externe.
Souhaites-tu "juste" réorganiser les objets dans ton segment mémoire afin d'avoir de la place pour de nouveaux objets, ou bien faire quelque chose de plus intelligent, qui se base par exemple sur l'âge des objets ?
En effet, plus un objet est vieux, plus il a de chances de vieillir (c'est à dire de rester dans ton segment mémoire). Donc il peut être interessant de chercher à grouper les vieux objets ensemble, ce qui réduira le nombre de déplacement de ces objets.
Je pense que les algorithmes employés pour les garbage collectors peuvent être intéressants. Plus di'informations sur le site des docs de Sun http://docs.sun.com/app/docs
-
merci pour ta réponse !
En fait l'age de mes objets ne m'interresse pas vraiment, car je suppose que derrière cela signifie des appels aux fonctions localtime et autres couteuses en terme de perf. Et les perfs sont essentielles sur ce projet.
-
OK, dans ce cas, oublie les algos de GC.
En revanche, tu peux te renseigner sur les algos d'ordonnancement en mémoire, je pense que tu devrais y trouver des infos intéressantes.
Il me semble qu'il en existe plusieurs, en fonction de ce que l'on souhaite (performance, minimisation de la place, temps de vie des objets, ...)