Исследование статистики памяти "кучи" C/C++ в gdb

Это один из способов сделать это: загрузите все листы в словарь данных и затем соедините все значения в словаре в один фрейм.

import pandas as pd

Задайте имя листа None, чтобы загружать все листы в файл данных и игнорировать индекс, чтобы избежать перекрытия значений позже (см. комментарий от @bunji)

df = pd.read_excel('tmp.xlsx', sheetname=None, ignore_index=True)

Затем объединить все кадры данных

cdf = pd.concat(df.values())

print(cdf)
27
задан Mike Tunnicliffe 2 April 2010 в 14:04
поделиться

2 ответа

@fd - ошибка RedHat получила ваш ответ.

Функция mallinfo устарела и не будет обновляться. Истинный API статистики запросов - это TDB. Сегодня у вас есть malloc_stats и malloc_info. Я не могу найти никаких документов ни по одному, но вот что они вам дают.

Это достаточно близко к тому, что вам нужно?

(gdb) call malloc_stats()
Arena 0:
system bytes     =     135168
in use bytes     =         96
Total (incl. mmap):
system bytes     =     135168
in use bytes     =         96
max mmap regions =          0
max mmap bytes   =          0

(gdb) call malloc_info(0, stdout)
<malloc version="1">
<heap nr="0">
<sizes>
<unsorted from="1228788" to="1229476" total="3917678" count="3221220448"/>
</sizes>
<total type="fast" count="0" size="0"/>
<total type="rest" count="3221220448" size="3917678"/>
<system type="current" size="135168"/>
<system type="max" size="135168"/>
<aspace type="total" size="135168"/>
<aspace type="mprotect" size="135168"/>
</heap>
<total type="fast" count="0" size="0"/>
<total type="rest" count="3221220448" size="3917678"/>
<system type="current" size="135168
/>
<system type="max" size="135168
/>
<aspace type="total" size="135168"/>
<aspace type="mprotect" size="135168"/>
</malloc>
28
ответ дан leedm777 28 November 2019 в 05:41
поделиться

Если вы можете изменить код:

#include <malloc.h>
#include <stdio.h>

void dumpMallinfo(void) {
  struct mallinfo m = mallinfo();
  printf("uordblks = %d\nfordblks = %d\n", m.uordblks, m.fordblks);
}

В GDB вы можете call dumpMallinfo().

3
ответ дан leedm777 28 November 2019 в 05:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: