Вопрос по тесту 1С

все о нагрузочном тестирвоании

Модератор: Дмитрий Юхтимовский

Вопрос по тесту 1С

Сообщение raskirill » 06 ноя 2013, 18:15

Добрый день!
Ситуация в следующем, настраиваю 1С на терминальном сервере и очень хочется чтобы он был виртуальным.
Компания занимается бухгалтерским учетом и аудитом. Используем файловый вариант баз т.к. в одной базе более 2 человек никогда не работает. В терминальном режиме будет работать около 15 пользователей с 10-20 базами одновременно.

Конфигурация сервера:
"Сервер Team Server R2000GZ в составе:
Платформа Intel R2208GL4GS, 2U, 8x2.5"" HS, 1x750 HS, 16D, RKSATA8, RMM4, Rails
ЦПУ Intel Xeon E5-2620, 2.0/2.5 GHz, 6 Cores, 15 MB, 1333 DDR3, TB, HT, 95 W х2
ОЗУ 4096 MB Kingston DDR3-1333 ECC Registered DIMM х8
Модуль Intel Battery Module (RS25NB, RS25DB, RMS25PB, RMS25CB, RMT3PB, RMT3CB) AXXRSBBU9
Модуль Intel RAID SAS RMS25CB080, LSI2208, 8P(int) 6 Gb/s, 1GB, RAID 0/1/10/5/50/6/60
НЖМД HDD SAS 2,5"" Seagate Savvio 10K.5 300GB 6Gb/s 10000RPM 64MB Cache х4
Блок питания Intel FXX750PCRPS 750 Вт Hot-Swap
Опт. привод Sony Optiarc AD-7760H-01 DVD+/-RW SATA Slimline Black"
Диски собраны в RAID10. Система WS2012 стоит на том же дисковом массиве.
В общем у системы роль только Hyper-V. Электропитание поставил на максимальную производительность.
В текущих тестах HT отключил.
На текущий момент поднято 3 виртуальные машины:
1) 1 вирт. проц. и 512МБ ОЗУ под Askozia (IP АТС на базе Asterisk)
2) 4 вирт. проц. и 6ГБ ОЗУ под WS2012 Active Directory
3) 12 вирт. проц. и 20ГБ ОЗУ под WS2012 Терминальный сервер (NUMA настроена под аппаратную топологию, т.е. 2 сокета, до 6 проц и 14ГБ памяти на сокет )
и теперь результаты:
на физическом сервере (роль Hyper-V)
1CGILV_2XEON_32GB.png
Физический
1CGILV_2XEON_32GB.png (71.26 KiB) Просмотров: 11168

на виртуальном терминальном сервере с 12 вирт. проц. и 20ГБ памяти Нагрузка на процессор в менеджере Hyper-V выше 8% не поднималась
1CGILV_12proc_20GB.png
12 вирт. проц
1CGILV_12proc_20GB.png (49.49 KiB) Просмотров: 11168

И самое главное при экспериментах поставил вместо 12 виртуальных процессоров всего 1 и те же 20ГБ памяти и получил следующий результат:
1CGILV_1proc_20GB.png
1 вирт. проц
1CGILV_1proc_20GB.png (53.95 KiB) Просмотров: 11168
нагрузка на процессор в менеджере Hyper-V также не превышала 8% зато в диспетчере задач на виртуальной машине процессор шкалило на 99% все время теста.

На виртуальном сервере электропитание также сделал на максимум производительности.
И вот теперь главный вопрос, почему такой низкий результат для 12 виртуальных процессоров и такой необычайно высокий для одного? Куда копать в настройках систем, чтобы поднять результат для виртуального сервера с 12 вирт. процессорами?

Заранее благодарен за ответ!
raskirill
 
Сообщений: 2
Зарегистрирован: 06 ноя 2013, 17:45

виртуальная среда медленней физический на 15%

Сообщение Гилёв Вячеслав » 06 ноя 2013, 19:49

raskirill писал(а):Используем файловый вариант баз

начну с главного, мы не занимаемся оптимизацией файлового варианта, можем предложить ознакомиться с http://www.gilev.ru/mssqlvsfile/

raskirill писал(а):И вот теперь главный вопрос, почему такой низкий результат для 12 виртуальных процессоров и такой необычайно высокий для одного?

