какие сборки дотнет-приложение подгрузило и сколько оператив
От: Brother_  
Дата: 15.10.08 13:20
Оценка:
Привет!
Подскажите пожалуйста тулзовину для того, чтобы увидеть какие сборки дотнет-приложение подгрузило и сколько оперативной памяти они сжирают.

Спасибо.

16.10.08 17:41: Перенесено модератором из '.NET' — AndrewVK
Re: какие сборки дотнет-приложение подгрузило и сколько опер
От: samius Япония http://sams-tricks.blogspot.com
Дата: 15.10.08 13:29
Оценка:
Здравствуйте, Brother_, Вы писали:

B_>Привет!

B_>Подскажите пожалуйста тулзовину для того, чтобы увидеть какие сборки дотнет-приложение подгрузило и сколько оперативной памяти они сжирают.

B_>Спасибо.


Что значит "и сколько оперативной памяти они сжирают"?

Если ваша сборка создала гигабайтный массив, то которая сборка сожрала память, ваша или mscorlib.dll?
Допустим-предположим, что ваша, т.к. она обратилась для выделения памяти под массив.

А если ваша сборка создала List<int> и запихала туда 250000 интов, то в этом случае которая из сборок сожрала память?
Re[2]: какие сборки дотнет-приложение подгрузило и сколько о
От: samius Япония http://sams-tricks.blogspot.com
Дата: 15.10.08 13:32
Оценка:
Здравствуйте, samius, Вы писали:

S>Здравствуйте, Brother_, Вы писали:


ЗЫ. С тем, сколько памяти выделено под экземпляры конкретных типов, поможет разобраться любой профайлер.
Re[2]: какие сборки дотнет-приложение подгрузило и сколько о
От: Brother_  
Дата: 15.10.08 13:32
Оценка:
Здравствуйте, samius, Вы писали:

S>Здравствуйте, Brother_, Вы писали:


B_>>Привет!

B_>>Подскажите пожалуйста тулзовину для того, чтобы увидеть какие сборки дотнет-приложение подгрузило и сколько оперативной памяти они сжирают.

B_>>Спасибо.


S>Что значит "и сколько оперативной памяти они сжирают"?


S>Если ваша сборка создала гигабайтный массив, то которая сборка сожрала память, ваша или mscorlib.dll?

S>Допустим-предположим, что ваша, т.к. она обратилась для выделения памяти под массив.

S>А если ваша сборка создала List<int> и запихала туда 250000 интов, то в этом случае которая из сборок сожрала память?



я запустил приложение и оно сразу сожрало 100 мб.
я хочу увидеть занятую память в разрезе сборок.
Re[3]: какие сборки дотнет-приложение подгрузило и сколько о
От: samius Япония http://sams-tricks.blogspot.com
Дата: 15.10.08 13:46
Оценка:
Здравствуйте, Brother_, Вы писали:

B_>я запустил приложение и оно сразу сожрало 100 мб.

B_>я хочу увидеть занятую память в разрезе сборок.

Любой профайлер. Например, в студии есть встроенный.
Re[3]: какие сборки дотнет-приложение подгрузило и сколько о
От: Lloyd Россия  
Дата: 15.10.08 14:47
Оценка:
Здравствуйте, Brother_, Вы писали:

B_>я хочу увидеть занятую память в разрезе сборок.


Что значит выделенное?
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re: какие сборки дотнет-приложение подгрузило и сколько опер
От: _FRED_ Черногория
Дата: 15.10.08 16:40
Оценка:
Здравствуйте, Brother_, Вы писали:

B_>Подскажите пожалуйста тулзовину для того, чтобы увидеть … сколько оперативной памяти они сжирают.


Некорректное условие: память общая на процесс и не разделяется между сборками. Но, например, [теоритически] возможно увидеть, как распределена память между различными типами, а каждый тип пренадлежит одной единственной сборке, но это будет ответ на вопрос "обекты типов из каких сборок съедают память".
Help will always be given at Hogwarts to those who ask for it.
Re[2]: какие сборки дотнет-приложение подгрузило и сколько о
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 15.10.08 16:51
Оценка:
Здравствуйте, _FRED_, Вы писали:

