|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv Викторрр wrote: > На выходных переставил сервер. Поставил Windows Server x64 Enterprise, > поставил Sybase 12.5.1, добавил в боот.ини ключик /3gb, ну и поправил > конфигурационный файл сайбеса. И ВСЕ!!! Получил 4 гб пямяти, без каких > либо дополнительных шаманств!!! Адрес shared memory starting address = Всё хорошо, но только это всё же наверное 3Gb. Один идёт под виндовые .dll. Вот еще sp_config. Что значит "Один идёт под виндовые .dll"? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 12:44 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр Что значит "Один идёт под виндовые .dll"? гиг нужен операционке под ядро + маппинг памяти ключ /3GB говорит о том, что приложению давать до 3 ГБ оперативки ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 13:12 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > Что значит "Один идёт под виндовые .dll"? В 32-разрядных Win32-приложениях 1Gb адресного пространства задачи, верхний, зарезервирован для мапирования туда системных ..DLL, драйверов и прочего системного барахла. Эти адреса в принципе приложению недоступны. Таким образом, приложению доступно либо 2Gb памяти, либо, если оно /3gb (для этого оно должно быть собрано специальным образом), то 3Gb памяти. ASE таким образом может видеть под Win32 только 3 Gb. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 13:14 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv Викторрр wrote: > Что значит "Один идёт под виндовые .dll"? В 32-разрядных Win32-приложениях 1Gb адресного пространства задачи, верхний, зарезервирован для мапирования туда системных ..DLL, драйверов и прочего системного барахла. Эти адреса в принципе приложению недоступны. Таким образом, приложению доступно либо 2Gb памяти, либо, если оно /3gb (для этого оно должно быть собрано специальным образом), то 3Gb памяти. ASE таким образом может видеть под Win32 только 3 Gb. А как на счет картинки с диспетчера задач и сп конфига: total data cache size 0 3744706 0 3744706 kilobytes [NULL] total logical memory 33792 4071290 2035645 2035645 memory pages(2k) read-only total physical memory 0 4074000 0 2037000 memory pages(2k) read-only он же говорит, доступно 4 гб, кеш 3,7!?!?!? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 14:26 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > А как на счет картинки с диспетчера задач и сп конфига: Я не знаю, какую память там показывают. К тому же, формально этот верхний гиг считается принадлежащим приложению, и это действительно так. Только приложение его использовать не может. Ты найди статью про это в MSDN, почитай. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 15:43 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv Викторрр wrote: > Что значит "Один идёт под виндовые .dll"? В 32-разрядных Win32-приложениях 1Gb адресного пространства задачи, верхний, зарезервирован для мапирования туда системных ..DLL, драйверов и прочего системного барахла. Эти адреса в принципе приложению недоступны. Несвопируемая область и фиксированные адреса в wow64 не нужны (ядро то в отдельной области). Вся же работа идет через thunking, которому много памяти не надо. А если посмотреть не taskmanager'om, а perfmon'-ом, который дает более четкую картинку? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 16:39 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Siemargl wrote: > Несвопируемая область и фиксированные адреса в wow64 не нужны (ядро то в > отдельной области). Вся же работа идет через thunking, которому много > памяти не надо. А ASE у него в wow64 работает ? И оно умеет ? Я вот например не знаю, и не уверен, что оно умеет. Потому что для ASE генеральная платформа -- не винды, там с этим проблем нет. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 17:43 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv Siemargl wrote: > Несвопируемая область и фиксированные адреса в wow64 не нужны (ядро то в > отдельной области). Вся же работа идет через thunking, которому много > памяти не надо. А ASE у него в wow64 работает ? И оно умеет ? Я вот например не знаю, и не уверен, что оно умеет. Потому что для ASE генеральная платформа -- не винды, там с этим проблем нет. Шмель летать не может, но этого не знает, потому летает. Если ASE не знает, что его крутят в wow64 и пусть его ) Конечно, надо тестировать все - и под полной нагрузкой. Либо вылетит либо нет. Но если все заработает нормально, то это будет весьма уникальный и воспроизводимый для многих программ опыт! А ключ /3gb в win64 по моему просто игнорируется (лень проверять в MSDN). ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 19:09 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Отвечу разом всем: http://support.microsoft.com/kb/888732 Цитата: Емкость виртуального адресного пространства для 32-разрядного процесса: - 32-разрядные версии: 2 ГБ (3 ГБ, если в файл Boot.ini добавлен переключатель /3GB) - 64-разрядные версии: 2 ГБ (4 ГБ при использовании параметра /LARGEADDRESSAWARE) При прошлой итерации (летом) я пытался изменить этот параметр /LARGEADDRESSAWARE при помощи сторонних средств на экзешнике сервера, но опыт был не удачен. В этот раз, попробовал сделать без шаманств и все заработало. Полагаю, что sybase изначально уже скомпелирован с этим параметром и ничего руками перекомпилировать не нужно! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2010, 10:16 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
SiemarglMasterZiv Викторрр wrote: > Что значит "Один идёт под виндовые .dll"? В 32-разрядных Win32-приложениях 1Gb адресного пространства задачи, верхний, зарезервирован для мапирования туда системных ..DLL, драйверов и прочего системного барахла. Эти адреса в принципе приложению недоступны. Несвопируемая область и фиксированные адреса в wow64 не нужны (ядро то в отдельной области). Вся же работа идет через thunking, которому много памяти не надо. А если посмотреть не taskmanager'om, а perfmon'-ом, который дает более четкую картинку? Какой именно счетчик нужно посмотреть? И по поводу кеша. Из этих 4х гигов, 3,5 отдал код кэш, 180 мб под процедурный кеш, ну и оставшуюся память, под нужды сервера. Так ли нужно распределить память??? Еще вопрос. Имеет ли значение для субд/рейд контроллера размер файлов данных БД? У меня база 170 гб = 5 файлов данных по 32 гб + 10 гб лог, а если сделать 16 файлов по 10 гб вместо 5 по 32 будет быстрее или нет??? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2010, 10:27 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
SiemarglMasterZiv Siemargl wrote: > Несвопируемая область и фиксированные адреса в wow64 не нужны (ядро то в > отдельной области). Вся же работа идет через thunking, которому много > памяти не надо. А ASE у него в wow64 работает ? И оно умеет ? Я вот например не знаю, и не уверен, что оно умеет. Потому что для ASE генеральная платформа -- не винды, там с этим проблем нет. Шмель летать не может, но этого не знает, потому летает. Если ASE не знает, что его крутят в wow64 и пусть его ) Конечно, надо тестировать все - и под полной нагрузкой. Либо вылетит либо нет. Но если все заработает нормально, то это будет весьма уникальный и воспроизводимый для многих программ опыт! А ключ /3gb в win64 по моему просто игнорируется (лень проверять в MSDN). Сервак работает четвертый день, сбоев, глюков или чего либо не обычного не замечено. По поводу ключа /3gb, поставил рефлексорно, как было на 32 битной винде. При следующей перезагрузке (на 8 мартовских праздниках) попробую его убрать. Важен адрес shared memory starting address = 23662592, без него точно не работает. Правда особого ускорения от увеличившегося на гигабайт кеша (cache size был 2600000 стал 3500000) особо не заметно. :( ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2010, 10:45 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр И по поводу кеша. Из этих 4х гигов, 3,5 отдал код кэш, 180 мб под процедурный кеш, ну и оставшуюся память, под нужды сервера. Так ли нужно распределить память??? я бы отдал Sybase только 3 ГБ а то может случиться, что под нагрузкой винда начнет скидывать Sybase в своп со всеми вытекающими отседова тормозами и прелестями диагностики "по живому" это так, совет ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2010, 11:18 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
komradВикторрр И по поводу кеша. Из этих 4х гигов, 3,5 отдал код кэш, 180 мб под процедурный кеш, ну и оставшуюся память, под нужды сервера. Так ли нужно распределить память??? я бы отдал Sybase только 3 ГБ а то может случиться, что под нагрузкой винда начнет скидывать Sybase в своп со всеми вытекающими отседова тормозами и прелестями диагностики "по живому" это так, совет Спасибо за совет, но у меня, в конфиге сайбеса, прописано: allocate max shared memory = 1 dynamic allocation on demand = 0 соответственно, сайбейс сервер, сразу забирает всю указанную ему память и не отдает ее обратно ОС. Расскажите, плиз, про распределение памяти внутри сайбеса. Как распределить эти 4 Гб? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2010, 14:56 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр Спасибо за совет, но у меня, в конфиге сайбеса, прописано: allocate max shared memory = 1 dynamic allocation on demand = 0 соответственно, сайбейс сервер, сразу забирает всю указанную ему память и не отдает ее обратно ОС. что помешает винде при системной необходимости скинуть часть памяти отъеденной Sybase-ом в кэш на диск? Никто её не отберет у него, но подвинуть в сторону на медленный драйв - легко! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2010, 16:42 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
komradВикторрр Спасибо за совет, но у меня, в конфиге сайбеса, прописано: allocate max shared memory = 1 dynamic allocation on demand = 0 соответственно, сайбейс сервер, сразу забирает всю указанную ему память и не отдает ее обратно ОС. что помешает винде при системной необходимости скинуть часть памяти отъеденной Sybase-ом в кэш на диск? Никто её не отберет у него, но подвинуть в сторону на медленный драйв - легко! В системе 16 Гб оперативки. Система 64 битная. Все равно винда будет претендовать на мои кровью выстраданные 4 гб оперативки??? Разве она не будет использовать оставшиеся 12 гб??? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2010, 17:34 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр В системе 16 Гб оперативки. Система 64 битная. Все равно винда будет претендовать на мои кровью выстраданные 4 гб оперативки??? Разве она не будет использовать оставшиеся 12 гб??? а, это я пропустил, сорри ;) тогда всё ок, пейджинга быть не должно ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2010, 17:40 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
komradВикторрр В системе 16 Гб оперативки. Система 64 битная. Все равно винда будет претендовать на мои кровью выстраданные 4 гб оперативки??? Разве она не будет использовать оставшиеся 12 гб??? а, это я пропустил, сорри ;) тогда всё ок, пейджинга быть не должно На праздниках "23 февраля" я его переставил на х64 винду и получил 4 гб оперативки, о чем писал здесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 11:16 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
komradзабыл парольkomrad, Интересно было бы почитать где именно написано, что I/O осуществляется экстентами. Прошу только обратить внимание, что space allocation и размер выполняемого I/O - это вещи принципиально разные. Заодно хотелось бы услышать, что если для пула 2K размер одного I/O почему-то вдург стал =16K, то чему тогда равен размер одного I/O в large I/O pool размером в 4K, 8K, 16K? про первое - это я погорячился слегка, без постоянной практики знания конечно понемногу уходят... подтверждение тут (страница 8, пункт 3.3, предпоследний абзац): цитата ASE I/O buffer pools, as discussed above, allow the disk I/O sizes to occur at units of 1, 2, 4, or 8 pages at a time. Depending on the server page size, disk I/O sizes range from 2KB to 16KB for a 2KB-page server up to 16KB to 128KB for a 16KB-page server. Задал вопрос инструктору Сайбейс, по поводу того, какими порциями осуществляется запись на диск, но ответ был, для сервера с 2К страницой, размер вывода соответственно равен 2 Кб! Где же правда??? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 11:21 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > осуществляется запись на диск, но ответ был, для сервера с 2К страницой, > размер вывода соответственно равен 2 Кб! Где же правда??? 2, 4, 8 или 16 к. Всегда от размера страницы и до 16 к, с логарифмическим шагом в 2. (увеличивая в 2 раза). Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 12:05 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр Задал вопрос инструктору Сайбейс, по поводу того, какими порциями осуществляется запись на диск, но ответ был, для сервера с 2К страницой, размер вывода соответственно равен 2 Кб! Где же правда??? зависит от пулов кэша читайте Sybase Administration Guide (стр.616) обратите внимание на Cache Configuration Guidelines (стр.654) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 12:35 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv Викторрр wrote: > осуществляется запись на диск, но ответ был, для сервера с 2К страницой, > размер вывода соответственно равен 2 Кб! Где же правда??? 2, 4, 8 или 16 к. Всегда от размера страницы и до 16 к, с логарифмическим шагом в 2. (увеличивая в 2 раза). Зависит от пулов кеша? У нас не настроены пулы кеша, значит всегда только 2К? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 15:28 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > Зависит от пулов кеша? У нас не настроены пулы кеша, значит всегда > только 2К? Да. Очень плохо, кстати, что они не настроены. Ну т.е. как очень плохо ? Не очень, конечно, потому что большие пулы возможно вашему приложению и не нужны, но "настроены пулы" -- это значит они стоят такие, какие нужны вашему приложению. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 17:10 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
забыл парольkomrad, Задал вопрос инструктору Сайбейс, по поводу того, какими порциями осуществляется запись на диск, но ответ был, для сервера с 2К страницой, размер вывода соответственно равен 2 Кб! Где же правда??? Попробую поставить точку над i Когда, идет вставка/модификация данных в ASE, то сначала физически идет запись в транзакционный лог .., а потом уже позже, во время операции chekpoint либо housekeper идет запись на диск грязных страниц данных... Т.о. Запись в лог, идет постоянно, запись данных - дискретно.. Каким размером, идет запись в лог (по 1й или 2 страницы) определяется 2я вещами - значения выставленными в процедуре sp_logiosize и наличием соответствующего размера пула.. По дефолту sp_logiosize - 2 логические страницы..Однако если нет соответсвтующего пула, то по одной.. Размер же записи данных, определяется размером пула, где грязные страницы расположены.. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2010, 20:47 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
morisзабыл парольkomrad, Задал вопрос инструктору Сайбейс, по поводу того, какими порциями осуществляется запись на диск, но ответ был, для сервера с 2К страницой, размер вывода соответственно равен 2 Кб! Где же правда??? Попробую поставить точку над i Когда, идет вставка/модификация данных в ASE, то сначала физически идет запись в транзакционный лог .., а потом уже позже, во время операции chekpoint либо housekeper идет запись на диск грязных страниц данных... Т.о. Запись в лог, идет постоянно, запись данных - дискретно.. Каким размером, идет запись в лог (по 1й или 2 страницы) определяется 2я вещами - значения выставленными в процедуре sp_logiosize и наличием соответствующего размера пула.. По дефолту sp_logiosize - 2 логические страницы..Однако если нет соответсвтующего пула, то по одной.. Размер же записи данных, определяется размером пула, где грязные страницы расположены.. Прописал 16К пул в default data cache - 50 мб и в Named Cache:tempdb_cache - 50 Мб. Правда в default data cache этот пул практически не используется (<1%), а вот в tempdb_cache наоборот, просится чуть увеличить. Соответственно ОСНОВНОЙ вывод у меня идет по две двухкилобайтных страницы, т.е. по 4 кб и значит форматировать диск нужно с размером кластера 4 кб и srtipe size на рейде должен быть 4 кб? Так? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2010, 12:56 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Siemargl А ключ /3gb в win64 по моему просто игнорируется (лень проверять в MSDN). Попробовал убрать ключ, перезагрузился, все работает также на 4 гб. Все верно, ключ /3gb не нужен. Заметил еще один момент. Не смотря на то, что сайбейс забрал только 4 гб, свободной памяти в системе, из 16 гб, лишь несколько десятков мегабайт. Остальная память отдана под системный кеш (при начальной загрузке windows - системный кеш пустой, но за несколько часов он заполняется и использует всю свободную память). Что хранится в этом системном кеше??? Уж не сайбейс ли туда что-то складывает??? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2010, 13:14 |
|
|
start [/forum/topic.php?fid=55&msg=36485699&tid=2010466]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 170ms |
0 / 0 |