Работа в любой виртуальной среде всегда медленней чем в физический. Процент замедления 7-15% в среднем. Процент колеблется от вендора, версии виртуалки, особенностей железа.

raskirill писал(а): в одной базе более 2 человек никогда не работает. В терминальном режиме будет работать около 15 пользователей с 10-20 базами одновременно.

Многое зависит от того, все ли пользователи будут в одной виртуалке или в разных.

Если в одной, то вам надо понимать, что ухудшается "изоляция" ресурсов и когда один пользователь "подвешивает" к примеру процессор, то как правило стардают все пользователи. Плюсом является запас мощности, т.е. каждому пользователю доступно много ресурсов. Обычно такую схему выбирают когда нагрузка по пользователям плохо прогназируемая.

Если у вас один пользователь дергает запрлату и другие пользователи этой базой не пользуются, вы можете попробовать вынести в отдельную виртуалку. Это позволит минимизировать влияние ресурсов, если вы запретите виртуалкам "разделять" ресурсы. Минусом привязывания является "избыточность" резервирования, а каждому конкретному пользователю меньше доступно общей мощности. Обычно изолируют того, кто 100% создает наибольшую нагрузку, а другие при этом "страдать" не должны.
Производительность по нашему тесту в данной ситуации - вопрос вторичный.
Гилёв Вячеслав
 
Сообщений: 2436
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Вопрос по тесту 1С

Сообщение raskirill » 06 ноя 2013, 21:40

Спасибо за ответ и информацию.

У меня тут основной вопрос скорее в работе теста. А именно, почему на одной и той же системе с одним сокетом и одним виртуальным процессором (грубо говоря однопроцессорная одноядерная машина) тест дает 35 баллов, а с 2 сокетами и 12 процессорами (грубо говоря двухпроцессорная машина с 6 ядрами каждый) дает всего 24 балла?

Где искать ответ, это настройка системы или это 1с и издержки теста?
raskirill
 
Сообщений: 2
Зарегистрирован: 06 ноя 2013, 17:45

Re: Вопрос по тесту 1С

Сообщение Гилёв Вячеслав » 07 ноя 2013, 01:41

raskirill писал(а):Спасибо за ответ и информацию.

У меня тут основной вопрос скорее в работе теста. А именно, почему на одной и той же системе с одним сокетом и одним виртуальным процессором (грубо говоря однопроцессорная одноядерная машина) тест дает 35 баллов, а с 2 сокетами и 12 процессорами (грубо говоря двухпроцессорная машина с 6 ядрами каждый) дает всего 24 балла?

Где искать ответ, это настройка системы или это 1с и издержки теста?


С таким же успехом вы можете спросить почему тест G1C http://www.gilev.ru/testg1c/ не оценивает скорость процессоров.
Если коротко, то ПОТОМУ ЧТО! :)

А если серьезно, в описании http://www.gilev.ru/tpc1cgilv/,
цитирую
Не важно, хороший или плохой результат — это результат работы ПЛАТФОРМЫ на вашем «железе». В случае клиент — серверного варианта это результат сложной цепочки прохождения запросов по различным участкам. Вы получаете общий фактический результат, который определяется самым узким местом в системе. Узкое место есть всегда.

Другими словами, и настройки СУБД, и настройки ОС, и оборудование оказывают влияние на общий командный результат.

Т.е. тест tpc не тестирует процессор, он тестирует способность сервера выполнить например "закрытие месяца", т.е. разница в приведенных показаниях скорее всего точно также будет отслеживаться при выполнении закрытия месяца. Во всяком случаи цель ставилась не асбтрактно посчитать "флопсы" (это в чем измеряется суммарная мощность проца), а именно "полезность" для реальных задач в 1С.
Тут можно как угодно объяснять (например потому что 1С далеко не идеальная многопоточная система или еще как то), но важнее что это работает именно так и это надо иметь ввиду.

Очень рекомендую дополнить тест результатами http://www.gilev.ru/testg1c/ и тогда я смогу дать больше полезной информации.
Гилёв Вячеслав
 
Сообщений: 2436
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Вопрос по тесту 1С

Сообщение Pavel » 20 дек 2013, 06:45

Добрый день.

Не являюсь специалистом по 1с, но давно занимаюсь гипервизорами.
В том, что при большом числе выданных процессоров и ядер виртуалка может быть медленнее, чем при одном выданном процессоре ничего странного нет. У VMWare существует объемный документ, как правильно настраивать количество процессоров и ядер, соотносить с физическим, как работает NUMA и vNUMA и пр.

Если вкратце - подход "одмина" выдать побольше ресурсов "а оно так быстрее заработает" в корне неправильный. Гипервизор будет тратить много ресурсов в попытке распаралеллить то, что вы навыдавали ВМ между физическими процессорами и производительность снизится. Поймать эту проблему тоже относительно просто - смотрите в гипервизоре параметр "CPU ready" для этой виртуалки. Если он превышает 20% - есть проблемы.
Pavel
 
Сообщений: 1
Зарегистрирован: 20 дек 2013, 06:38

Re: Вопрос по тесту 1С

Сообщение Гилёв Вячеслав » 20 дек 2013, 20:41

Pavel писал(а):Добрый день.

Не являюсь специалистом по 1с, но давно занимаюсь гипервизорами.
В том, что при большом числе выданных процессоров и ядер виртуалка может быть медленнее, чем при одном выданном процессоре ничего странного нет. У VMWare существует объемный документ, как правильно настраивать количество процессоров и ядер, соотносить с физическим, как работает NUMA и vNUMA и пр.

Если вкратце - подход "одмина" выдать побольше ресурсов "а оно так быстрее заработает" в корне неправильный. Гипервизор будет тратить много ресурсов в попытке распаралеллить то, что вы навыдавали ВМ между физическими процессорами и производительность снизится. Поймать эту проблему тоже относительно просто - смотрите в гипервизоре параметр "CPU ready" для этой виртуалки. Если он превышает 20% - есть проблемы.


Спасибо за информацию!
Гилёв Вячеслав
 
Сообщений: 2436
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Вопрос по тесту 1С

Сообщение hoolio_g » 23 янв 2014, 13:00

Отвечу на вопрос - почему процессор с меньшим количеством ядер работает лучше чем два сокета и более мощный процессор. Потому что 1С - однопоточная хреновина. Попробуйте запустите диспетчер задач, при максимальной загрузке, к примеру, 4-ех ядерный проц будет загружен на 25% (если система только 1с занята), 8 ядерник - уже 13% загрузки. По сути это значит, что одно ядро загружено на 100%, остальные не используются. Винда уже сама раскидывает по потокам. Приведу свой пример. Ради эксперимента отключил все ядра на своём AMD FX-8320, оставив один модуль (два потока) на частоте 4,8 ГГц - результат был 60 баллов. Затем вернул все ядра (4 модуля по 2 потока в каждом - итого - 8 потоков) на частоте 4,7 ГГц - результат был 61 балл. Простым языком, на одинаковой частоте что 2 ядра у проца, что 8 - результат одинаков, потому что 1С не понимает больше двух ядер (или одного иногда :D ). А когда используется многоядерная система в ход вступает технология Cool'n'Quiet (от АМД) или SpeedStep, C1E (у Интел) - снижается частота ядер и напряг на проц. Поэтому общая производительность не страдает, но именно однопоток страдает (отсюда и низкие результаты у многоядерных процов)

Мои советы:
-отключить энергосберегающие технологии в BIOS на время
-установить фиксированный множитель процессора
-в политике электропитания венды выставить минимальное и максимальное значение состояний процессора 100%
-установить фиксированную частоту шины тактового генератора BCLK

И можете прогонять заново. Уверен, результат изменится.
hoolio_g
 
Сообщений: 4
Зарегистрирован: 23 янв 2014, 12:48

Re: Вопрос по тесту 1С

Сообщение Гилёв Вячеслав » 23 янв 2014, 15:05

hoolio_g писал(а):Отвечу на вопрос - почему процессор с меньшим количеством ядер работает лучше чем два сокета и более мощный процессор. Потому что 1С - однопоточная хреновина. Попробуйте запустите диспетчер задач, при максимальной загрузке, к примеру, 4-ех ядерный проц будет загружен на 25% (если система только 1с занята), 8 ядерник - уже 13% загрузки. По сути это значит, что одно ядро загружено на 100%, остальные не используются. Винда уже сама раскидывает по потокам. Приведу свой пример. Ради эксперимента отключил все ядра на своём AMD FX-8320, оставив один модуль (два потока) на частоте 4,8 ГГц - результат был 60 баллов. Затем вернул все ядра (4 модуля по 2 потока в каждом - итого - 8 потоков) на частоте 4,7 ГГц - результат был 61 балл. Простым языком, на одинаковой частоте что 2 ядра у проца, что 8 - результат одинаков, потому что 1С не понимает больше двух ядер (или одного иногда :D ). А когда используется многоядерная система в ход вступает технология Cool'n'Quiet (от АМД) или SpeedStep, C1E (у Интел) - снижается частота ядер и напряг на проц. Поэтому общая производительность не страдает, но именно однопоток страдает (отсюда и низкие результаты у многоядерных процов)

