Какая команда в SOS windbg может сбрасывать кучу только для Gen 2 и LOH?

Мне нужно исследовать дамп высокой памяти. когда я использую! eeheap -gc, он дает 20 куч, каждая куча имеет информацию об адресе Gen 2 и LOH и информацию о размере. Однако я хочу получить общую сводку Gen 2 и LOH и увидеть статистическую сводку о том, какие объекты занимают память в Gen 2 и LOH, как я могу сделать это в windbg с помощью SOS? Большое спасибо за помощь.

! eeheap -gc

Количество куч сборщика мусора: 20

Кучного 0 (000000293d5c4120) поколение 0 начинается в 0x000000294c35d740 поколении 1 начинается при генерации 0x000000294c34ceb0 2 начинается в контексте выделения 0x000000293e181000 эфемерного сегмента: нет сегмент начинают распределенный размер 000000293e180000 000000293e181000 000000294c607758 0xe486758 (239626072) Большие старты объекта кучи в 0x0000002e3e181000 сегменте начинают распределенный размер 0000002e3e180000 0000002e3e181000 0000002e41f08640 0x3d87640 (64517696) 0000002f5bc50000 0000002f5bc51000 0000002f5c190b88 0x53fb88 (5503880)

Размер кучи: Размер: 0x1274d920 (309647648) байт.

Кучного 1 (000000293d5eac10) поколение 0 начинается в 0x000000298b1f0440 поколении 1 начинается в 0x000000298b14c8c0 поколении 2 начинается в контексте выделения 0x000000297e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 000000297e180000 000000297e181000 000000298b5fe458 0xd47d458 (222811224) Большие старты объекта кучи в 0x0000002e42181000 сегменте начинает выделено размер 0000002e42180000 0000002e42181000 0000002e43462d40 0x12e1d40 (19799360) 0000002f75c50000 0000002f75c51000 0000002f787ccda8 0x2b7bda8 (45596072)

Размер кучи: Размер: 0x112daf40 (288206656) байт.

Кучного 2 (000000293d611700) поколение 0 начинается в 0x00000029ca38ff40 поколении 1 начинается в 0x00000029ca15dfd0 поколении 2 начинается в контексте выделения 0x00000029be181000 эфемерного сегмента: нет сегмент начинают распределенный размером 00000029be180000 00000029be181000 00000029ca7635d0 0xc5e25d0 (207496656) Большие старты объекта кучи в 0x0000002e46181000 сегменте начинает выделено размер 0000002e46180000 0000002e46181000 0000002e46e289b0 0xca79b0 (13269424) 0000002fdfc50000 0000002fdfc51000 0000002fe4f2d2e0 0x52dc2e0 (86885088) 0000002fa5c50000 0000002fa5c51000 0000002fa8bf5258 0x2fa4258 (49955416)

Размер кучи: Размер: 0x1550a4b8 (357606584) байт.

Куча 3 (000000293d614da0) поколение 0 начинается в 0x0000002a0ce42bb8 поколении 1 начинается в 0x0000002a0cdac958 поколении 2 начинается в контексте выделения 0x00000029fe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 00000029fe180000 00000029fe181000 0000002a0cfb4bd0 0xee33bd0 (249773008) Большие старты объекта кучи в 0x0000002e4a181000 сегменте начинает выделено размер 0000002e4a180000 0000002e4a181000 0000002e4dffb0b8 0x3e7a0b8 (65511608) 0000002f6bc50000 0000002f6bc51000 0000002f6c09dff8 0x44cff8 (4509688)

Размер кучи: Размер: 0x130fac80 (319794304) байт.

Куча 4 (000000293d617e80) поколение 0 начинается в 0x0000002a4d26e430 поколении 1 начинается в 0x0000002a4d0ebcd0 поколении 2 начинается в контексте выделения 0x0000002a3e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002a3e180000 0000002a3e181000 0000002a4d2f6448 0xf175448 (253187144) Большие старты объекта кучи в 0x0000002e4e181000 сегменте начинает выделено размер 0000002e4e180000 0000002e4e181000 0000002e50efad20 0x2d79d20 (47684896) 0000002f57c50000 0000002f57c51000 0000002f5a4e3828 0x2892828 (42543144) 0000003019c50000 0000003019c51000 000000301c929ab0 0x2cd8ab0 (47024816)

Размер кучи: Размер: 0x1745a440 (390440000) байт.

