powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Что-то с ПАМЯТЬЮ моей стало
25 сообщений из 33, страница 1 из 2
Что-то с ПАМЯТЬЮ моей стало
    #33476308
Rumata Estorskiy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IBM Informix Dynamic Server Version 9.40.TC7 -- On-Line -- Up 01:47:39 -- 1334720 Kbytes
Windows 2000 Server
Реальной оперативки 4 Гига.
Дык никак я не разберусь с параметрами в онконфиге. При указанных ниже параметрах (взятых в общем-то с потолка) информикс отводит 1334720 Kb (Ну сами видите). Далее при интенсивной загрузке (около 130 юзеров) он начинает подгружать новые сегменты (Dynamically allocated new virtual shared memory segment (size 32768KB)). И так до около 2-х Гиг, а дальше начинает ругаться, что памяти ему мало.

20:05:07 shmat: [ENOMEM][12]: out of available data space, check system memory parameters (e.g. MAXMEM).

20:05:07 out of virtual shared memory

20:05:08 Assert Failed: Condition Failed (Ignoring free of pool 'arc_21062' (0x2811020) in use by blkpool), In (mt_shm_free_pool)
20:05:08 IBM Informix Dynamic Server Version 9.40.TC7
20:05:08 Who: Session(21062, work@microsoft.com, 1952, 00000000)
Thread(65565, ontape, 0, 1)
File: mtshpool.c Line: 3127
20:05:08 Action: Please notify IBM Informix Technical Support.
20:05:08 stack trace for pid 836 written to C:\Informix\tmp\af.4052554
20:05:08 See Also: C:\Informix\tmp\af.4052554, shmem.4052554.0
20:05:10 Releasing server from system block
20:10:37 Condition Failed (Ignoring free of pool 'arc_21062' (0x2811020) in use by blkpool), In (mt_shm_free_pool)
20:10:54 Checkpoint Completed: duration was 12 seconds.
20:10:54 Checkpoint loguniq 4967, logpos 0x49c018, timestamp: 0xf0debf6e

Перестарт информикса спасает дело. Всё опять возвращается на 1,3 Гига и пару недель память медленно растёт до 2Гиг и потом опять ругается.
Мне непонятно одно. У меня реально 4 Гига, а информикс выше 2-х Гиг брать не хочет. Что мне делать с параметрами, а то никак не могу в них разобраться?


ONCONFIG:
-----------
RESIDENT 1 # Forced residency flag (Yes = 1, No = 0)

LOCKS 100000 # Maximum number of locks
BUFFERS 200000 # Maximum number of shared buffers
NUMAIOVPS # Number of IO vps
PHYSBUFF 32 # Physical log buffer size (Kbytes)
LOGBUFF 32 # Logical log buffer size (Kbytes)
CLEANERS 2 # Number of buffer cleaner processes
SHMBASE 0xC000000L # Shared memory base address
SHMVIRTSIZE 500000 # initial virtual shared memory segment size
SHMADD 32768 # Size of new shared memory segments (Kbytes)
EXTSHMADD 32768 # Size of new extension shared memory segments (Kbytes)
SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL 300 # Check point interval (in sec)
LRUS 8 # Number of LRU queues
LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
TXTIMEOUT 300 # Transaction timeout (in sec)
STACKSIZE 64 # Stack size (Kbytes)
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476380
Rumata Estorskiy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочется добавить.

Пытался я поднять параметр
BUFFERS 300000 # Maximum number of shared buffers

В результате облом:
12:22:55 IBM Informix Dynamic Server Started.
12:22:58 Segment locked: addr=0xc000000, size=1279590400
12:22:58 Requested shared memory segment size rounded from 500000KB to 500032KB
12:22:58 shmat: [ENOMEM][12]: out of available data space, check system memory parameters (e.g. MAXMEM).
12:22:58 mt_shm_init: can't create virtual segment


Если ставлю параметр
SHMBASE 0x50000000 # Shared memory base address

то

IBM Informix Dynamic Server Version 9.40.TC7 -- On-Line -- Up 00:00:28 -- 1749760 Kbytes

