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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.11.2005, 11:19   #1  
lagr221374
Гость
 
n/a
AOS и многопроцессорная машина
Влияет ли существенно наличие нескольких процессоров на машине на быстордействие AOS. Т.е. машина работает в одной и той же конфигурации с одним процессором, затем добавляют еще процессор, как измениться скорость работы приложения (3-х уровневое, база на другой машине)? Поделитесь опытом.
Старый 08.11.2005, 11:38   #2  
Daiver is offline
Daiver
Участник
Самостоятельные клиенты AX
 
177 / 44 (2) +++
Регистрация: 19.07.2005
Адрес: Москва
Теоритически никак. AOS не использует второй процессор. Для AOS важна частота процессора.
Старый 08.11.2005, 11:59   #3  
Serge Kotov is offline
Serge Kotov
Участник
 
275 / 152 (6) ++++++
Регистрация: 06.10.2004
Адрес: Moscow
Цитата:
Сообщение от lagr221374
Влияет ли существенно наличие нескольких процессоров на машине на быстордействие AOS. ...
Конечно влияет. Несмотря на то, что один клиентский процесс исполняется на одном процессоре, если их несколько, то они равномерно распределяются по количеству процессоров.

Если средняя нагрузка на один процессор сервера [AOS] более 50 % - имеет смысл увеличить их количество, если есть такая возможность.

Последний раз редактировалось Serge Kotov; 08.11.2005 в 12:19.
Старый 08.11.2005, 12:18   #4  
Gelios is offline
Gelios
Участник
 
3 / 15 (1) ++
Регистрация: 04.11.2005
Адрес: Estonia
Очень рекомендую выключить HyperThreading режим на AOS машине. Это отключает виртуализацию процессоров и фактически увелививает быстродействие каждого физического процессора.
Старый 08.11.2005, 12:29   #5  
Serge Kotov is offline
Serge Kotov
Участник
 
275 / 152 (6) ++++++
Регистрация: 06.10.2004
Адрес: Moscow
Цитата:
Сообщение от Gelios
Очень рекомендую выключить HyperThreading режим на AOS машине. Это отключает виртуализацию процессоров и фактически увелививает быстродействие каждого физического процессора.
Мы проводили исследование влияния HP на производительность на серверах AOS и, честно говоря, не обнаружили заметной разницы. Действительно виртуальное удвоение количества процессоров может некорректно сказаться на мониторинге в Performance Monitor, но реальные замеры скорости выполнения клиентских задач не выявили заметных различий.
Старый 08.11.2005, 13:44   #6  
itfs is offline
itfs
Участник
 
277 / 43 (2) +++
Регистрация: 18.07.2005
Адрес: Moscow
Не повлияет, AOS почти всегда использует только 1 процессор, если только вы не хотите запустить 2-й экземпляр AOS-а на одной и той же машине. Общее правило №1: AOS-ы масштабируются "box"-ами, ставите рядом еще одну машину и разводите по ним пользователей.
2 Serge Kotov что такое "клиентский процесс" применительно к 3-х звенке?
Старый 08.11.2005, 14:05   #7  
itfs is offline
itfs
Участник
 
277 / 43 (2) +++
Регистрация: 18.07.2005
Адрес: Moscow
Без сомнения, она это делает, но только это нам не поможет aos - это один единственный процесс и с точки зрения ОС, поделать с ним ничего нельзя.

С уваженим, itfs.
Старый 08.11.2005, 14:07   #8  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Совершенно верно. Если не привязывать процесс к определенным процессарам (процессору), то потоки будет выполняться параллельно на разных процессорах в соответствии с приоритетом. Так как Axapata на каждое подключение к AOS'у создает свой поток, то это правило действительно и для нее
__________________
Axapta v.3.0 sp5 kr2
Старый 08.11.2005, 14:12   #9  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
2 itfs
Ваше сообщение увидел после того, как отправил свое, по-этому уточняю.

Процесс сам по себе ничего не выполняет. Все дейсвтвия в программе выполняются потоками. Если приложение разбивает свою работу на 2 два и более потока, то они могут быть распараллелены операционкой для выполнения на разных процессорах
__________________
Axapta v.3.0 sp5 kr2
Старый 08.11.2005, 14:23   #10  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от itfs
Без сомнения, она это делает, но только это нам не поможет aos - это один единственный процесс и с точки зрения ОС, поделать с ним ничего нельзя.
процесс один, потоков - много

соответственно, одной сессии (одному потоку) наличие HT или дополнительных процессов как-либо заметно помочь не может, а вот если сессий (пользователей) много - очень даже

в принципе, я недавно рисовал сферического коня в вакууме - одна сессия запускает дополнительные потоки через AOSLoadGen и грузит все доступные процессоры, но как это применить на практике, еще не придумал
Старый 08.11.2005, 14:24   #11  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
... Как говорил Великий Рихтер

Да, у нас такая же ситуация.
Второй процессор пригодится, если на машине крутиться несколько АОСов (рабочий/тестовый/разработчиков)

С Уважением,
Георгий
Старый 08.11.2005, 14:40   #12  
lagr221374
Гость
 
n/a
Цитата:
Сообщение от Vadik
...
в принципе, я недавно рисовал сферического коня в вакууме - одна сессия запускает дополнительные потоки через AOSLoadGen и грузит все доступные процессоры, но как это применить на практике, еще не придумал
Можно на эту тему поподробнее если не затруднит + код
Старый 08.11.2005, 15:42   #13  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от lagr221374
Можно на эту тему поподробнее если не затруднит + код
Лехко

Изначально задача формулировалась примерно так "Допустим, у нас есть достаточно 'тяжелая' сессия, которая на многопроцессорном сервере приложений интенсивно использует один процессор, но не использует остальные. Это в принципе возможно?" Так вот "в принципе" ответ будет "да, если..". Если мы можем разбить нашу задачу на несколько мелких задач, разбросать их по нескольким потокам в принципе несложно. Я не стал использовать Thread (был когда-то нехороший опыт), а взял AOSLoadGen, благо к нему претензий по стабильности работы не было

В итоге получился, как я уже говорил, сферичейский конь в вакууме:
- обходя план счетов (LedgerTable), по каждому счету запускаем отдельный поток, обегающий проводки по счету (LedgerTrans)

Разумеется, сам алгоритм практической ценности не имеет, он нужен только для демонстрации

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

Пока нормального решения, которое действительно можно было использовать, я не нашел. Я точно не хочу использовать для обмена сообщениями таблицы, я не уверен, что хочу использовать глобальные переменные. Если у кого-то есть идеи, с радостью их выслушаю
Вложения
Тип файла: xpo AOSLoadGen.xpo (2.4 Кб, 439 просмотров)
Старый 08.11.2005, 15:53   #14  
lagr221374
Гость
 
n/a
Thanks. а что то ГЛОБАЛЬНОЕ использовать все же придется (как мне кажется)
Старый 08.11.2005, 16:06   #15  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
По-моему можно использовать стандартные Виндовые средства для синхронизации потоков - события, семейство функций WaitFor*.
__________________
Axapta v.3.0 sp5 kr2
Старый 08.11.2005, 18:12   #16  
lagr221374
Гость
 
n/a
Цитата:
Сообщение от AndyD
По-моему можно использовать стандартные Виндовые средства для синхронизации потоков - события, семейство функций WaitFor*.
К сожалению не все так просто, что-то пытался народ использовать не получилось
Старый 08.11.2005, 22:20   #17  
Serge Kotov is offline
Serge Kotov
Участник
 
