0 / 0 / 0
Регистрация: 31.08.2013
Сообщений: 19
1

Как вернуть OS освобожденную программой память? - дубль темы из раздела Fortran

02.09.2013, 05:04. Показов 1157. Ответов 3
Метки нет (Все метки)

В какой-то момент времени моя программа динамически размещает в памяти большой объем данных ~5 Гб с помощью оператора allocate. Спустя несколько минут она освобождает память оператором deallocate. Однако OS по-прежнему считает, что моя программа занимает эти 5 Гб памяти. Что надо сделать, чтобы OS увидела освобождение памяти?
Язык: Fortran90
IDE: Eclipse Kepler
OS: RedHat 6

P.S. Я создал этот дубль в надежде, что хотя бы в этой теме кто-нибудь сможет ответить на мой вопрос. В разделе Fortran мне, к сожалению, никто не смог ничего подсказать.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.09.2013, 05:04
Ответы с готовыми решениями:

Как вернуть OS освобожденную программой память?
В какой-то момент времени моя программа динамически размещает в памяти большой объем данных ~5 Гб с...

дубль темы...
удалите плиз

Темы из раздела С++ для экспертов и другие интересные темы
Раздел закрыт и темы перенеслись в раздел С++. Здесь находится список тем, которые были в разделе,...

Как вернуть память wi-fi роутера, как вернуть родную прошивку
Здравствуйте подскажите мне пожалуйста! у меня имеется N ADSL2+ Modem Router Netis DL4323U с...

3
36 / 38 / 7
Регистрация: 01.06.2011
Сообщений: 237
02.09.2013, 10:07 2
Попробуйте работать через временные файлы.
0
1158 / 897 / 357
Регистрация: 02.09.2012
Сообщений: 2,740
02.09.2013, 13:45 3
Цитата Сообщение от arte-semaki Посмотреть сообщение
Однако OS по-прежнему считает, что моя программа занимает эти 5 Гб памяти.
Не могли бы Вы подробнее описать, как вы это определили.

Вот нагуглился мануал, в котором рассказывает про ALLOCATE/DEALLOCATE... еще там описывается жизнь указателей и много чего сопутствующего. Честно говоря, совсем не знаю фортрана, да и мануал написан для Cray Но может быть у вас где-то остаются ссылки на выделенный массив (в виде указателей), что и не дает удалить выделенную память.

Попробуйте сделать тестовый пример, где будет только ALLOCATE/DEALLOCATE 5 гигов данных и посмотреть, что видит OS.
0
0 / 0 / 0
Регистрация: 31.08.2013
Сообщений: 19
03.09.2013, 03:19  [ТС] 4
Цитата Сообщение от grgdvo Посмотреть сообщение
Не могли бы Вы подробнее описать, как вы это определили.
Когда данные размещаются в памяти, System Monitor показывает рост занимаемой программой памяти. Однако, при удалении данных из памяти размер программы не уменьшается (уменьшение в несколько Гб невозможно не заметить).
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.09.2013, 03:19
Помогаю со студенческими работами здесь

Как вернуть темы на Windows 7
Проблема в том что я не могу востановить цветные панели они теперь у меня стандартного образца, все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru