Examining Erlang crash dumps: ¿cómo dar cuenta de toda la memoria?
He estado estudiando detenidamente este volcado por caída de Erlang donde la VM se ha quedado sin memoria de almacenamiento dinámico. El problema es que no hay un culpable obvio que asigne toda esa memoria.
Utilizando algunos negros seriosawk
magia He resumido los camposStack+heap
, OldHeap
, Heap unused
yOldHeap unused
para cada proceso y los clasificó por uso de memoria. El problema es que este número ni siquiera se acerca al número que representa la memoria total de todos los procesosprocesses_used
de acuerdo con laErlang crash dump guide.
Ya he probado elCrashdump Viewer y me falta algo o no hay mucha ayuda para mi tipo de problema.
El número que obtengo es de 525 MB, mientras que elprocesses_used
l valor @ está en 1348 MB. ¿Dónde puedo encontrar el resto de la memoria?
Edit: ElHeap unused
yOldHeap unused
no debería haberse incluido ya que son una subparte deStack+Heap
yOldHeap
, eso más el hecho de que el número que se muestra paraStack+Heap
yOldHeap
se enumeran como número de palabras, no bytes, fue el problema.