[Résolu] SLAB ou SLUB (Compilation Kernel)

Bonjour,

Je recompile en moyenne mon Kernel Linux tous les mois, mais cette fois-ci, je me suis posé une question concernant “L’allocataire de mémoire”.
En effet, dans “General Setup”, on trouve le champ : “Choose SLAB allocator”. Le choix se pose entre SLAB ou SLUB. SLAB est le plus connu, et est générique. SLUB parait plus performant, mais les avis divergent.

Qu’en pensez-vous? Avez-vous déjà eu des problèmes avec SLUB?
Si oui, quel genre de problème?

Merci.

Il me semble que le slub a une gestion plus efficace de la mémoire en ce sens qu’il utiliserait moins de métadonnées pour organiser les pages et en rassemblant les pages inutilisées avec une liste chaînée (entre autres), ce que ne ferait pas le slab “de base” (un peu de lecture pour les anglophones). Très honnètement j’ai bossé un peu dessus l’an passé mais je me suis empressé d’oublier les différences entre les 2 :blush: .
Après je ne sais pas si ce genre de différences sont sensibles pour l’utilisateur “lambda”, par contre sur des grosses machines avec des allocations mémoires faites/défaites régulièrement et de façon plutôt intenses, le slub possède peut être un avantage, mais c’est à tester, ou à faire confirmer par un adepte averti =).

Edit : pour répondre à la dernière question : je ne pense pas avoir jamais utilisé le slub allocator en recompilant mais je crois me souvenir qu’un ami utilise ça avec sa gentoo et qu’il n’a (ou en tout cas n’avait, ça fait un bail que je l’ai pas recroisé) aucun pb particulier.

Salut,

[code]egrep SLUB /boot/config-$(uname -r)
CONFIG_SLUB_DEBUG=y
CONFIG_SLUB=y

CONFIG_SLUB_DEBUG_ON is not set

CONFIG_SLUB_STATS is not set

uname -a
Linux deb64 2.6.26.5-vanilla64 #1 SMP Wed Sep 10 18:02:43 BST 2008 x86_64 GNU/Linux[/code]

Donc je l’utilise par pure curiosité sur un noyau compilé depuis les sources kernel.org, sur un c2duo avec 4 giga de mémoire qui fait tourner en permanence deux machines virtuelles kvm, dont une avec un petit serveur qui pompe 1 Giga. Rien de cassé jusqu’ici, mais pas de différence notable à vue de nez…

Merci pour vos réponses.

Je vais donc passé de SLAB à SLUB pour cette fois ci. Si je rencontre des bugs, je fais signe.

Merci