Можно ли как-то оценить фрагментацию?
От: Шебеко Евгений  
Дата: 18.11.09 11:26
Оценка:
WinXP VC7.1
Распределение через стандартный new.
Можно ли как-то оценить сабж? Хоть как-то косвенно.
Может есть какая-то "волшебная" улилита или task manager на это косвенно указывает.

Что у меня за проблема говорить не буду, итак знаю что ответят:
— искать утечки
— выделять память в обход new
— использовать пулы
— выделять память заранее

Хотелось бы услышать чётко по сабжу, всё равно какими причинами он вызван.
Re: Можно ли как-то оценить фрагментацию?
От: Pavel Dvorkin Россия  
Дата: 18.11.09 11:51
Оценка: 2 (1)
Здравствуйте, Шебеко Евгений, Вы писали:

ШЕ>WinXP VC7.1

ШЕ>Распределение через стандартный new.
ШЕ>Можно ли как-то оценить сабж? Хоть как-то косвенно.

Посмотри функцию HeapWalk
With best regards
Pavel Dvorkin
Re: Можно ли как-то оценить фрагментацию?
От: smithx  
Дата: 18.11.09 12:03
Оценка: 1 (1) :)
Если внешних библиотек нет (или их можно пересобрать), то можно пересобрать проект с Hoard'ом и посмотреть разницу.
P.S. способ проще: (только не смейтесь) посмотрите как оно ведет себя под Vista — у нее менеджер памяти лучше с фрагментацией дружит.
Re: Можно ли как-то оценить фрагментацию?
От: Тот кто сидит в пруду Россия  
Дата: 18.11.09 12:12
Оценка:
Здравствуйте, Шебеко Евгений, Вы писали:

ШЕ>WinXP VC7.1

ШЕ>Распределение через стандартный new.
ШЕ>Можно ли как-то оценить сабж? Хоть как-то косвенно.

Можно самостоятельно пробежаться по адресному пространству (VirtualQuery etc.) и/или по хипу и посчитать ту статистику, которая интересует (размер максимального доступного блока, например).

ШЕ>Может есть какая-то "волшебная" улилита или task manager на это косвенно указывает.


ШЕ>Что у меня за проблема говорить не буду, итак знаю что ответят:

ШЕ>- искать утечки
ШЕ>- выделять память в обход new
ШЕ>- использовать пулы
ШЕ>- выделять память заранее

Не-не-не, самое главное пропустил — заюзать low fragmentation heap (пара API вызовов).
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[2]: Можно ли как-то оценить фрагментацию?
От: Шебеко Евгений  
Дата: 18.11.09 12:12
Оценка:
S>P.S. способ проще: (только не смейтесь) посмотрите как оно ведет себя под Vista — у нее менеджер памяти лучше с фрагментацией дружит.
За это спасибо, проверю.
Re: Можно ли как-то оценить фрагментацию?
От: Шебеко Евгений  
Дата: 18.11.09 12:17
Оценка: -1
ШЕ>Что у меня за проблема говорить не буду, итак знаю что ответят:
Как же я ещё забыл:
— использовать аллокатор A — самый быстрый аллокатор.
— использовать аллокатор B, который на 10% быстрее аллоктора A.
— использовать (a-z)malloc

Так что если хотите это предложить, то лучше не надо.
Интересует только анализ.
Re[2]: Можно ли как-то оценить фрагментацию?
От: smithx  
Дата: 18.11.09 12:33
Оценка: +1
так проблемы со скоростью или с перерасходом?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.