Утечка памяти — Microsoft Flight Simulator 2004 (и предыдущие версии)

Здравствуйте!
Столкнулся с тем, что при смене времени суток (при переходе от дня к ночи, в сумерки) начинает со страшной силой утекать память (оперативная) в некоторых сценариях с лендклассами. В частности в сценарии Пскова http://www.avsim.su/…mments&hl=Псков  Как и говорил в комментариях Михаил Степанов, соответствующие файлы подключил отдельным сценарием без папки текстур. Тоже самое наблюдалось и в сценарии Иваново http://www.avsim.su/…ents&hl=Иваново .
При отключении папок с лендклассами проблема исчезала, память в сумерки переставала утекать. Папки текстур в папке со сценарием лендклассов нет, изменение приоритета и положения в библиотеке так же результатов не дали.
Подчеркну, что проблема возникает только при переходе ото дня к ночи, днём, или ночью с памятью всё нормально.
Подскажите пожалуйста, в каком направлении начать копать?

Сообщение отредактировал Сокол: 04 October 2012 — 14:54

Ответов: 19

для полноты картины…указали бы количество вашей оперативной памяти и что происходит с симом, когда память вашу жрут переходы эти!? Сим вылетает или нет? А в диспетчере задач смотрели…кто-там вашу память чавкает-какой процесс?

А что тут думать.
У меня было 2 проблемы:

1) Тормоза в длительных перелётах (свыше 3х-4х часов) — это оперативная и виртуальная память
Нужно добавить «виртуальной памяти», конечно.

2) Ну и вылеты, соответственно. — Это в режиме «фулскрин», попадание по правому элементу меню «Alt»/дополнения/.
Эту проблему решил тем, что не «попадаю» по этому элементу меню + повысил обороты кулера на видеокарте и на процессоре.

У меня вот так. Работает теперь стабильно :umnik2:
*Могут иметь место и другие соображения.

Сообщение отредактировал Anton_G: 04 October 2012 — 15:49

Zorgair (04 October 2012 — 15:36) писал:

для полноты картины…указали бы количество вашей оперативной памяти и что происходит с симом, когда память вашу жрут переходы эти!? Сим вылетает или нет? А в диспетчере задач смотрели…кто-там вашу память чавкает-какой процесс?

ОЗУ у меня 3_ГБ. На 32-битной XP больше 3,25 ставить смысла нет. Кушает процесс Fs9. Что вполне логично.

Anton_G (04 October 2012 — 15:47) писал:

А что тут думать.
У меня было 2 проблемы:

1) Тормоза в длительных перелётах (свыше 3х-4х часов) — это оперативная и виртуальная память
Нужно добавить «виртуальной памяти», конечно.

2) Ну и вылеты, соответственно. — Это в режиме «фулскрин», попадание по правому элементу меню «Alt»/дополнения/.
Эту проблему решил тем, что не «попадаю» по этому элементу меню + повысил обороты кулера на видеокарте и на процессоре.

У меня вот так. Работает теперь стабильно :umnik2:
*Могут иметь место и другие соображения.

Дело в том, что моя проблема возникает только в конкретных сценариях и в конкретных условиях (в конкретное время).

Segelflieger (04 October 2012 — 20:41) писал:

По описанию симпотомов в этих сценариях присутствуют ночные текстуры, которые подгужаются в сумерки. По всей видимости они и вызывают «съедание» памяти. Если такие текстуры и впрямь есть, то был бы смысл «облегчить» их.

Да, тоже вариант

По описанию симпотомов в этих сценариях присутствуют ночные текстуры, которые подгужаются в сумерки. По всей видимости они и вызывают «съедание» памяти. Если такие текстуры и впрямь есть, то был бы смысл «облегчить» их.

Похоже на то…
Скажите, а может кто нибудь, при наличие времени и желания, как нибудь протестировать эти сценарии на своём симе при схожих условиях?

Посмотрите пожалуйста у себя, как у вас поведут себя сценарии.
Как мне кажется, тут может быть дело в том, что bgl-ки сценариев ленд-классов берут текстуры из папки «..Flight SimulatorSceneryWorldtexture», а там нужный файл может быть повреждён, или отсутствовать, или ещё что… Я сценарии переустанавливал — не помогло :(
Сокол, у вас кажется с Ивановской сценой сие наблюдалось. Так вот: в сезонных и помнится ночных (всех кроме SU) текстурах лендкласса (тех,  которые отправляем в Worldtexture) в оригинале отсутствовали альфы. Я их вручную переносил из текстур SU. Может в этом причина.
Могу вам куда-нибудь архив с исправленными закинуть для проверки.

Сообщение отредактировал Dimka: 06 October 2012 — 04:57

К сожалению проблема так и не решена :(
Скажите, вот эти параметры из fs9.cfg никак не могут повлиять:

[TERRAIN]
TERRAIN_ERROR_FACTOR=100.000000
TERRAIN_MIN_DEM_AREA=10.000000
TERRAIN_MAX_DEM_AREA=100.000000
TERRAIN_MAX_VERTEX_LEVEL=21
TERRAIN_TEXTURE_SIZE_EXP=8
TERRAIN_AUTOGEN_DENSITY=5
TERRAIN_USE_GRADIENT_MAP=1
TERRAIN_EXTENDED_TEXTURES=1
TERRAIN_DEFAULT_RADIUS=9.500000
TERRAIN_EXTENDED_RADIUS=9.500000
TERRAIN_EXTENDED_LEVELS=1
[SCENERY]
IMAGE_COMPLEXITY=5
DYNAMIC_SCENERY=1
DYN_SCN_DENSITY=5
DAWN_DUSK_SMOOTHING=1
SUNGLARE=0

?

TERRAIN_MAX_VERTEX_LEVEL=21

попробуйте 19, попытка не пытка, хотя вряд ли.

hrjushkin (13 October 2012 — 19:04) писал:

Тоже заинтересовал этот вопрос. Тест — загружаюсь днем (15:20), ставлю x32 ускорение и жду примерно до 17:30.

1) Иваново, с 425Мб -> 670Мб
2) а/д Северка для проверки: 424Мб -> 470Мб

