Un hôte alloue à chaque machine virtuelle la mémoire spécifiée par le paramètre Limit, sauf si la mémoire est excessivement engagée. Un hôte ESXi n'alloue jamais à une machine virtuelle plus de mémoire que sa capacité de mémoire physique spécifiée.

Par exemple, la limite par défaut (illimitée) ou une limite spécifiée par l'utilisateur (par exemple, 2 Go) peut être attribuée à une machine virtuelle 1 Go. Dans les deux cas, l'hôte ESXi n'alloue jamais plus de 1 Go, la taille de mémoire physique spécifiée pour l'hôte.

Lorsque la mémoire est excessivement engagée, une quantité de mémoire comprise entre la quantité spécifiée par Réservation et celle spécifiée par Limite est allouée à chaque machine virtuelle. La quantité de mémoire attribuée à une machine virtuelle au-delà de sa réservation varie généralement en fonction de la charge mémoire actuelle.

Un hôte détermine l'allocation de chaque machine virtuelle en fonction du nombre de partages qui lui est alloué et d'une estimation de sa récente taille d'ensemble de travail.

  • Partages : Les hôtes ESXi utilisent une stratégie d'allocation de mémoire par partage proportionnel modifiée. Les partages de mémoire donnent droit à une machine virtuelle à disposer d'une fraction de la mémoire physique disponible.
  • Taille d'ensemble de travail : Les hôtes ESXi estiment l'ensemble de travail d'une machine virtuelle en surveillant l'activité de mémoire sur des périodes de temps d'exécution de machine virtuelle successives. Les estimations sont homogénéisées sur plusieurs périodes de temps à l'aide de techniques répondant rapidement aux augmentations de taille d'ensemble de travail et plus lentement aux diminutions de taille de charge de travail.

    Cette approche garantit qu'une machine virtuelle depuis laquelle de la mémoire inactive est réclamée peut atteindre rapidement son allocation complète basée sur un partage lorsqu'elle commence à utiliser la mémoire de manière plus active.

    L'activité mémoire est surveillée afin d'estimer les tailles d'ensemble de travail pour une période par défaut de 60 secondes. Pour modifier cette période par défaut, réglez le paramètre avancé Mem.SamplePeriod. Reportez-vous à la section Définir les attributs d'hôte avancés.