Куча 5 (0000002e9d0b9f40) поколение 0 начинается в 0x0000002a8b579448 поколении 1 начинается в 0x0000002a8b4adb98 поколении 2 начинается в контексте выделения 0x0000002a7e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002a7e180000 0000002a7e181000 0000002aa028f0d0 0x2210e0d0 (571531472) Большие старты объекта кучи в 0x0000002e52181000 сегменте начинает выделено размер 0000002e52180000 0000002e52181000 0000002e55c4fa00 0x3acea00 (61663744) 0000002f46420000 0000002f46421000 0000002f48524938 0x2103938 (34617656)

Размер кучи: Размер: 0x27ce0408 (667812872) байт.

Куча 6 (0000002e9d0df9a0) поколение 0 начинается в 0x0000002aca9dc170 поколении 1 начинается в 0x0000002aca964f80 поколении 2 начинается в контексте выделения 0x0000002abe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002abe180000 0000002abe181000 0000002ae0aa0050 0x2291f050 (579989584) Большие старты объекта кучи в 0x0000002e56181000 сегменте начинает выделено размер 0000002e56180000 0000002e56181000 0000002e59677d00 0x34f6d00 (55536896) 0000002fa9c50000 0000002fa9c51000 0000002fa9e81490 0x230490 (2294928)

Размер кучи: Размер: 0x260461e0 (637821408) байт.

Куча 7 (0000002e9d105f30) поколение 0 начинается в 0x0000002b0c4fbaf0 поколении 1 начинается в 0x0000002b0c3da9f0 поколении 2 начинается в контексте выделения 0x0000002afe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002afe180000 0000002afe181000 0000002b20a14f38 0x22893f38 (579419960) Большие старты объекта кучи в 0x0000002e5a181000 сегменте начинает выделено размер 0000002e5a180000 0000002e5a181000 0000002e5d800950 0x367f950 (57145680) 0000002f5fc50000 0000002f5fc51000 0000002f62870dc8 0x2c1fdc8 (46267848)

Размер кучи: Размер: 0x28b33650 (682833488) байт.

Куча 8 (0000002e9d12b430) поколение 0 начинается в 0x0000002b4b8c6000 поколении 1 начинается в 0x0000002b4b8baab0 поколении 2 начинается в контексте выделения 0x0000002b3e181000 эфемерного сегмента: нет сегмент начинают распределенного размеру 0000002b3e180000 0000002b3e181000 0000002b659eac80 0x27869c80 (663133312) Крупных запуски объекта кучи в 0x0000002e5e181000 сегменте начинают распределенный размера 0000002e5e180000 0000002e5e181000 0000002e608d1790 0x2750790 (41224080) 0000002f8fc50000 0000002f8fc51000 0000002f913efcc8 0x179ecc8 (24767688)

Размер кучи: Размер: 0x2b7590d8 (729125080) байт.

Куча 9 (0000002e9d130cc0) поколение 0 начинается в 0x0000002b8e3bea38 поколении 1 начинается в 0x0000002b8e27c968 поколении 2 начинается в контексте выделения 0x0000002b7e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002b7e180000 0000002b7e181000 0000002b8e404a50 0x10283a50 (271071824) Большие старты объекта кучи в 0x0000002e62181000 сегменте начинает выделено размер 0000002e62180000 0000002e62181000 0000002e66069d50 0x3ee8d50 (65965392) 0000002f4a420000 0000002f4a421000 0000002f4cf3e4d0 0x2b1d4d0 (45208784)

Размер кучи: Размер: 0x16c89c70 (382246000) байт.

Куча 10 (0000002e9d133f80) поколение 0 начинается в 0x0000002bcd04ba08 поколении 1 начинается в 0x0000002bccfa8980 поколении 2 начинается в контексте выделения 0x0000002bbe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002bbe180000 0000002bbe181000 0000002bcd220eb0 0xf09feb0 (252313264) Большие старты объекта кучи в 0x0000002e66181000 сегменте начинает выделено размер 0000002e66180000 0000002e66181000 0000002e691d6a10 0x3055a10 (50682384) 0000002fc9c50000 0000002fc9c51000 0000002fcc1adc78 0x255cc78 (39177336) 0000002f7dc50000 0000002f7dc51000 0000002f80dc7c68 0x3176c68 (51866728)

Размер кучи: Размер: 0x177c91a0 (394039712) байт.