275 / 152 (6) ++++++
Регистрация: 06.10.2004
Адрес: Moscow
Цитата:
Сообщение от itfs
Не повлияет, AOS почти всегда использует только 1 процессор, если только вы не хотите запустить 2-й экземпляр AOS-а на одной и той же машине. Общее правило №1: AOS-ы масштабируются "box"-ами, ставите рядом еще одну машину и разводите по ним пользователей.
2 Serge Kotov что такое "клиентский процесс" применительно к 3-х звенке?
Прощу прощения - сразу не ответил, так как был в офлайне и пропустил интересную дискусcию.

Под "клиентским процессом" я имел в виду один пользовательский коннект в 3-хзвенке, которому ax32serv выделяет собственный поток. Поэтому, собственно говоря, он и исполняется на одном процессоре. Т.е. разницу между процессом ОС и его потоками я знаю.

Любопытно откуда есть полное убеждение сразу у трех разных участников этой ветки, что AOS умеет работать только с одним процессором? Ведь это может, например, привести к рекомендации начинающему предприятию - клиенту поставить два однопроцессорных физических сервера вместо одного двухпроцессорного, что не есть хорошо.

Проверить корректность работы AOS с несколькими процессорами очень просто. Достаточно запустить Performance Monitor с просмотром нагрузки раздельно по каждому процессору.

ИМХО лучше не связываться с попыткой "расщепить" один поток на несколько процессоров. В реальной ситуации в трехуровневой конфигурации для двухпроцессорного сервера AOS одновременно работает обычно больше двух пользователей.
Старый 09.11.2005, 11:14   #18  
itfs is offline
itfs
Участник
 
277 / 43 (2) +++
Регистрация: 18.07.2005
Адрес: Moscow
Цитата:
Сообщение от Serge Kotov
Ведь это может, например, привести к рекомендации начинающему предприятию - клиенту поставить два однопроцессорных физических сервера вместо одного двухпроцессорного, что не есть хорошо.
Согласен, не есть. В принципе теоретически рассуждать именно о 2-м процессоре не совсем корректно. Даже если я сугубо прав и AOS не заставишь отдавать свои потоки на исполнение 2-му процессору, его всегда найдем чем занять сама ОС.
Но если речь идет о том чтобы выбрать между 2-х и 4-х процессорной конфигурацией, то ... я на своих выводам настаиваю.

to AndyD Теоритчески я согласен, существуют предпосылки для того, чтобы процесс отдавал на исполнение потоки различным процессорам. Допустим, что проблема синхронзации так или иначе решена. Но как факт, архитектура AOS-а такова, что не отдает выполнение пользовательских потоков другим процессорам, за исключением исполнения batch-ей.

С уважением, itfs.
С уважением, itfs.
Старый 09.11.2005, 11:20   #19  
lagr221374
Гость
 
n/a
Ок спасибо за информацию, в принципе логично, а с подтверждением опытом еще боле
Старый 09.11.2005, 11:36   #20  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 858 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
Цитата:
Сообщение от itfs
AOS почти всегда использует только 1 процессор..
2-х и 4-х процессорной конфигурацией, то ... я на своих выводам настаиваю
На чем основано такое утверждение?

Я проводил такой опыт.
Создал классик, который занимается вечным вычислением и исполняется на AOS-е.
Запустил несколько клиентов и смотрел загрузку 4х процессорного сервера.
1 сеанс - 25% (1 проц 100%)
2 сеанса - 50% (2 проц 100%)
3 сеанса - 75% (3 проц 100%)
и 4 сеанса - 100%
Теги
aos, железо

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
daxis: Troubleshooting blocked SPIDS in AOS Blog bot DAX Blogs 0 01.04.2009 18:05
Arijit Basu: AX 4 AOS Basics: [Level 100] Blog bot DAX Blogs 0 18.11.2007 14:30
DynamicsTech: What's New in Dynamics Ax 4.0 AOS? Blog bot DAX Blogs 0 12.04.2007 11:50
axaptapedia: Control AOS from command line Blog bot DAX Blogs 0 09.03.2007 14:50
Какая машина должна быть сильнее или AOS vs. SQL dj_Mage DAX: Администрирование 7 06.06.2006 05:21

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

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

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