AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.04.2011, 15:59   #21  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,940 / 3229 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Если я правильно понимаю, gl00mie имел в виду загрузку файл сервера, на котором хранится приложение. Этот сервер не обязательно совпадает с одним из аосов. Это может быть выделенный сервак - единственная задача которого расшаривать для аосов файлы приложения по сети.
Старый 08.04.2011, 15:59   #22  
Rivez is offline
Rivez
Участник
 
77 / 10 (1) +
Регистрация: 21.01.2009
Цитата:
Сообщение от savel Посмотреть сообщение
А по моему - загрузка процессора AOS'а как раз и показывает нормальную рабочую загрузку. Т.е. это показатель, что процессорной мощности AOS'а хватает для текущих задач. Если средняя загрузка будет выше 30 - первый признак того что мощность нужно повышать. Выше 50 - повышать без раздумий.
согласен, но почему-то операции выполняются долго в системе, причем периодически
Старый 08.04.2011, 16:42   #23  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
А у вас клиенты стоят на рабочих местах или на терминале? Нет ли заметного торможения самого сервера (СУБД / AOS), а не конкретно AX?
__________________
Ivanhoe as is..
Старый 11.04.2011, 09:04   #24  
Rivez is offline
Rivez
Участник
 
77 / 10 (1) +
Регистрация: 21.01.2009
Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
А у вас клиенты стоят на рабочих местах или на терминале?
Часть клиентов(70-80 пользователей) работает через терминал, на котором не стоит AOS. Остальная часть (100-120 пользователей) на рабочих местах.

Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
Нет ли заметного торможения самого сервера (СУБД / AOS), а не конкретно AX?
вопрос не понятен
Старый 12.04.2011, 08:07   #25  
Rivez is offline
Rivez
Участник
 
77 / 10 (1) +
Регистрация: 21.01.2009
up
Старый 12.04.2011, 08:46   #26  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 858 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
еще идеи
посмотрите, где лежит tempdb - стала сильнонагруженной базой и должна быть на быстрых дисках
проверьте периодические процедуры когда и как выполняются на SQL сервере, например обновление кубов, бекапы и т.п.
посмотрите как себя чувствуют соседние сервера (PDC, файл-сервера и бекап-сервера), как там с загрузкой и торможением.

попробуйте все-таки понять кто тормозит АОС SQL или сеть
Старый 12.04.2011, 09:14   #27  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
По-моему, коллективное угадывание зашло в тупик - пора браться за performance monitor и выяснять на месте, чем таким специфичным сопровождается возникновение тормозов.
Старый 12.04.2011, 12:36   #28  
Андрей К. is offline
Андрей К.
Постигающий
 
152 / 10 (1) +
Регистрация: 09.04.2007
Цитата:
Сообщение от Rivez Посмотреть сообщение

вопрос не понятен
имеется в виду тормозит ли скл сервер без связки к аксапте, то есть сам по себе (ну например под искусственной нагрузкой тяжелыми запросами через менеджмент студию)
Старый 17.11.2011, 11:34   #29  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
Подниму тему, пока просто с идеями (без ответов, их проверим только вечером)

