Env Config:
System: centos8 < /p>
Описание задачи:
Мой процесс часто обновляет большие объекты (2G+, этот объект очень сложный). Я обнаружил, что RSS постоянно повышается, даже если я сначала удаляет один или несколько более крупных объектов, а затем добавляю, что не только что не удаляет 2.2g, но не добавляется 2.2g, но не добавляют 2.2g, но не добавляют 2.2g, но не добавляют 2.2g, но не добавляют. 4.3g) < /p>
Посмотрев некоторую информацию, я догадался, что она может быть вызвана фрагментацией памяти, поэтому я связал свою программу с tcmalloc < /code>.
и провести вышеуказанный эксперимент (сначала удалить 2.1g 、 2.2g и добавить 2,0G, RSS - 4,3 г, это являются ожидаемые данные) < /p>
、> Вопросы: < /p>
Как я уже упоминал выше, я просто предполагаю, что это вызвано фрагментацией памяти. Мне не ясно о конкретной причине такой разницы (почему ее нельзя использовать повторно), а также о том, как ее следует воспроизвести с помощью небольшого демо -кода.
Есть ли какие -либо команды или инструменты, которые могут просматривать фрагментацию памяти
Подробнее здесь: https://stackoverflow.com/questions/797 ... -be-reused
Glibc (malloc/free) память не может быть повторно используется ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Glibc (Malloc/Free) память не может быть повторно использована - проблема фрагментации?
Anonymous » » в форуме C++ - 0 Ответы
- 2 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Glibc (Malloc/Free) память не может быть повторно использована - проблема фрагментации?
Anonymous » » в форуме C++ - 0 Ответы
- 3 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Вывод strace не показывает системный вызов malloc и free в многопоточном приложении
Anonymous » » в форуме Linux - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-