Утечка памяти в самой Erlang VM или в не-Erlang частях ejabberd будет иметь эффект, который вы описываете.
ejabberd содержит несколько файлов NIF - в ejabberd-2.1.10 имеется 10 файлов ".c".
Был ли ваш ejabberd настроен на "--enable-nif"?
Если это так, попробуйте сравнить с версией, созданной с использованием «--disable-nif», чтобы увидеть, имеет ли она другое поведение использования памяти.
Другие возможности отладки включают использование Valgrind для обнаружения и обнаружения утечки. (Я не пробовал использовать его на Erlang VM; может быть несколько ложных срабатываний, но, если повезет, утечка будет заметна по размеру или по источнику.)
Последнее замечание: куча процесса Erlang, возможно, была фрагментирована. Разрывы между распределениями будут учитываться в размере процесса ОС; Не похоже, что они включены в erlang: memory (total).