R&D : 2,6 To de mémoire vive sur un serveur

L’Université de Princeton et Fusion-IO expérimentent une carte flash PCIe de 2,64 To, qui, via une solution logicielle, est assimilée à la mémoire vive d’un serveur.

Si le prix ne vous rebute pas, placez une carte ioDrive Duo de Fusion-IO dans un bus PCIe et installez l’application Extended Memory développée conjointement avec l’Université de Princeton, et votre serveur assimilera jusqu’à 2,64 To de la carte flash à sa mémoire RAM.

La mémoire DRAM reste encore limitée sur les PC et surtout les serveurs, tandis que de la virtualisation aux applications in-memory les besoins en mémoire ne cessent de progresser. Les nouvelles technologies de mémoire flash semblent prometteuses pour répondre aux attentes, mais il manque le lien qui permettra de remplacer l’un par l’autre. Pour le moment il ne s’agit pas de remplacer la DRAM par de la mémoire flash. La première reste indispensable à la fois parce qu’en contact direct avec le processeur elle reste plus rapide et parce que le passage par un intermédiaire va inévitablement ralentir les exécutions.

Extended Memory et ioDrive

Fusion-IO a donc travaillé avec les chercheurs de l’Université de Princeton pour développer cet intermédiaire, une application nommée Extended Memory, un sous-système du système d’exploitation qui rend transparente l’utilisation de la mémoire flash apportée par une carte ioDrive sur port PCIe. Le port PCI Express est considéré comme suffisamment rapide pour ne pas ralentir le CPU. La mémoire flash devient accessible selon un modèle de mémoire virtuelle. Extended Memory a été développé à l’aide du SDK (Software Development Kit) de Fusion-IO qui permet aux applications de s’exécuter en natif sur ioMemory.

La mémoire DRAM, classiquement appelée mémoire vive, reste cependant indispensable par ses performances, comme nous l’évoquons plus haut. Les métadonnées comme les pages actives sont donc maintenues dans la DRAM tandis que les pages en accès les plus fréquents sont placées dans la mémoire flash. De même, les applications placées dans la flash s’exécutent plus rapidement puisque le swapping, les modules que le cœur de l’application appelle du disque pour s’exécuter en mémoire, sont quasi immédiatement disponibles.

Dernier avantage de la solution, une carte flash coûte moins cher que de la mémoire DRAM. Une (très) grosse configuration serveur avec un très gros volume de mémoire pourrait donc devenir plus abordable.