_FR>Здравствуйте, Brother_, Вы писали:


B_>>Подскажите пожалуйста тулзовину для того, чтобы увидеть … сколько оперативной памяти они сжирают.


_FR>Некорректное условие: память общая на процесс и не разделяется между сборками. Но, например, [теоритически] возможно увидеть, как распределена память между различными типами, а каждый тип пренадлежит одной единственной сборке, но это будет ответ на вопрос "обекты типов из каких сборок съедают память".


Готов поспорить что mscorlib выйграет
Re[3]: какие сборки дотнет-приложение подгрузило и сколько о
От: Brother_  
Дата: 16.10.08 06:45
Оценка: :)
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, _FRED_, Вы писали:


_FR>>Здравствуйте, Brother_, Вы писали:


B_>>>Подскажите пожалуйста тулзовину для того, чтобы увидеть … сколько оперативной памяти они сжирают.


_FR>>Некорректное условие: память общая на процесс и не разделяется между сборками. Но, например, [теоритически] возможно увидеть, как распределена память между различными типами, а каждый тип пренадлежит одной единственной сборке, но это будет ответ на вопрос "обекты типов из каких сборок съедают память".


G>Готов поспорить что mscorlib выйграет


даже если используется девекспресс?
Re[4]: какие сборки дотнет-приложение подгрузило и сколько о
От: fmiracle  
Дата: 16.10.08 07:02
Оценка: 92 (2)
Здравствуйте, Brother_, Вы писали:

G>>Готов поспорить что mscorlib выйграет

B_>даже если используется девекспресс?

Ты чего-то не понимаешь."Распределение памяти" по типам не дает ничего. Да, ты можешь легко узнать, что 98Мб памяти у тебя занимают строки (тип System.String), т.е. сборка mscorlib. Но ты не поймешь кто их создает и зачем.

"Сколько памяти съедается приложением в разрезе по сборкам" это что-то типа "сколько бензина потребляет автомобиль в разрезе по деталям. Что больше потребляет бензина при движении — колеса или коленвал?". Посмотреть можно, но сразу окажется, что больше всего бензина потребляет бензонасос Но это мало поможет для диагностики проблемы (если она вообще есть)

Смотреть надо по объектам кто куда и почему держит ссылки. Нужно ли им реально их удерживать или нет.
Re[5]: какие сборки дотнет-приложение подгрузило и сколько о
От: Brother_  
Дата: 16.10.08 07:08
Оценка:
Здравствуйте, fmiracle, Вы писали:

F>Здравствуйте, Brother_, Вы писали:


G>>>Готов поспорить что mscorlib выйграет

B_>>даже если используется девекспресс?

F>Ты чего-то не понимаешь."Распределение памяти" по типам не дает ничего. Да, ты можешь легко узнать, что 98Мб памяти у тебя занимают строки (тип System.String), т.е. сборка mscorlib. Но ты не поймешь кто их создает и зачем.


F>"Сколько памяти съедается приложением в разрезе по сборкам" это что-то типа "сколько бензина потребляет автомобиль в разрезе по деталям. Что больше потребляет бензина при движении — колеса или коленвал?". Посмотреть можно, но сразу окажется, что больше всего бензина потребляет бензонасос Но это мало поможет для диагностики проблемы (если она вообще есть)


F>Смотреть надо по объектам кто куда и почему держит ссылки. Нужно ли им реально их удерживать или нет.


спасибо, всё понял
буду смотреть по объектам
Re: какие сборки дотнет-приложение подгрузило и сколько опер
От: orangy Россия
Дата: 16.10.08 14:27
Оценка:
Здравствуйте, Brother_, Вы писали:

B_>Подскажите пожалуйста тулзовину для того, чтобы увидеть какие сборки дотнет-приложение подгрузило и сколько оперативной памяти они сжирают.

dotTrace, profile memory, record allocation stacktraces. Потом можно посмотреть, где, кто, сколько и чего навыделял.
... << RSDN@Home 1.2.0 alpha rev. 655>>
"Develop with pleasure!"
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.