Куча 11 (0000002e9d136fb0) поколение 0 начинается в 0x0000002c0cb208a0 поколении 1 начинается в 0x0000002c0c9d8c60 поколении 2 начинается в контексте выделения 0x0000002bfe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002bfe180000 0000002bfe181000 0000002c0d542f38 0xf3c1f38 (255598392) Большие старты объекта кучи в 0x0000002e6a181000 сегменте начинает выделено размер 0000002e6a180000 0000002e6a181000 0000002e6bab24f0 0x19314f0 (26416368) 0000002f79c50000 0000002f79c51000 0000002f7d5d6700 0x3985700 (60315392)

Размер кучи: Размер: 0x14678b28 (342330152) байт.

Куча 12 (0000002e9d139e30) поколение 0 начинается в 0x0000002c4e14ca58 поколении 1 начинается в 0x0000002c4e0f62f8 поколении 2 начинается в контексте выделения 0x0000002c3e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002c3e180000 0000002c3e181000 0000002c4e27c4b8 0x100fb4b8 (269464760) Большие старты объекта кучи в 0x0000002e6e181000 сегменте начинает выделено размер 0000002e6e180000 0000002e6e181000 0000002e6eac4528 0x943528 (9712936) 0000002efbb90000 0000002efbb91000 0000002effaa5750 0x3f14750 (66144080) 0000002fd1c50000 0000002fd1c51000 0000002fd2f887c0 0x13377c0 (20150208)

Размер кучи: Размер: 0x15c8a8f0 (365471984) байт.

Куча 13 (0000002e9d13de20) поколение 0 начинается в 0x0000002c8bf4cfc0 поколении 1 начинается в 0x0000002c8be39ba0 поколении 2 начинается в контексте выделения 0x0000002c7e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002c7e180000 0000002c7e181000 0000002c92e857a0 0x14d047a0 (349194144) Большие старты объекта кучи в 0x0000002e72181000 сегменте начинает выделено размер 0000002e72180000 0000002e72181000 0000002e7617e498 0x3ffd498 (67097752) 0000002fcdc50000 0000002fcdc51000 0000002fcf4abb08 0x185ab08 (25537288)

Размер кучи: Размер: 0x1a55c740 (441829184) байт.

Куча 14 (0000002e9d1410e0) поколение 0 начинается в 0x0000002ccc867be0 поколении 1 начинается в 0x0000002ccc845b18 поколении 2 начинается в контексте выделения 0x0000002cbe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002cbe180000 0000002cbe181000 0000002ccc917828 0xe796828 (242837544) Большие старты объекта кучи в 0x0000002e76181000 сегменте начинает выделено размер 0000002e76180000 0000002e76181000 0000002e7973ff48 0x35bef48 (56356680) 0000002f63c50000 0000002f63c51000 0000002f6762ff70 0x39def70 (60682096) 0000002f9fc50000 0000002f9fc51000 0000002fa419af50 0x4549f50 (72654672)

Размер кучи: Размер: 0x19c7e630 (432530992) байт.

Куча 15 (0000002e9d144c30) поколение 0 начинается в 0x0000002d0d4df148 поколении 1 начинается в 0x0000002d0d093900 поколении 2 начинается в контексте выделения 0x0000002cfe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002cfe180000 0000002cfe181000 0000002d0d55d160 0xf3dc160 (255705440) Большие старты объекта кучи в 0x0000002e7a181000 сегменте начинает выделено размер 0000002e7a180000 0000002e7a181000 0000002e7d4b10d8 0x33300d8 (53674200) 0000002f05b90000 0000002f05b91000 0000002f08104950 0x2573950 (39270736)

Размер кучи: Размер: 0x14c7fb88 (348650376) байт.

Куча 16 (0000002e9d149fa0) поколение 0 начинается в 0x0000002d4cebbc98 поколении 1 начинается в 0x0000002d4ce31670 поколении 2 начинается в контексте выделения 0x0000002d3e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002d3e180000 0000002d3e181000 0000002d4cf4fac8 0xedceac8 (249359048) Большие старты объекта кучи в 0x0000002e7e181000 сегменте начинает выделено размер 0000002e7e180000 0000002e7e181000 0000002e809b3508 0x2832508 (42149128) 0000002f4fc50000 0000002f4fc51000 0000002f50ab68b0 0xe658b0 (15095984)

Размер кучи: Размер: 0x12466880 (306604160) байт.

Куча 17 (0000002e9d5d39b0) поколение 0 начинается в 0x0000002d8eb9ffc0 поколении 1 начинается в 0x0000002d8eadcd88 поколении 2 начинается в контексте выделения 0x0000002d7e181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002d7e180000 0000002d7e181000 0000002d8ebebfd8 0x10a6afd8 (279359448) Большие старты объекта кучи в 0x0000002e82181000 сегменте начинает выделено размер 0000002e82180000 0000002e82181000 0000002e8535c7b0 0x31db7b0 (52279216) 0000002f85c50000 0000002f85c51000 0000002f8b727360 0x5ad6360 (95249248)

Размер кучи: Размер: 0x1971cae8 (426887912) байт.

Куча 18 (0000002e9d5d69c0) поколение 0 начинается в 0x0000002dcc480040 поколении 1 начинается в 0x0000002dcc4749b8 поколении 2 начинается в контексте выделения 0x0000002dbe181000 эфемерного сегмента: нет сегмент начинают распределенного размеру 0000002dbe180000 0000002dbe181000 0000002dcc4da058 0xe359058 (238391384) Крупных запуски объекта кучи в 0x0000002e86181000 сегменте начинают распределенный размер 0000002e86180000 0000002e86181000 0000002e88e4a638 0x2cc9638 (46962232) 0000002f53c50000 0000002f53c51000 0000002f5608e6d0 0x243d6d0 (38000336) 0000002f8bc50000 0000002f8bc51000 0000002f8e3a7920 0x2756920 (41249056)

Размер кучи: Размер: 0x15bb6680 (364603008) байт.

Куча 19 (0000002e9d5d09a0) поколение 0 начинается в 0x0000002e0ec60b98 поколении 1 начинается в 0x0000002e0ebf5790 поколении 2 начинается в контексте выделения 0x0000002dfe181000 эфемерного сегмента: нет сегмент начинают распределенный размером 0000002dfe180000 0000002dfe181000 0000002e0ecc09c8 0x10b3f9c8 (280230344) Большие старты объекта кучи в 0x0000002e8a181000 сегменте начинает выделено размер 0000002e8a180000 0000002e8a181000 0000002e8ccc84f0 0x2b474f0 (45380848) 0000002f6fc50000 0000002f6fc51000 0000002f706390c0 0x9e80c0 (10387648)

Размер кучи: Размер: 0x1406ef78 (335998840) байт.

Размер кучи GC: Размер: 0x1fc193f68 (8524480360) байт.


person Sky Line    schedule 16.02.2018    source источник


Ответы (1)


!sosex.dumpgen 2 или !dumpgen 3 сделают свое дело. Gen3, очевидно, неправильно, но это был простой способ сделать LOH. Вы также можете позвонить !sosex.dumpgen loh. Я считаю, что! Sos.dumpheap теперь также имеет параметр для генерации.

person Steve Johnson    schedule 16.02.2018
comment
Спасибо, Стив, извини за уточняющий вопрос, я печатаю - person Sky Line; 17.02.2018
comment
Спасибо, Стивен, я попробовал это: 000 ›! Dumpgen 3 Не найден экспортный dumpgen Я могу подтвердить, что sos загружен, но dumpgen не распознается. Есть ли какие-то предварительные требования, которые мне нужно сделать перед этим? Спасибо - person Sky Line; 17.02.2018
comment
@SkyLine: Стив Джонсон - автор sosex ‹- прочтите информацию о теге - person Thomas Weller; 17.02.2018
comment
офигенно :) Нахожу инструкцию и получаю sosex работает, это здорово, любопытно, кто-нибудь знает, как по sos поискать? наш отладочный env не имеет встроенного sosex по умолчанию - person Sky Line; 17.02.2018
comment
Отлично работает, спасибо @ Стив Джонсон и Томас Веллер - person Sky Line; 17.02.2018
comment
Именно то, что я искал. На мои последние 10 вопросов о windbg ответили комментарии Стива Джонсона и @Thomas Weller (опубликованные в течение последних многих лет). Спасибо вам, ребята!! :-) - person Jeffrey LeCours; 31.03.2020
comment
@JeffreyLeCours: Я рад, что смог помочь и отдать дань уважения сообществу, у которого я так многому научился. WinDbg хорош, но не совсем самоочевиден. - person Thomas Weller; 31.03.2020