Друзья, подскажите от чего зависит потребление оперативки у скомпилированного exe , у меня в районе 650 мб , процесор в районе 1-2 процента, как можно снизить потребление, скрипт особо ничего не делает, делает поиск картинок в цикле в районе 10 шт, с паузами.
Может из за external или define , я просто пока не понимаю.. или может это норма....
Забыл сказать что есть так же диалог, но я не думаю что он съедает 600 мб..
Подскажите куда рыть, в каком направлении.
1. ivantu - 21 Ноября, 2020 - 02:29:24 - перейти к сообщению
2. ivantu - 22 Ноября, 2020 - 02:42:03 - перейти к сообщению
самое интересное , что через час работы скрипта потребление оперативки с 640 упало до 31мб, само по себе... почему так происходит? Как уменьшить потребление при старте, а не через час.
3. Zireael - 22 Ноября, 2020 - 02:47:19 - перейти к сообщению
Цитата:
что через час работы скрипта потребление оперативки с 640 упало до 31мб, само по себе... почему так происходит?
В файле подкачки остальное.
4. ivantu - 22 Ноября, 2020 - 03:30:05 - перейти к сообщению
Zireael пишет:
В файле подкачки остальное.
Как можно снизить потребление? Скрипт на паузе , ничего не делая так же ест 600+ мб.
Т.е. при старте хапнул 600 мб и кушает а куда, для чего, я не понял пока...
5. ivantu - 22 Ноября, 2020 - 10:31:21 - перейти к сообщению
Перелопатив весь код, понял что переменные вот такого типа кушают много оперативки при объявлении.
Но как быть, если оно мне нужно.... (
CODE:
int image_unsort[20][850][595];
int uns_cord[20][4];
int image_slots[13][850][595];
int slot_cord[13][4];
int image_unsort[20][850][595];
int uns_cord[20][4];
int image_slots[13][850][595];
int slot_cord[13][4];
Но как быть, если оно мне нужно.... (
6. Zireael - 22 Ноября, 2020 - 10:38:28 - перейти к сообщению
Цитата:
int image_unsort[20][850][595];
40 мб. Зачем нужен массив на 20 картинок размером 850*595?
7. ivantu - 22 Ноября, 2020 - 10:40:50 - перейти к сообщению
CODE:
function LoadImages() {
uns_cord[0][0]=11; uns_cord[0][1]=5; uns_cord[0][2]=17; uns_cord[0][3]=6; //
uns_cord[1][0]=3; uns_cord[1][1]=1; uns_cord[1][2]=16; uns_cord[1][3]=2; //
uns_cord[2][0]=3; uns_cord[2][1]=3; uns_cord[2][2]=4; uns_cord[2][3]=21; //
uns_cord[3][0]=5; uns_cord[3][1]=3; uns_cord[3][2]=8; uns_cord[3][3]=7; //
uns_cord[4][0]=11; uns_cord[4][1]=3; uns_cord[4][2]=17; uns_cord[4][3]=4; //
uns_cord[5][0]=5; uns_cord[5][1]=8; uns_cord[5][2]=6; uns_cord[5][3]=19; //
uns_cord[6][0]=7; uns_cord[6][1]=8; uns_cord[6][2]=21; uns_cord[6][3]=19; //
uns_cord[7][0]=5; uns_cord[7][1]=20; uns_cord[7][2]=7; uns_cord[7][3]=22; //
uns_cord[8][0]=8; uns_cord[8][1]=20; uns_cord[8][2]=12; uns_cord[8][3]=24; //
uns_cord[9][0]=1; uns_cord[9][1]=29; uns_cord[9][2]=17; uns_cord[9][3]=49; //
uns_cord[10][0]=1; uns_cord[10][1]=50; uns_cord[10][2]=11; uns_cord[10][3]=68; //
uns_cord[11][0]=1; uns_cord[11][1]=69; uns_cord[11][2]=16; uns_cord[11][3]=87; //
uns_cord[12][0]=130; uns_cord[12][1]=1; uns_cord[12][2]=146; uns_cord[12][3]=21; //
uns_cord[13][0]=147; uns_cord[13][1]=1; uns_cord[13][2]=148; uns_cord[13][3]=16; //
uns_cord[14][0]=149; uns_cord[14][1]=1; uns_cord[14][2]=154; uns_cord[14][3]=10; //
uns_cord[15][0]=155; uns_cord[15][1]=1; uns_cord[15][2]=156; uns_cord[15][3]=11; //
uns_cord[16][0]=157; uns_cord[16][1]=1; uns_cord[16][2]=168; uns_cord[16][3]=12; //
uns_cord[17][0]=130; uns_cord[17][1]=22; uns_cord[17][2]=131; uns_cord[17][3]=31; //
uns_cord[18][0]=132; uns_cord[18][1]=22; uns_cord[18][2]=133; uns_cord[18][3]=33; //
uns_cord[19][0]=169; uns_cord[19][1]=1; uns_cord[19][2]=170; uns_cord[19][3]=14; //
for(i=0; i<sizearray(image_unsort); i++){ // загрузка картинок в трехмерный массив
load_image2(address(#buf[0]), address(#image_unsort[i][0][0]), sizearray(image_unsort[]), sizearray(image_unsort[][]), uns_cord[i][0], uns_cord[i][1], uns_cord[i][2], uns_cord[i][3]);
}
}
uns_cord[0][0]=11; uns_cord[0][1]=5; uns_cord[0][2]=17; uns_cord[0][3]=6; //
uns_cord[1][0]=3; uns_cord[1][1]=1; uns_cord[1][2]=16; uns_cord[1][3]=2; //
uns_cord[2][0]=3; uns_cord[2][1]=3; uns_cord[2][2]=4; uns_cord[2][3]=21; //
uns_cord[3][0]=5; uns_cord[3][1]=3; uns_cord[3][2]=8; uns_cord[3][3]=7; //
uns_cord[4][0]=11; uns_cord[4][1]=3; uns_cord[4][2]=17; uns_cord[4][3]=4; //
uns_cord[5][0]=5; uns_cord[5][1]=8; uns_cord[5][2]=6; uns_cord[5][3]=19; //
uns_cord[6][0]=7; uns_cord[6][1]=8; uns_cord[6][2]=21; uns_cord[6][3]=19; //
uns_cord[7][0]=5; uns_cord[7][1]=20; uns_cord[7][2]=7; uns_cord[7][3]=22; //
uns_cord[8][0]=8; uns_cord[8][1]=20; uns_cord[8][2]=12; uns_cord[8][3]=24; //
uns_cord[9][0]=1; uns_cord[9][1]=29; uns_cord[9][2]=17; uns_cord[9][3]=49; //
uns_cord[10][0]=1; uns_cord[10][1]=50; uns_cord[10][2]=11; uns_cord[10][3]=68; //
uns_cord[11][0]=1; uns_cord[11][1]=69; uns_cord[11][2]=16; uns_cord[11][3]=87; //
uns_cord[12][0]=130; uns_cord[12][1]=1; uns_cord[12][2]=146; uns_cord[12][3]=21; //
uns_cord[13][0]=147; uns_cord[13][1]=1; uns_cord[13][2]=148; uns_cord[13][3]=16; //
uns_cord[14][0]=149; uns_cord[14][1]=1; uns_cord[14][2]=154; uns_cord[14][3]=10; //
uns_cord[15][0]=155; uns_cord[15][1]=1; uns_cord[15][2]=156; uns_cord[15][3]=11; //
uns_cord[16][0]=157; uns_cord[16][1]=1; uns_cord[16][2]=168; uns_cord[16][3]=12; //
uns_cord[17][0]=130; uns_cord[17][1]=22; uns_cord[17][2]=131; uns_cord[17][3]=31; //
uns_cord[18][0]=132; uns_cord[18][1]=22; uns_cord[18][2]=133; uns_cord[18][3]=33; //
uns_cord[19][0]=169; uns_cord[19][1]=1; uns_cord[19][2]=170; uns_cord[19][3]=14; //
for(i=0; i<sizearray(image_unsort); i++){ // загрузка картинок в трехмерный массив
load_image2(address(#buf[0]), address(#image_unsort[i][0][0]), sizearray(image_unsort[]), sizearray(image_unsort[][]), uns_cord[i][0], uns_cord[i][1], uns_cord[i][2], uns_cord[i][3]);
}
}
8. Zireael - 22 Ноября, 2020 - 10:49:14 - перейти к сообщению
Картинки маленькие, зачем 850*595?
9. ivantu - 22 Ноября, 2020 - 10:51:33 - перейти к сообщению
Zireael пишет:
Картинки маленькие, зачем 850*595?
Я пробовал делать + 10px от размера самой большой картинки, но уже не работает, а если задавать размер картинки из которой мы берем т.е. большой то работает.
(Добавление)
Все вопрос решен, спасибо Zeriael