¿Cómo perfilar un programa Erlang en términos de uso de memoria?

Me gustaría mejorar aún más la eficiencia de un programa Erlang existente. Primero me gustaría identificar cuellos de botella y luego decidir dónde optimizar aún más.

He intentadofprof, pero solo proporciona información sobre el tiempo de ejecución total y promedio. Me gustaría ver un registro similar al resultado de fprof, pero en términos de uso de memoria promedio y total con respecto a funciones y procesos.

Para empezar, bastaría con perfilar un solo módulo, que no genere procesos, solo se llamarían sus funciones. Esto ya ayudaría, ya que podría separar el programa en distintos módulos para realizar pruebas.

Los puntos sospechosos típicos son, donde se manejan listas más grandes.

Aquí el uso de++ ha sido resuelto porlists:reverse([Head|Tail]) como la sintaxis

También estoy considerando usar tablas ETS en lugar de listas para casos con más de unos cientos de elementos.

¡Gracias de antemano!

Respuestas a la pregunta(4)

Su respuesta a la pregunta