И в чем проблема? Это не утечка.

love3k (13 October 2012 — 19:07) писал:

И в чем проблема? Это не утечка.

Однако же непонятно, что же так (практически в 6 раз) быстрее «сжирает» память ?

hrjushkin (13 October 2012 — 19:14) писал:

Однако же непонятно, что же так (практически в 6 раз) быстрее «сжирает» память ?

Сейчас проведу ваш опыт для интереса.
Пусть сжирает, лишь бы не вылетал и не тупил. Причем ждет не так много. А почему сжирает — это надо углубляться в работу сима на уровне кода.

1. Загрузился в Иваново 15.20 — 408 Мб.
2. Ускорение х32, время 17.20 — 467 Мб.
3. Время 19.20 — 488 Мб.
4. Вывод — все нормально.

Сообщение отредактировал love3k: 13 October 2012 — 19:27

love3k (13 October 2012 — 19:16) писал:

Сейчас проведу ваш опыт для интереса.
Пусть сжирает, лишь бы не вылетал и не тупил. Причем ждет не так много. А почему сжирает — это надо углубляться в работу сима на уровне кода.

1. Загрузился в Иваново 15.20 — 408 Мб.
2. Ускорение х32, время 17.20 — 467 Мб.
3. Время 19.20 — 488 Мб.
4. Вывод — все нормально.

Нет, вывод скорее всего: у вас настроен сим так, что у вас все нормально :) Насколько я понял, проблема увеличения памяти (по крайней мере в сцене Иваново) при стандартных настройках сима — есть.

Пробовал. Не повлияло :(
Подскажите пожалуйста, на что влияют выделенные пункты:

[GRAPHICS]
FULL_SCREEN=1
PERFORMANCE_MODE=0
DEF_PERF_MODE=7
TEXT_SCROLL=1
AUTO_LOD=0
DETAIL_TEXTURE=1
WATER_EFFECTS=2
TERRAIN_USE_VECTOR_MAP=1
TERRAIN_USE_VECTOR_OBJECTS=1
EFFECTS_QUALITY=2
GROUND_SHADOWS=1
SMOOTH_VIEW=1
IMAGE_SMOOTHING=1
TEXTURE_MAX_LOAD=1024
COCKPIT_HIGH_LOD=1
AIRCRAFT_SHADOWS=1
LANDING_LIGHTS=1
IMAGE_QUALITY=0
TEXTURE_BLDG=1
TEXTURE_GND=1
TEXTURE_WATER=1
AIRCRAFT_TEXTURE=2
SEE_SELF=1
TEXTURE_QUALITY=3
LOD_TARGET_FPS=42
NUM_LIGHTS=8

[DISPLAY.Device.NVIDIA GeForce GT 220.0]
Mode=1024x768x32
TextureAGP=0
TriLinear=1
MipBias=8
[DISPLAY]
UPPER_FRAMERATE_LIMIT=0
TEXTURE_BANDWIDTH_MULT=300
TextureMaxLoad=10
[TERRAIN]
TERRAIN_ERROR_FACTOR=100.000000
TERRAIN_MIN_DEM_AREA=10.000000
TERRAIN_MAX_DEM_AREA=100.000000
TERRAIN_MAX_VERTEX_LEVEL=19
TERRAIN_TEXTURE_SIZE_EXP=8
TERRAIN_AUTOGEN_DENSITY=5
TERRAIN_USE_GRADIENT_MAP=1
TERRAIN_EXTENDED_TEXTURES=1
TERRAIN_DEFAULT_RADIUS=9.900000
TERRAIN_EXTENDED_RADIUS=9.900000
TERRAIN_EXTENDED_LEVELS=1
[SCENERY]
IMAGE_COMPLEXITY=5
DYNAMIC_SCENERY=1
DYN_SCN_DENSITY=5
DAWN_DUSK_SMOOTHING=1
SUNGLARE=0
LENSFLARE=1

?

И вообще, всё ли у меня правильно поставлено, может есть ошибки?

Сообщение отредактировал Сокол: 13 October 2012 — 17:43

Строку TextureMaxLoad=10 вообще убрать. Как оказалось очень влияет на плавность движения картинки. Как она влияет на память не знаю, может и повлияет, ведь микрофризы от чего-то происходят, как оказалось эта строка их создаёт.
А как вы наблюдаете утечку?  Загрузился в Пскове днем, память fs9 — 443Мб, поменял на сумерки — 488Мб.

Прошло 50 мин — память 528 Мб.

Сообщение отредактировал love3k: 13 October 2012 — 18:52

Тоже заинтересовал этот вопрос. Тест — загружаюсь в 15:20, ставлю x32 ускорение и жду примерно до 17:30.

1) Иваново, с 425Мб -> 670Мб ( + ~60%)
2) а/д Северка для проверки: 424Мб -> 470Мб ( + ~11%)
3) UWGG Стригино: 366Мб -> 414Мб( + ~13%)

Что интресно, в Иваново память растет постоянно, примерно щелкало 1 Мб в секунду, в то время как остальные сцены — небольшими скачками через определенное время. Стригино вообще на 414 практически остановилось.

Сообщение отредактировал hrjushkin: 13 October 2012 — 19:12