Мои советы:
-отключить энергосберегающие технологии в BIOS на время
-установить фиксированный множитель процессора
-в политике электропитания венды выставить минимальное и максимальное значение состояний процессора 100%
-установить фиксированную частоту шины тактового генератора BCLK

И можете прогонять заново. Уверен, результат изменится.


вместо изобретения велосипеда ознакомьтесь с
http://www.gilev.ru/bestproc1c/
http://www.gilev.ru/systemperfomance/

все уже придумано...
Гилёв Вячеслав
 
Сообщений: 2436
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Вопрос по тесту 1С

Сообщение hoolio_g » 24 янв 2014, 19:20

Гилёв Вячеслав писал(а):вместо изобретения велосипеда ознакомьтесь с
http://www.gilev.ru/bestproc1c/
http://www.gilev.ru/systemperfomance/

все уже придумано...

У вас ничего не сказано про процессоры АМД. Я же расписал всё подробно. Более правильно из под BIOS такие системные настройки производить.
hoolio_g
 
Сообщений: 4
Зарегистрирован: 23 янв 2014, 12:48

Re: Вопрос по тесту 1С

Сообщение Гилёв Вячеслав » 24 янв 2014, 21:57

hoolio_g писал(а):
Гилёв Вячеслав писал(а):вместо изобретения велосипеда ознакомьтесь с
http://www.gilev.ru/bestproc1c/
http://www.gilev.ru/systemperfomance/

все уже придумано...

У вас ничего не сказано про процессоры АМД. Я же расписал всё подробно. Более правильно из под BIOS такие системные настройки производить.

по поводу поцессоров АМД - если важен не бюджет, а конечный результат включая производительность, то лучше не берите АМД вообще
Гилёв Вячеслав
 
Сообщений: 2436
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Вопрос по тесту 1С

Сообщение hoolio_g » 30 янв 2014, 09:55

Гилёв Вячеслав писал(а):по поводу поцессоров АМД - если важен не бюджет, а конечный результат включая производительность, то лучше не берите АМД вообще

В своём ценовом сегменте AMD выигрывает. Пример: AMD FX-6300 за 3 850 руб. - аналогов от интела и близко нет 8-)
hoolio_g
 
Сообщений: 4
Зарегистрирован: 23 янв 2014, 12:48

Re: Вопрос по тесту 1С

Сообщение Гилёв Вячеслав » 30 янв 2014, 20:59

hoolio_g писал(а):
Гилёв Вячеслав писал(а):по поводу поцессоров АМД - если важен не бюджет, а конечный результат включая производительность, то лучше не берите АМД вообще

В своём ценовом сегменте AMD выигрывает. Пример: AMD FX-6300 за 3 850 руб. - аналогов от интела и близко нет 8-)


нет, если вам нужно купить ДЕШЕВУЮ фигню, то конечно, дешевле чем в АМД ни где нет...
Гилёв Вячеслав
 
Сообщений: 2436
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Вопрос по тесту 1С

Сообщение Gloomy_nort » 13 окт 2014, 08:05

привет всем!
подскажите, как истолковать тест однопоточный на 7.01 а многопоточный 25231?
Gloomy_nort
 
Сообщений: 1
Зарегистрирован: 13 окт 2014, 07:30

Re: Вопрос по тесту 1С

Сообщение Гилёв Вячеслав » 16 окт 2014, 10:05

Gloomy_nort писал(а):привет всем!
подскажите, как истолковать тест однопоточный на 7.01 а многопоточный 25231?

странный вопрос, тест сам дает оценку ( плохо )
Гилёв Вячеслав
 
Сообщений: 2436
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва


Вернуться в Нагрузочное тестирование

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron