Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.01.16;
Скачать: [xml.tar.bz2];

Вниз

Как выделить невыгружаемую память?   Найти похожие ветки 

 
Hanson3003   (2002-11-26 09:31) [0]

Спасите. Срочно.

На компе 1 ГГб, прога просит 850.
Винды сталкивают мои массивы в файл подкачки, что сильно замедляет работу.
Отключение файла подкачки приводит к Exception.

Спасибо.


 
Игорь Шевченко   (2002-11-26 09:41) [1]

А никак ее не выделить :-)
А программу переписать...


 
Morfein   (2002-11-26 10:13) [2]

Функция SetProcessWorkingSetSize.
Работает только под NT, для использования треба привилегию SE_DEBUG_NAME и SE_INC_BASE_PRIORITY_NAME.
Задаёт количество памяти для процесса, которое всегда будет находится в RAM и не будет выгружаться на винт.



 
Morfein   (2002-11-26 10:26) [3]

The VirtualLock function enables a process to lock one or more pages of committed memory into physical memory (RAM), preventing the system from swapping the pages out to the paging file. It can be used to ensure that critical data is accessible without disk access. Locking pages into memory is dangerous because it restricts the system"s ability to manage memory. Excessive use of VirtualLock can degrade system performance by causing executable code to be swapped out to the paging file.


 
Hanson3003   (2002-11-26 11:56) [4]

SetProcessWorkingSetSize не сработал.
Отрабатывает нормально. Значение устанавливает (проверяю через GetProcessWorkingSetSize), но память добавляет не реально, а к файлу подкачки


 
Hanson3003   (2002-11-26 11:59) [5]

VirtualLock имеет ограниченное действие по размеру выделяемой памяти


 
Игорь Шевченко   (2002-11-26 12:12) [6]


> и не будет выгружаться на винт.


Будет :-)


 
Morfein   (2002-11-26 20:44) [7]

что-то сомнительно, что функция имеет ограничение...
А насчёт того, что говорит Игорь Шевченко, не знаю, сам не пробовал...


 
esu   (2002-11-26 22:19) [8]


> На компе 1 ГГб, прога просит 850.

Поставить еще 1Гб памяти. Потом подумать как бы немножко оптимизировать потребление памяти...


 
Hanson3003   (2002-11-27 12:10) [9]

Памяти добавить не могу в связи с аппаратными ограничениями (этот P4 поддерживает только 2 слота).
Программа не оптимизируется - сжато до невозможности.


 
Игорь Шевченко   (2002-11-27 12:41) [10]

Тогда только терпеть. Или подробнее про программу рассказывать.


 
Hanson3003   (2002-11-29 09:42) [11]

Вроде победил аж двумя спсобами :
- выделением и блокировкой памяти в драйвере;
- переходом на Kylix.



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.01.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.01 c
7-49336
KDS
2002-11-04 17:14
2003.01.16
Win2000 Server Shutdown


1-49116
jen_bond
2003-01-04 20:14
2003.01.16
ini файла в сетевом варианте


14-49308
Step[B.M.]
2002-12-27 21:02
2003.01.16
Количевство программистов на языках высокого уровня уменьшается..


14-49268
race1
2002-12-27 10:46
2003.01.16
косяк


14-49280
sndanil
2002-12-26 16:51
2003.01.16
DCU





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский