MacOS usa memoria virtual / intercambio mucho

5

Tengo un MacBook Pro en funcionamiento y creo que usa mucho intercambio en lugar de RAM.

Model Name: MacBook Pro
Model Identifier:   MacBookPro13,1
Processor Name: Intel Core i5
Processor Speed:    2 GHz
Number of Processors:   1
Total Number of Cores:  2
L2 Cache (per Core):    256 KB
L3 Cache:   4 MB
Memory: 16 GB
Boot ROM Version:   MBP131.0205.B22
SMC Version (system):   2.36f97
Serial Number (system): C02TL0KGGVC8
Hardware UUID:  09325653-7FB0-52CC-A599-063539D1010A

Estoy acostumbrado a monitorear la actividad del sistema UNIX usando htop . Me doy cuenta de que mi OS X nunca usa más de la mitad de la RAM, sino que usa más swap. Por lo general, 7 GB de swap, pero puede ser más.

Mipreguntaes,¿nodeberíamisistemaoperativousarmásRAMantesdelintercambio?LeísobrecómoOSXmanejaelintercambioysientoqueesunapérdidadepotenciacomputacional.EscribirpáginasdentroyfuerarequieremuchotiempoynoestanrápidocomousarRAM

IntentocompararconmidistribucióndeUbuntu16.04encasaquenoseintercambiaamenosquelamemoriaestéllena.Peroquizáslos2sistemasoperativostengancomportamientosdiferentes,aunqueambosestánbasadosenUNIX.

Tambiénimprimílasalidadelcomandovm_statparaverificarsihabíaalgunadiferencia,porquequizáshtopnoloinformaconprecisión.Notéquehtopreportaunacapacidaddeintercambiomáximavariable,de3a16.¿PorquénoesunaparticióndetamañofijocomoenUbuntu?

MachVirtualMemoryStatistics:(pagesizeof4096bytes)Pagesfree:6743.Pagesactive:1005803.Pagesinactive:903490.Pagesspeculative:361.Pagesthrottled:0.Pageswireddown:837598.Pagespurgeable:9241."Translation faults":                6115698117.
Pages copy-on-write:                  107293117.
Pages zero filled:                   2540298644.
Pages reactivated:                   1039487337.
Pages purged:                          52550607.
File-backed pages:                       482299.
Anonymous pages:                        1427355.
Pages stored in compressor:             5968822.
Pages occupied by compressor:           1439832.
Decompressions:                      1456775259.
Compressions:                        1606172332.
Pageins:                             1393246141.
Pageouts:                              25235109.
Swapins:                              562867577.
Swapouts:                             582845342.
    
pregunta MCMZL 19.12.2017 - 12:09

1 respuesta

3

Primero: sí, el sistema operativo en general utilizará la RAM antes del intercambio. No hay pérdida de poder computacional involucrado en eso.

Parece que has llegado a la conclusión de que macOS está usando swap, cuando también podría estar usando memoria libre basada en la captura de pantalla de htop. No puede sacar esa conclusión a partir de una muestra simple del uso de la memoria.

En realidad, podría haber estado ejecutando programas que usaban una gran cantidad de RAM, lo que obligó a macOS a cambiar la memoria al disco. Luego abandonas algunos de esos programas (o desasignan una parte de la RAM). Luego, si toma una muestra de htop ahora, verá que el uso de RAM es bajo (mucha memoria RAM libre), pero también está usando mucho intercambio.

Pero eso no es un problema, de hecho, ¡pretende ser así! No sería prudente que macOS comience a intercambiar esas páginas que se han colocado en el disco. Hará esto cuando sea necesario (es decir, utilizado por los programas), pero hasta que eso suceda, podría ser que esas páginas nunca se usarían, y por lo tanto, el tiempo dedicado a intercambiarlas se perderá.

Usted escribe que, en comparación con su PC con Ubuntu, observa un comportamiento diferente. Debes saber que puedes cambiar ese comportamiento. En Linux puede usar sysctl para establecer la variable vm.swappiness. Cambiará cuán agresivo es el sistema operativo al cambiar las cosas al disco.

También se pregunta por qué su sistema macOS no usa swap de tamaño fijo como lo hace Ubuntu. De hecho, Ubuntu también admite el intercambio dinámico de tamaño mediante el comando "swapspace". Puede establecer tamaños mínimos y máximos, y agregará / eliminará dinámicamente el espacio de intercambio según cambien las necesidades.

    
respondido por el jksoegaard 19.12.2017 - 14:03

Lea otras preguntas en las etiquetas