Но тут я стремаюсь. Куда я залезу с таким параметром?
Как регулировать параметр SHMBASE, чтобы ненапартачить с памятью?
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476449
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata EstorskiyIBM Informix Dynamic Server Version 9.40.TC7 -- On-Line -- Up 01:47:39 -- 1334720 Kbytes
Windows 2000 Server
тут несколько аспектов и проблем.
Первая связана с ограничениями платформы и информикса.
Снечала нужно дать возможность самой Винде оперировать большим объемом (кстати, играет значение версия Windows 2000).
Для этого в в файле boot.ini нужна строка типа этой:
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Advanced Server" /fastdetect /3GB
Затем нужно Информиксу дать большие значения, которые уже зависят от того, куда больше нужна память - на буферный пул или на виртуальный сегмент для пользователей (см. ниже мои рекомендации).
И, наконец, у вас явно присутствет "утечка памяти", благодаря которой у вас и не освобождается память и с течением времени потребность в ней возрастает.
Этому легко помочь - просто периодически (например в планировщике заданий установи ночное (или периодическре) выполнение onmode -F
Rumata Estorskiy
BUFFERS 200000 # Maximum number of shared buffers
CLEANERS 2 # Number of buffer cleaner processes
SHMVIRTSIZE 500000 # initial virtual shared memory segment size
SHMADD 32768 # Size of new shared memory segments (Kbytes)
EXTSHMADD 32768 # Size of new extension shared memory segments LRUS 8 # Number of LRU queues
LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit

BUFFERS 400000 # Maximum number of shared buffers
Если есть необходимость, то сразу можно хапнуть 1,6Г для кэширования
(максимум 512000)

CLEANERS 2 # Number of buffer cleaner processes
Не вижу других данных, но для 130 пользователей, как мне кажется, двух очистителей маловато. Можно установить 4-6, но лучше показать onstat -u после пары часов интенсивной нагрузки.

SHMVIRTSIZE 500000 # initial virtual shared memory segment size
SHMADD 32768 # Size of new shared memory segments (Kbytes)
Если допсегменты выделяются часто, то необходимо увеличить это размер, хотя бы до 128000
LRUS 8 # Number of LRU queues
Даже для существующего кол-ва буферов это значение по уумолчанию никуда не годится - срочно увеличить до максимума 127

LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
Эти значения тоже , скорее всего, нужно регулировать, но для этого нужно посмотреть на длительности контрольных точек в период нагрузки.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476468
Фотография Тан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то 32-битный информикс не сможет взять 4 Гб. Почитайте
/topic/195829

И если вам не хватает виртуального раздела, не надо увеличивать буфера. Лучше проверьте, куда память расходуется, нет ли утечек
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476469
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy12:22:58 shmat: [ENOMEM][12]: out of available data space, check system memory parameters (e.g. MAXMEM).
12:22:58 mt_shm_init: can't create virtual segment
смотри выше о настройке самой Винды
Rumata Estorskiy
Если ставлю параметр
SHMBASE 0x50000000 # Shared memory base address
IBM Informix Dynamic Server Version 9.40.TC7 -- On-Line -- Up 00:00:28 -- 1749760 Kbytes
Но тут я стремаюсь. Куда я залезу с таким параметром?
Как регулировать параметр SHMBASE, чтобы ненапартачить с памятью?
Как минимум, знать, что и куда (по каким адресам) грузится в твоей ОС (можно промониторить спецутилитами).
И еще:
Q. LARGE MEMORY CONFIGURATIONS
-----------------------------------
As part of the support for encrypted data replication in 9.40, a new DLL
called libea32.dll is loaded at address 0x68000000. Large memory
configurations that were previously making use of the maximum possible
shared memory size of approximately 1.5 GB (assuming a default SHMBASE
setting of 0xC000000 and an upper limit determined by the System DLLs
which load at 0x70000000) might find that the maximum possible shared
memory size has been reduced by 128 Mb.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476686
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy
IBM Informix Dynamic Server Version 9.40.TC7 -- On-Line -- Up 01:47:39 -- 1334720 Kbytes
Windows 2000 Server
Реальной оперативки 4 Гига.
Дык никак я не разберусь с параметрами в онконфиге. При указанных ниже параметрах (взятых в общем-то с потолка) информикс отводит 1334720 Kb (Ну сами видите). Далее при интенсивной загрузке (около 130 юзеров) он начинает подгружать новые сегменты (Dynamically allocated new virtual shared memory segment (size 32768KB)). И так до около 2-х Гиг, а дальше начинает ругаться, что памяти ему мало.

20:05:07 shmat: [ENOMEM][12]: out of available data space, check system memory parameters (e.g. MAXMEM).

20:05:07 out of virtual shared memory

20:05:08 Assert Failed: Condition Failed (Ignoring free of pool 'arc_21062' (0x2811020) in use by blkpool), In (mt_shm_free_pool)
20:05:08 IBM Informix Dynamic Server Version 9.40.TC7
20:05:08 Who: Session(21062, work@microsoft.com, 1952, 00000000)
Thread(65565, ontape, 0, 1)
File: mtshpool.c Line: 3127
20:05:08 Action: Please notify IBM Informix Technical Support.
20:05:08 stack trace for pid 836 written to C:\Informix\tmp\af.4052554
20:05:08 See Also: C:\Informix\tmp\af.4052554, shmem.4052554.0
20:05:10 Releasing server from system block
20:10:37 Condition Failed (Ignoring free of pool 'arc_21062' (0x2811020) in use by blkpool), In (mt_shm_free_pool)
20:10:54 Checkpoint Completed: duration was 12 seconds.
20:10:54 Checkpoint loguniq 4967, logpos 0x49c018, timestamp: 0xf0debf6e

Перестарт информикса спасает дело. Всё опять возвращается на 1,3 Гига и пару недель память медленно растёт до 2Гиг и потом опять ругается.
Мне непонятно одно. У меня реально 4 Гига, а информикс выше 2-х Гиг брать не хочет. Что мне делать с параметрами, а то никак не могу в них разобраться?


ONCONFIG:
-----------
RESIDENT 1 # Forced residency flag (Yes = 1, No = 0)

LOCKS 100000 # Maximum number of locks
BUFFERS 200000 # Maximum number of shared buffers
NUMAIOVPS # Number of IO vps
PHYSBUFF 32 # Physical log buffer size (Kbytes)
LOGBUFF 32 # Logical log buffer size (Kbytes)
CLEANERS 2 # Number of buffer cleaner processes
SHMBASE 0xC000000L # Shared memory base address
SHMVIRTSIZE 500000 # initial virtual shared memory segment size
SHMADD 32768 # Size of new shared memory segments (Kbytes)
EXTSHMADD 32768 # Size of new extension shared memory segments (Kbytes)
SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL 300 # Check point interval (in sec)
LRUS 8 # Number of LRU queues
LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
TXTIMEOUT 300 # Transaction timeout (in sec)
STACKSIZE 64 # Stack size (Kbytes)


1. Ограничение в 2 ГБ адресного пространства есть ограничение
на разрадность signed long в 32 разрадной операционной системе.
Теоретически адресное пространство процесса можно увеличить до unsigned long (4 ГБ), погуглите на предмет "PAE" "windows" "infomrmix".
Я не знаю насколько informix дружит с PAE.


2. Вам может помочь переодический запуск onmode -F.
Более действенным будет если в момент вызова onmode -F
У вас не будут выполняться сессий которые используют сортировки больших обьемов или полные сканирования таблиц.

3. В случае если у Вас DSS,
посмотрите на вывод onstat -P, если индексных страниц в буферах базы данных меньше 30 % можете смело уменьшать параметер BUFFERS
и на этот обьем увеличить SHMVIRTSIZE.
Это оттянет появление эффекта без потери производительности, если правильно подобрать соотношение индексных и страниц с данными в буферах
базы данных.
Если же у Вас OLTP ищите запросы которые не попадают по индексам.


4. Попробуйте поставить pdqpriority в значение меньше 5 в плоть до 0.
Это тоже может помочь если у Вас большое количество фрагментов таблиц.
Зато может существенно снизить производительность.

Если все это не помогает, а ситуация сильно напрягает, ищите возможность переходя на 64 разрядную версию informix.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476697
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-...

Если все это не помогает, а ситуация сильно напрягает, ищите возможность переходя на 64 разрядную версию informix.На 4-х гигах бессмысленно.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476830
Rumata Estorskiy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vasilis
12:22:58 mt_shm_init: can't create virtual segment
смотри выше о настройке самой Винды


Добавил я в boot.ini 3GB - ничего не изменилось. :-(

vasilis
Как минимум, знать, что и куда (по каким адресам) грузится в твоей ОС (можно промониторить спецутилитами).


Какими?

vasilis
И еще:
Q. LARGE MEMORY CONFIGURATIONS
-----------------------------------
As part of the support for encrypted data replication in 9.40, a new DLL
called libea32.dll is loaded at address 0x68000000. Large memory
configurations that were previously making use of the maximum possible
shared memory size of approximately 1.5 GB (assuming a default SHMBASE
setting of 0xC000000 and an upper limit determined by the System DLLs
which load at 0x70000000) might find that the maximum possible shared
memory size has been reduced by 128 Mb.

Читал я об этом в релизах. Если этому верить, то предел 1,5 Гига. Но игры с SHMBASE вроде позволяют повысить этот предел. Главное не улететь в занятую область.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476864
Rumata Estorskiy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
onstat-
1. Ограничение в 2 ГБ адресного пространства есть ограничение
на разрадность signed long в 32 разрадной операционной системе.
Теоретически адресное пространство процесса можно увеличить до unsigned long (4 ГБ), погуглите на предмет "PAE" "windows" "infomrmix".
Я не знаю насколько informix дружит с PAE.


Что такое PAE? То бишь получается, что стоит на серваке 2 Гига или 4 Гига памяти никаких различий? (учитывая то, что кроме информикса и винды на сервере больше ничего нету)?

onstat-
3. В случае если у Вас DSS,
посмотрите на вывод onstat -P, если индексных страниц в буферах базы данных меньше 30 % можете смело уменьшать параметер BUFFERS
и на этот обьем увеличить SHMVIRTSIZE.
Это оттянет появление эффекта без потери производительности, если правильно подобрать соотношение индексных и страниц с данными в буферах
базы данных.
Если же у Вас OLTP ищите запросы которые не попадают по индексам.


Может это поможет?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
IBM Informix Dynamic Server Version 9.40.TC7     -- On-Line -- Up 19:33:45 -- 1539584 Kbytes
Profile
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached
4201169  4586009  997568668 99.58   123051   389138   14622307 99.42  

isamtot  open     start    read     write    rewrite  delete   commit   rollbk
1523318272 47445725 238921215 571126603 4335525  2327353  45376    6768     1067

gp_read  gp_write gp_rewrt gp_del   gp_alloc gp_free  gp_curs 
0        0        0        0        0        0        0       

ovlock   ovuserthread ovbuff   usercpu  syscpu   numckpts flushes 
0        0            0        8589.47  1682.48  50       100     

bufwaits lokwaits lockreqs deadlks  dltouts  ckpwaits compress seqscans
341766   10       205330672 0        0        31       64808    928183  

ixda-RA  idx-RA   da-RA    RA-pgsused lchwaits
1212829  31674    398916   1639193    1101    

onstat-
Если все это не помогает, а ситуация сильно напрягает, ищите возможность переходя на 64 разрядную версию informix.

Да в общем-то меня это сильно не напрягает. Перезагрузка раз в 2-3 недели не особо проблематична. Просто хочется разобраться.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33476898
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy
Что такое PAE? То бишь получается, что стоит на серваке 2 Гига или 4 Гига памяти никаких различий? (учитывая то, что кроме информикса и винды на сервере больше ничего нету)? PAE - возможность использовать больше чем 4G озу в 32-х разрядном режиме, по моему информикс не умеет, по крайней мере никогда я не видел параметров -- например размера окна.

Rumata Estorskiy
Может это поможет?возможно дело в мемориликах при добавлении сегмента, постарайся поставить такой шмвиртсайз чтобы он уже никогда не добавлял сегменты.

А ты уверен что тебе надо такую кучу памяти для такого кол-ва пользователей?? Уменьши буферсы раза в два, увелич шмвиртсайз, и не парься с /3G. (кстати оно в 2000-м не в boot.ini, а в свойствах системы (загрузка и восстановление) выставляется ??? или я глююючуууу и это одно и тоже?)
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477001
Rumata Estorskiy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Журавлев Денис
А ты уверен что тебе надо такую кучу памяти для такого кол-ва пользователей?? Уменьши буферсы раза в два, увелич шмвиртсайз, и не парься с /3G.


Так я всю эту бодягу для того и затеял чтобы выяснить что мне всё-таки нужно. Буфера или виртуальная память? Каковы их влияния на работу системы? Как я уже догадался они работают в паре. Т.е. 1,5 Гига это предел для их суммы, а не для каждой в отдельности. Т.е. убираю буфера - можно добавить виртуальной и наоборот. Только как их при данных параметрах системы выставить оптимально? И меня опять-таки очень смущает параметр SHMBASE. Какова же его идеологическая суть? Типа как США выразила озабоченность в связи с продажей Россией ракет Ирану. Вот я типа выражаю озабоченность.


Журавлев Денис
(кстати оно в 2000-м не в boot.ini, а в свойствах системы (загрузка и восстановление) выставляется ??? или я глююючуууу и это одно и тоже?)

Одно и то же.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477111
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy onstat-
1. Ограничение в 2 ГБ адресного пространства есть ограничение
на разрадность signed long в 32 разрадной операционной системе.
Теоретически адресное пространство процесса можно увеличить до unsigned long (4 ГБ), погуглите на предмет "PAE" "windows" "infomrmix".
Я не знаю насколько informix дружит с PAE.


Что такое PAE? То бишь получается, что стоит на серваке 2 Гига или 4 Гига памяти никаких различий? (учитывая то, что кроме информикса и винды на сервере больше ничего нету)?



Описание здесь. http://support.microsoft.com/kb/283037

Если связка ОС и Informix не дружит с PAE или AWE, то использавать память
в вашем случае будет некому кроме ОС для своих нужд.

Rumata Estorskiy
onstat-
3. В случае если у Вас DSS,
посмотрите на вывод onstat -P, если индексных страниц в буферах базы данных меньше 30 % можете смело уменьшать параметер BUFFERS
и на этот обьем увеличить SHMVIRTSIZE.
Это оттянет появление эффекта без потери производительности, если правильно подобрать соотношение индексных и страниц с данными в буферах
базы данных.
Если же у Вас OLTP ищите запросы которые не попадают по индексам.


Может это поможет?



Я просил onstat -P (Upper Case).
И не извесно в каком режиме работает база(OLTP, DSS).

Частично может помочь это

commit 6768
rollbk 1067

16 % не много ли откатов транзакций? Вы не задавались вопросом почему?

seqscans 928183

ixda-RA idx-RA da-RA RA-pgsused
1212829 31674 398916 1639193

Если проанализировать то основная масса запросов у вас идет
с использованием полного сканирования таблиц находящихся в буферах
базы данных. Если это не маленькие таблицы справочники то
пересмотрите политику индексирования, мне кажется, что там можно
хорошо поднять производительность и попутно решить вашу проблему.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477200
Rumata Estorskiy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
onstat-
Я просил onstat -P (Upper Case).


По этой команде на пол метра вывод идёт. Вот начало:

IBM Informix Dynamic Server Version 9.40.TC7 -- On-Line -- Up 20:56:56 -- 1539584 Kbytes
partnum total btree data other dirty
0 100 7 0 93 3
1048578 49 27 21 1 0
1048579 9 5 4 0 0
1048580 14 6 8 0 0


Вот конец:

17825818 2 1 1 0 0
17825838 2 1 1 0 0
17825839 3 3 0 0 0
17825850 1 0 0 1 0

Totals: 250000 112003 135628 2369 11406

Percentages:
Data 54.25
Btree 44.80
Other 0.95


onstat-
И не извесно в каком режиме работает база(OLTP, DSS).


И мне не известно.:(

onstat-
Частично может помочь это
commit 6768
rollbk 1067


Это что?

onstat-
16 % не много ли откатов транзакций? Вы не задавались вопросом почему?
seqscans 928183
ixda-RA idx-RA da-RA RA-pgsused
1212829 31674 398916 1639193
Если проанализировать то основная масса запросов у вас идет
с использованием полного сканирования таблиц находящихся в буферах
базы данных. Если это не маленькие таблицы справочники то
пересмотрите политику индексирования, мне кажется, что там можно
хорошо поднять производительность и попутно решить вашу проблему.

К сожалению это невозможно, т.к. программа не наша. А ковыряться в нескольких десятках баз, в каждой из которых несколько сотен таблиц - нереально.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477201
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy
Добавил я в boot.ini 3GB - ничего не изменилось. :-(

Напомню еще раз (выделено)
vasilis
Снечала нужно дать возможность самой Винде оперировать большим объемом (кстати, играет значение версия Windows 2000 ).
Для этого в в файле boot.ini нужна строка типа этой:
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Advanced Server " /fastdetect /3GB

У тебя Advanced ?
Тогда еще раз - на стандартной версии Windows 2000 Server данная фича не работает.
Полный список таких ОС:
Windows XP Professional
Windows Server 2003
Windows Server 2003, Enterprise Edition
Windows Server 2003, Datacenter Edition
Windows 2000 Advanced Server
Windows 2000 Datacenter Server
Windows NT Server 4.0, Enterprise Edition
Рекомендую почитать также
Memory Support and Windows Operating Systems
http://www.microsoft.com/whdc/system/platform/server/PAE/PAEmem.mspx
и Operating Systems and PAE Support
http://www.microsoft.com/whdc/system/platform/server/PAE/pae_os.mspx
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477264
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy
Так я всю эту бодягу для того и затеял чтобы выяснить что мне всё-таки нужно.
Буфера или виртуальная память?

Уменьшай буфера и смотри:
%cached %cached
99.58 99.42
Пока оно ~99 -- все нормально.

Только по утрам onstat -z делай, что бы не портить картину %cached всякими updatestatistics.

Rumata Estorskiyсмущает параметр SHMBASE.И как сильно смущает?
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477287
Фотография Тан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy
Так я всю эту бодягу для того и затеял чтобы выяснить что мне всё-таки нужно. Буфера или виртуальная память? Каковы их влияния на работу системы? Как я уже догадался они работают в паре. Т.е. 1,5 Гига это предел для их суммы, а не для каждой в отдельности. Т.е. убираю буфера - можно добавить виртуальной и наоборот. Только как их при данных параметрах системы выставить оптимально? И меня опять-таки очень смущает параметр SHMBASE. Какова же его идеологическая суть?
Буфера с виртуальной памятью не пересекаются. Сколько выделено буферов при старте, столько и используется. Влияет их количество исключительно на производительность (меньше - хуже).
У вас постоянно добавляются сегменты к ВИРТУАЛЬНОМУ разделу. Т.е. не хватает именно там. В этом сегменте лежат в основном данные пользовательских сессий, ну и много еще всего, это лучше в книжке почитать.
Вам бы для начала посмотреть, сколько памяти каждая сессия пользовательская берет.
А параметр SHMBASE вам не поможет, и его вообще трогать не надо.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477379
Rumata Estorskiy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vasilis
У тебя Advanced ?


Нет. :(
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477383
olleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот что-то похожее


http://www.sql.ru/forum/actualthread.aspx?tid=93996
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477393
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata Estorskiy onstat-
Я просил onstat -P (Upper Case).


По этой команде на пол метра вывод идёт. Вот начало:

17825818 2 1 1 0 0
17825838 2 1 1 0 0
17825839 3 3 0 0 0
17825850 1 0 0 1 0

Totals: 250000 112003 135628 2369 11406

Percentages:
Data 54.25
Btree 44.80
Other 0.95


onstat-
И не извесно в каком режиме работает база(OLTP, DSS).


И мне не известно.:(



А нам тем более.

Уменьшайте BUFFERS на 5 - 10 % и эту памаять отдавайте в SHMVIRTSIZE
Посмотрите документацию в каких единицах измеряются эти параметры!!!!
Если производительность не упадет, можете попробовать больше.
Это продлит uptime вашей системы.

Rumata Estorskiy
onstat-
Частично может помочь это
commit 6768
rollbk 1067


Это что?


Это часть результата вашего onstat -p,
и это значит что 16 % попыток пользователей не приводят к реальному изменению базы данных и ресурсы потраченные системой на эти действия
расходуются в пустую.
А в особо тяжких случаях( на DSS операциях)
в двойне(то есть до 32 %).

Как вариант это может быть причиной ваших проблем
когда сессия после отката транзакции не отпускает
ранее запрошенную память. Может это баг, а может и фича.
В любом случае после завершения этой сессии
память должна вернуться для использования другими сессиями.
А операционке все лишнее можно отдать через onmode -F.

Rumata Estorskiy
К сожалению это невозможно, т.к. программа не наша. А ковыряться в нескольких десятках баз, в каждой из которых несколько сотен таблиц - нереально.

Разработчиков можно и нужно конструктивно строить,
хоть им это не всегда приятно слышать
но на пользу делу это идет всегда.
Я надеюсь вы уже задали вопрос этого топика разработчикам.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477642
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumata EstorskiyData 54.25
Btree 44.80
Предположу что optcompind=2. Это значит хешджойн, это значит жрем память в виртуальном сегменте. Может рискнуть optcompind=0?
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33477764
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы неправильно представляете себе сущность SHMBASE.
------
SHMBASE specifies the base address where shared memory is attached to the
memory space of a virtual processor. Do not change the value of SHMBASE.
------

Переводя на русский - это адрес в виртуальном пространстве процесса(ов) oninit, с которого начинается ихняя общая память. Никакого отношения к реальному физическому адресу, по которому будет выделена память, он не имеет.

Windows позволяет выделить до 2GB под адресное пространство процесса, остальное забрано под системные адреса, кроме случаев /3GB в boot.ini на версии, понимающей этот флаг (Windows NT Enterprise Edition, Windows 2000 Advanced Server и дп.) . насколько я понимаю, вы этот флаг не взводили, соответственно больше 2GB Informix использовать не может.
А реальная причина падений - утечка памяти в сервере, которую надо искать (или хоия бы позвонить в саппорт и спросить - может ее уже пофиксили)

В таком вот аксепте
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33479009
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбегалло
------
SHMBASE specifies the base address where shared memory is attached to the
memory space of a virtual processor. Do not change the value of SHMBASE.
------
Переводя на русский - это адрес в виртуальном пространстве процесса(ов) oninit, с которого начинается ихняя общая память. Никакого отношения к реальному физическому адресу, по которому будет выделена память, он не имеет.
Мне кажется, что ты немного неправ.
SHMBASE - это адрес в виртуальном пространстве ОС, а не процесса oninit.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33479203
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasilis Выбегалло
------
SHMBASE specifies the base address where shared memory is attached to the
memory space of a virtual processor. Do not change the value of SHMBASE.
------
Переводя на русский - это адрес в виртуальном пространстве процесса(ов) oninit, с которого начинается ихняя общая память. Никакого отношения к реальному физическому адресу, по которому будет выделена память, он не имеет.
Мне кажется, что ты немного неправ.
SHMBASE - это адрес в виртуальном пространстве ОС, а не процесса oninit.

Это адрес в виртуальном пространстве процесса.
1. При выделении разделяемой памяти( shmget) ее фактический адрес выделяется в виртуальном пространстве ОС, затем эта память подключается(shmat) к адресному пространству процесса по адресу SHMBASE.

2. Если бы это был адрес в пространстве ОС , то для каждого SERVERNUM нужно было бы указывать свой SHMBASE.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33480113
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-2. Если бы это был адрес в пространстве ОС , то для каждого SERVERNUM нужно было бы указывать свой SHMBASE.
SHMBASE - условный, а не реальный адрес и именно в совокупности с SERVERNUM и определяет уникальный адрес, так что никакого противоречия, IMHO.
...
Рейтинг: 0 / 0
Что-то с ПАМЯТЬЮ моей стало
    #33480131
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vasilis,

вы не правы, прав onstat-.
заведите сервера на одной машине и отметьте выделяемые им физические адреса - они будут разными в зависимости от очередности старта серверов. Если бы они зависели от servernum, то а) они были бы каждый раз одинаковыми б) вы не смогли бы всунуть 2 и более серверов в виртуальную память OS. Кстати, какой практический смысл в информации о реальном физическом адресе сегмента ?

В таком вот аксепте
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / Informix [игнор отключен] [закрыт для гостей] / Что-то с ПАМЯТЬЮ моей стало
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]