Roman Gushchin (
A abordagem proposta permite aumentar a eficiência do uso de laje, reduzir o tamanho da memória usada para laje em 30-45% e reduzir significativamente o consumo geral de memória do kernel. Ao reduzir o número de placas imóveis, há também um efeito positivo na redução da fragmentação da memória. O novo controlador de memória simplifica significativamente o código de contabilização de blocos e não requer o uso de algoritmos complicados para criar e excluir dinamicamente caches de blocos para cada cgroup. Todos os cgroups de memória na nova implementação usam um conjunto comum de caches de laje, e o tempo de vida dos caches de laje não está mais vinculado ao tempo de vida daqueles instalados através do cgroup
A contabilidade de recursos mais precisa implementada no novo controlador de placas deveria, teoricamente, carregar mais a CPU, mas na prática as diferenças revelaram-se insignificantes. Em particular, o novo controlador de placas tem sido usado há vários meses em servidores de produção do Facebook que lidam com diferentes tipos de carga de trabalho, e ainda não foram identificadas regressões perceptíveis. Ao mesmo tempo, há uma redução significativa no consumo de memória - em alguns hosts foi possível economizar até 1 GB de memória, mas esse indicador depende muito da natureza da carga, do tamanho total da RAM, do número de CPUs e as características de trabalhar com memória. Testes anteriores
Fonte: opennet.ru