Обнаружили проблему с производительностью отчета, стали копать.
на рабочем сервере (2 проца по 4 ядра с НТ, то есть 16 потоков) и на виртуальной разработке (на обычном ПК (двух ядерный Коре 2 дуо) , в виртуалке 1 проц показан
Отчет строится одинаковое время по одним данным (на бакапе БД) - чего по идее быть не должно.

Стали копать.
Монитор работы ДЕВ (виртуалка 1 проц) показывал 100% занятости проца АОСом
Монитор работы ВРК (16 потоков) показывал 6% занятости (что равно как раз 1/16, и оч подозрительно)
В настройках конфигурации сервера стоит на закладке Перфоманс По умолчанию для ядер проца.
Выбрал определенные (10 шт процов из 16 для тестов), но пока АОС не можем перестартить, чтоб проверить

Кто сталкивался с похожим?
Или может протестить сам, не дожидаясь вечера.

Речь о AX2009 RU 6

Последний раз редактировалось BOAL; 17.11.2011 в 12:15.
Старый 17.11.2011, 11:52   #30  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 858 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
а в чем вопрос-то... почему один отчет выполняется в один поток на одном ядрышке?
Старый 17.11.2011, 12:14   #31  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
Цитата:
Сообщение от Wamr Посмотреть сообщение
а в чем вопрос-то... почему один отчет выполняется в один поток на одном ядрышке?
Вопрос (и подозрение), что отметка "по умолчанию" для АОС в настройках работает как выбор 1 ядра, а не всех. То есть нужно всегда указать нужные (или все) ядра ручками.
Старый 17.11.2011, 12:36   #32  
Михаил Андреев is offline
Михаил Андреев
Участник
Компания АМАНД
Лучший по профессии 2009
 
1,295 / 239 (10) ++++++
Регистрация: 09.11.2001
Адрес: Химки, Московская область
А как настроен сервер MS SQL? В частности, tempdb?
MS рекомендует для каждого ядра отделный файл tempdb делать: http://msdn.microsoft.com/ru-ru/library/ms175527.aspx
Но не факт, что это сможет помочь на примере только одного отчета - может так оказаться, что там просто нечего распараллеливать, тогда как ни крути, а ускорения не будет.
__________________
Михаил Андреев
https://www.amand.ru
Старый 17.11.2011, 12:48   #33  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,907 / 5717 (196) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от Михаил Андреев Посмотреть сообщение
А как настроен сервер MS SQL? В частности, tempdb?
MS рекомендует для каждого ядра отделный файл tempdb делать: http://msdn.microsoft.com/ru-ru/library/ms175527.aspx
Но не факт, что это сможет помочь на примере только одного отчета - может так оказаться, что там просто нечего распараллеливать, тогда как ни крути, а ускорения не будет.
Я всегда считал, что AOS в принципе не умеет сам ничего распараллеливать внутри одной пользовательской сессии. Единственный способ что-то распараллелить, это написать хитрый джоб, который порождает runtime-задачи. Если BOAL такой подход использует, то да - есть повод подумать. Если не использует, я никак не могу представить чтобы боевой AOS сам распараллелил отчет на 16 ядер... Скорее всего он просто одно ядро занимает, а task manager тупо показывает это как 1/16*100% утилизации - 6%
Старый 17.11.2011, 13:41   #34  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
Цитата:
task manager тупо показывает это как 1/16*100% утилизации - 6%
Именно так, тк смотрели мониторингом, занято именно 1 ядро на 100%

Проверили запуск этих отчетов с двух пользователей.
Теперь на 100% занято и второе ядро и общие 12%

Да, теперь все понятно.
Значит "По умолчанию" на закладке производительность - это все же все ядра скорее всего

Интересно, как себя поведет система, если вся ядра кончатся?
Но имхо все это оч печально - вместо использования простаивающих 15 ядер, работает одно
И прироста скорости от мегасервера вообще нет для конкретно работы 1 пользователя
Что на обычном ПК ставить АХ, что на сервере - эффект только за счет ускорения в SQL видать

Последний раз редактировалось BOAL; 17.11.2011 в 13:51.
Старый 17.11.2011, 13:49   #35  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,907 / 5717 (196) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от BOAL Посмотреть сообщение
Именно так, тк смотрели мониторингом, занято именно 1 ядро на 100%
Ну то есть то что вы ухитрились одно ядро на 100% занять - это немножко странно конечно (обычно процесс какое-то время отклика от сиквела ждет). Но сравнение утилизации с боевым AOS - это явно мимо кассы.

Кстати - безумные цифры утилизации я видел тогда, когда кто-то включал full table cache на какую-то часто обновляемую большую таблицу. В итоге AOS ее на каждый чих перечитывал с сиквела и разноски простого складского журнала из 40 строк хватало для создания 70% утилизации AOS (с одним ядром процессорным). Двух журналов - для 100% утилизации. Может это ваш случай ?
За это сообщение автора поблагодарили: sukhanchik (2).
Старый 17.11.2011, 13:59   #36  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
Там оч много запросов, отчет только на чтение.
Но, если поведение, что 1 чел всегда занимает 1 поток верна, то получается, что масштабирования увеличением железкой (сервера) не добиться. Так что ли?
А как за пакетные операции, оно тоже будут 1 процессор занимать?
Вместо работы операции ночной за 10 мин, будет 3часа... оч печально

Получается, что для АОС АХ нужно брать какой-нть высокочастотный проц АМД без НТ, которое в данном случае вообще зло (делит процессор пополам).

Все это пока домыслы по мотивам приведенного выше.

===
некая мысля как такое (если это вообще реально так) обойти:
нужно АОС ставить всегда в вируталке, давать ей 1-2 проца (чтоб она думала, что у нее 1-2 проца), но на деле считать вируталку всей мощью серва
Тогда этот 1 проц будет 8 ядер, что и ожидается
То есть обмануть неумеющий пользовать всю мощь АОС через другой софт

Последний раз редактировалось BOAL; 17.11.2011 в 14:09.
Старый 17.11.2011, 14:10   #37  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,907 / 5717 (196) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от BOAL Посмотреть сообщение
Там оч много запросов, отчет только на чтение.
Но, если поведение, что 1 чел всегда занимает 1 поток верна, то получается, что масштабирования увеличением железкой (сервера) не добиться. Так что ли?
А как за пакетные операции, оно тоже будут 1 процессор занимать?
Вместо работы операции ночной за 10 мин, будет 3часа... оч печально

Получается, что для АОС АХ нужно брать какой-нть высокочастотный проц АМД без НТ, которое в данном случае вообще зло (делит процессор пополам).

Все это пока домыслы по мотивам приведенного выше.
Посмотри на то как вот этот вот отчет написан: axinthefield: Reconciling Inventory to GL in Dynamics AX
Они там порождают кучу хелперов на батч-сервере как раз для того чтобы запросы с многих ядер кидать. Я сам как-то написал мегазадачу для распределения себестоимости продаж по ABC. У меня основная задача порождала кучу хелперов, с зависимостями между ними. Батч сервер их там сам распараллеливал между ядрами (параллельных хелперов было больше чем ядер) и сам запускал новые задачи после того как те задачи, от которых они зависели, завершались. В итоге - миллион с копейками записей с распределениями (не в ГК, просто в отдельную таблицу для анализа), на батч-сервере с 4 ядрами создаются за полчаса в среднем (Это еще включая рассчет промежуточных таблиц с базами для распределения).
Так что механизм крайне полезный и могучий, надо просто большие отчеты и задачи заранее проектировать с идеей что они будут на батч-сервере во многих параллельных задачах исполняться.

P.S. Что-то мне кажется что идея эммулировать один мощный проц из множества ядер путем виртуализации не сработает. Если бы это было возможно, Intel бы давно делал одноядерные (с виду) процессора, внутри состоящие из кучи RISC-ядер. Они ведь и пошли по пути увеличения числа ядер, только потому что увеличивать производительность одного ядра не смогли...

Последний раз редактировалось fed; 17.11.2011 в 14:33.
За это сообщение автора поблагодарили: BOAL (2), alex55 (1).
Старый 17.11.2011, 14:44   #38  
Bega is offline
Bega
Участник
Аватар для Bega
 
382 / 444 (15) +++++++
Регистрация: 18.08.2005
Адрес: Москва
Обратите внимание на флаг is_read_committed_snapshot_on для базы DAX2009, у нас только после установки его в значение 1 исчезли проблемы с блокировками.

http://blogs.msdn.com/b/axsupport/ar...namics-ax.aspx
За это сообщение автора поблагодарили: sukhanchik (2).
Старый 17.11.2011, 18:21   #39  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от BOAL Посмотреть сообщение
Вопрос (и подозрение), что отметка "по умолчанию" для АОС в настройках работает как выбор 1 ядра, а не всех. То есть нужно всегда указать нужные (или все) ядра ручками.
Чтобы это проверить, достаточно пойти в диспетчер задач, найти процесс AOS'а, выбрать Set Affinity и посмотреть, что там нарисуется.

Цитата:
Сообщение от BOAL Посмотреть сообщение
Интересно, как себя поведет система, если вся ядра кончатся?
У планировщика времени проца в ядре ОСи постоянно "заканчиваются ядра"
Цитата:
Сообщение от BOAL Посмотреть сообщение
Но, если поведение, что 1 чел всегда занимает 1 поток верна, то получается, что масштабирования увеличением железкой (сервера) не добиться. Так что ли?
По-моему, масштабируемость - это способность сохранять некий уровень производительности при пропорциональном увеличении нагрузки. Если одна сессия обслуживается на 1-ядерном проце и на 16-ядерном (скажем, с той же тактовой частотой), то тут производительности расти особо неотчего, а вот если при тех же условиях запустить 16 таких сессий на 1-ядерном и 16-ядерном процах, вот тогда проявится эффект масштабируемости системы.
Старый 17.11.2011, 21:54   #40  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
Спасибо всем за объяснения, покопал, поразбирался - теперь больше в теме.
На деле смутил стереотип, что со времен ах 2.5-3.0 тесты на локале (ноуте, ПК) проходили сильно медленнее, чем на боевом серве.
Но теперь бытовые ноуты имею процы тех самых серверов и в однопользовательском режиме работают быстрее (парадокс, который и вызвал непонимание), чем на боевом дорогущем сервере.
Так как в один поток серверное одно ядро вполне сопоставимо (а то и ниже по частоте) проца бытового ПК.

Масштабирование предполагалось же не только от увеличения числа пользователей, но и числа данных.
Раньше это прокатывало, тк сервера становились мощнее (частоты и кэш одного ядра). Теперь прогресс встал колом - увеличивают ядра.
Если в БД что-то долгое считается 1 час, то когда данных будет х2, будет условно считать 2ч. И железкой это не лечится, тк ничего не даст.
Нужно предварительно переписать логику на многопоточность.
Ну или в данной ситуации проблема так остро (в х2 раза) не встанет из-за более умного SQLа, который заюзает ядра все подряд, даже на 1 селект (надеюсь это так?).

Но очень забавно, когда заявленная поддержка многопоточности и масштабируемости в АХ осуществляется в ручном режиме на уровне указания запуска конкретных методов внутри одного кода в разные потоки.
Это, конечно, автоматизация в действии, и высокоинтеллектуальная система потоков на АОС, ага
Так что, я пока не выкинул идею поизучать методы "обмана" АОС через сторонний софт.

Вот скажите мне, кто в теме, модные облачные вычисления будет так же работать?
Будет, скажем, в облаке древний 386 проц и он выпадет кому-то в помощь как один поток или как часть потока совместно с другими процами? За счет чего будет работать облако, за счет софта оболочки (облока) или спецом написанных програм для работы в этом облаке?
Так как АХ2009 при таком АОС в облаке запускать категорически нельзя, если ему хаотично будет выбираться одно ядно произвольного (по мощности) проца.
Есть же куча старого софта который не знает о многоядерности. И внутри ОС Виндовс этот софт занимает все ядра по 100%, а если в диспетчере выделить только одно, то сразу видны тормоза. Значит как это это работает и без переписывания на потоки, может не столь эффективно, как заложенное в коде деление, но работает.
Соотв. по идее нужно аналогично дать АОСу виртуальные ядра, из кучи реальных, что и даст требуемый прирос именно аппаратно, а без тюнинга кода.
Теги
ax2009, upgrade, производительность, тормоза

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35
Переход с Axapta 3.0 на AX 2009 - критика утилиты конвертации БД и скриптов обновления gl00mie DAX: Администрирование 5 02.01.2011 23:37
Sample Design Patterns: Upgrade to Microsoft Dynamics AX 2009 and issues with the global address book Blog bot DAX Blogs 0 21.12.2010 11:11
Arijit Basu: AX 2009 Document Management & MOSS / WSS Blog bot DAX Blogs 0 23.01.2009 01:07
Arijit Basu: AX 2009 - Quick Overview Blog bot DAX Blogs 4 19.05.2008 14:47

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:07.