Тестирование производительности ZennoPoster (ZennoJSBench). У кого мощнее сервер?

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
Тест производительности, бенчмарк (англ. benchmark) — контрольная задача, необходимая для определения сравнительных характеристик производительности компьютерной системы. © Википедия

Давно уже хотел проверить на сколько мой сервер слабее других конфигураций, да и много кто спрашивал сколько он тянет браузерных шаблонов. Наконец понял как можно сделать некий "синтетический" тест (в том понимании, что основываться на нем на 100% не стоит, но он покажет хоть какие-то результаты и их нужно сравнивать с другими). Тест сделал на основе JavaScript с помощью бенчмарка JetStream. Выбрал именно его, т.к. он делает множество тестов, используя современные библиотеки, которые могут встречаться на любом сайте.

Сразу же скажу, что лучше проводить именно такое контрольное тестирование на одном и том же шаблоне, с помощью одной и той же методологии (бенчмарка), т.к. в реальной работе можно запускать 50 браузерных шаблонов на очень легком сайте и система не будет загружаться. Или можно запускать 5 браузерных шаблонов на очень тяжелом сайте на этой же конфигурации и система будет загружена на 100%.

Плюс, основываясь на этом тесте - в теории можно будет пробовать "тюнить" настройки зенки и смотреть улучшилось или ухудшилось после изменения (конечно же, в первую очередь можно будет понять: "1 поток на процесс - это всё таки быстрее или медленнее?!!!"). Да и после выхода новых версий - с помощью этого шаблона тоже можно будет понять - стало ли лучше (например, если сменят/обновят браузерный движок).

Предупреждаю: тест может загрузить вашу систему под 100% (нагрузка на ЦП)!

Поэтому перед его запуском обязательно нужно выключить все свои работающие проекты + перезапустить зенку (это важно!), если кроме зенки на сервере что-то ещё трудится - лучше выключить другой софт.


Шаблон в аттаче, пользоваться им очень просто:
  1. Добавляете его в ZennoPoster (не в ProjectMaker, т.к. тестирование нужно проводить в многопоточном режиме).
  2. Нажатием на кнопку "+1" добавляете одно выполнение шаблона. В первый запуск шаблона сразу же добавится количество выполнений и параллельных потоков, равных количеству процессоров в системе.
  3. После этого сидим и ждем (иногда по 20 минут), мониторим лог, что не вывалились какие-то ошибки (если вывалятся, то всё тестирование зря, даже 1 потерянный поток - ухудшит общие результаты).
    Если вывалились ошибки - пробуем заново (или пишем тут, если вывалилось что-то странное).
  4. После того, как все потоки пройдут (без ошибок) - добавляете ещё одно задание на выполнение - после этого у вас в логе должны появится результаты тестирования (если запустится ещё одно тестирование - это плохо, значит ранее были ошибки).
  5. Если нужно запустить тестирование повторно - удалите файл results.txt, что лежит в директории с проектом.

В итоге после выполнения вышеописанных действий - вы получите сумму показателей для своей конфигурации. Чем она выше - тем мощнее система.


Померяемся писюнами серверами?


PS: если есть профи в плане "бенчей" - можете переделать шаблон и выложить свою версию, я буду только благодарен, т.к. я в этом немного "профан".

UPD Октябрь 2020. Актуальный шаблон находится тут
Спасибо @Ha9p за исправление.

UPD Июнь 2022. Актуальный шаблон находится тут (7.7.1.0+)
Спасибо @udder за наводку и @TurboM за исправление.
 
Категория
Полезно

Вложения

Для запуска проектов требуется программа ZennoPoster.
Это основное приложение, предназначенное для выполнения автоматизированных шаблонов действий (ботов).
Подробнее...

Для того чтобы запустить шаблон, откройте программу ZennoPoster. Нажмите кнопку «Добавить», и выберите файл проекта, который хотите запустить.
Подробнее о том, где и как выполняется проект.

Последнее редактирование модератором:

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
Очень прошу выкладывать результаты в следующем формате (можете копировать прямо оттуда):
Код:
[B]Результат выполнения шаблона:[/B]
[IMG]ссылка на скриншот[/IMG]

[B]Конфигурация сервера:[/B]
[IMG]ссылка на скриншот[/IMG]

[SPOILER="Настройки инстанса"]
[IMG]ссылка на скриншот[/IMG]
[/SPOILER]

[B]Количество потоков в одном процессе:[/B] число

[B]Версия ZennoPoster:[/B] версия



Мои результаты:

Результат выполнения шаблона:


Конфигурация сервера:


Более детальное описание конфига


Количество потоков в одном процессе: 1

Версия ZennoPoster: 5.11.4.0
 
Последнее редактирование:

Dimazzan

Client
Регистрация
05.11.2014
Сообщения
337
Благодарностей
126
Баллы
43
Результат: 1303,76 (hyper threading выключен)
Результат: 1686,41 (hyper threading включен)

Xeon X5670 / 2.93 GHz / Boost 3.33 GHz / 6 ядер - 2шт
GPU ускорение: выкл
Потоков на процесс: 1
 
Последнее редактирование:
  • Спасибо
Реакции: Lord_Alfred

SHELBY

Client
Регистрация
09.09.2016
Сообщения
238
Благодарностей
287
Баллы
63
Результат выполнения шаблона:


Конфигурация ноута:




Количество потоков в одном процессе: 5
 
Последнее редактирование:
  • Спасибо
Реакции: Lord_Alfred

Oleg1987

Client
Регистрация
11.08.2014
Сообщения
1 005
Благодарностей
574
Баллы
113
Результат по 4 параллельным потокам (по числу ядер в систе)
Сумма результатов: 676,17

Intel i7 4790k 4.0GHz Turbo Boost 4.4Ghz, 32GB DDR3 1600Mhz[/IMG]


Количество потоков в одном процессе: 1
 
Последнее редактирование:
  • Спасибо
Реакции: Lord_Alfred

DmitryAk

Client
Регистрация
14.12.2016
Сообщения
865
Благодарностей
807
Баллы
93
Результат выполнения шаблона:
upload_2017-7-28_0-34-16.png


upload_2017-7-28_0-35-9.png
upload_2017-7-28_0-35-54.png

Количество потоков в одном процессе: 1
 
  • Спасибо
Реакции: Lord_Alfred

sitnem

Client
Регистрация
03.12.2016
Сообщения
109
Благодарностей
69
Баллы
28

Оперативка: DDR3 1600Mhz
Видеокарта: GTX 1060

Количество потоков в одном процессе: 1
 

Вложения

Последнее редактирование:
  • Спасибо
Реакции: DenisK и Lord_Alfred

Dimazzan

Client
Регистрация
05.11.2014
Сообщения
337
Благодарностей
126
Баллы
43

sitnem

Client
Регистрация
03.12.2016
Сообщения
109
Благодарностей
69
Баллы
28
Последнее редактирование:

Vavildi

Client
Регистрация
29.02.2016
Сообщения
186
Благодарностей
102
Баллы
43
Сервер за 7000 руб.


Количество потоков в одном процессе: 3
Zennoposter 5.9.9.1
 
Последнее редактирование:
  • Спасибо
Реакции: DenisK

DmitryAk

Client
Регистрация
14.12.2016
Сообщения
865
Благодарностей
807
Баллы
93

Vavildi

Client
Регистрация
29.02.2016
Сообщения
186
Благодарностей
102
Баллы
43
Сервер за 30000+ руб.



Количество потоков в одном процессе: 3
Zennoposter 5.9.9.1
 
Последнее редактирование:

up_lvl

Client
Регистрация
02.09.2014
Сообщения
129
Благодарностей
51
Баллы
28
стоило бы указывать версию зенопостера. предполагаю на 5.9.9.1 производительность будет выше.
 

up_lvl

Client
Регистрация
02.09.2014
Сообщения
129
Благодарностей
51
Баллы
28
Сервер за 60$ Hetzner. ЗП 5.11.3.0
Screenshot_4.png

103.40
103.66
107.67
103.50
104.87
107.83
105.75
104.68
----------
841
Screenshot_2.png
Screenshot_3.png
Количество потоков в одном процессе: 1
 
Последнее редактирование:

DenisK

Client
Регистрация
28.06.2016
Сообщения
584
Благодарностей
276
Баллы
63
Пару тестов:

1.


Количество потоков в одном процессе: 1
Zennoposter 5.9.9.1

2.


Количество потоков в одном процессе: 10
Zennoposter 5.9.9.1

======================================

При 10 потоках в 1 процессе, шаблон выполнялся 30-40+ минут. При 1 потоке в процессе результат на скриншоте 5-6 минут.

Но при этом, при 10 - 20-25% процессора было занято, при 1 потоке - 90-100%...

Как считать эффективность и настраивать постер, нужно тестить. Настройки инстанса важны, но кол-во потоков уже заставляет задуматься.
 
Последнее редактирование:
  • Спасибо
Реакции: Lord_Alfred

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
При 10 потоках в 1 процессе, шаблон выполнялся 30-40+ минут. При 1 потоке в процессе результат на скриншоте 5-6 минут.

Но при этом, при 10 - 20-25% процессора было занято, при 1 потоке - 90-100%...
Когда 1 поток на процесс - ядро используется полностью, а когда 10 потоков на процесс - возникают ожидания, поэтому нагрузка меньше на него будет, но эффективность падает (что и тесты показали).
То есть при 10 потоках на процесс - можно больше одновременных потоков запустить, но вот толку от этого будет мало... (скорость работы резко упадет)
 
Последнее редактирование:

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
стоило бы указывать версию зенопостера. предполагаю на 5.9.9.1 производительность будет выше.
Хорошая идея, добавлю этот пункт в шаблон.
Надеюсь, кто сможет - дополнит у себя пост (редактирование, по-моему, должно быть доступно в этом разделе).

PS: насчет производительности на 5.9.9.1 - вот тут не факт. Лучше это проверить кому-нибудь, конечно. Но, имхо, на нем должно быть медленнее или так же (вроде движок фф там ещё старее, но могу ошибаться)
 

Nats1

Client
Регистрация
15.04.2015
Сообщения
172
Благодарностей
166
Баллы
43
del
 
Последнее редактирование:
  • Спасибо
Реакции: Lord_Alfred

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
Протестировал различные настройки в проекте ради интереса, сразу скажу, что разницы - нет. Что странно.

Конфигурация сервера: Выше скрин, ничего не менялось
Настройки инстанса: Выше скрин, ничего не менялось
Количество потоков в одном процессе: 1
Версия ZennoPoster: 5.11.4.0


  1. Обычный запуск шаблона
    Настройки:


    Результат:

  2. Выделенный процесс
    Настройки:

    Результат:

  3. Браузер без отображения содержимого
    Настройки:

    Результат:

Эти изменения на небольшое количество единиц - не показатель. Я ожидал чего-то большего, не судьба...

PS: возможно, на обычных сайтах - и есть разница при использовании этих настроек. Но в этом частном примере - разницы никакой нет. Поэтому появились сомнения на этот счет
 
Последнее редактирование:

one

Client
Регистрация
22.09.2015
Сообщения
6 475
Благодарностей
1 200
Баллы
113
На более слабых компах различие заметно по опции "Браузер без отображения содержимого". На мощных не заметно.
 

sergodjan66

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
18 172
Благодарностей
8 036
Баллы
113
upload_2017-7-31_14-58-16.png


ради интереса решил протестировать свой i3-530 (2 ядра, 4 потока), чтобы выяснить насколько мой раб. комп УГ (правда использую его для ПМ исключительно) по сравнению с вашими.. :-)
во-первых: 2 ядра, а поднимается 4 потока, вместо 2-х..
во-вторых: вываливается ошибка, как на скриншоте, пробовал несколько раз запускать..
 

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
Посмотреть вложение 22358

ради интереса решил протестировать свой i3-530 (2 ядра, 4 потока), чтобы выяснить насколько мой раб. комп УГ (правда использую его для ПМ исключительно) по сравнению с вашими.. :-)
во-первых: 2 ядра, а поднимается 4 потока, вместо 2-х..
во-вторых: вываливается ошибка, как на скриншоте, пробовал несколько раз запускать..
А логических процессоров сколько? HT есть? Там из C# приходит инфа о количестве процессоров, поэтому столько потоков и запускается)

По поводу ошибки - странно. Какая версия ZP? Там тот JS, что не может выполнится - всего лишь запускает тест. В ProjectMaker тоже так фейлится? Можно тогда поменять на обычный Rise->Click то действие с запуском теста
 
  • Спасибо
Реакции: sergodjan66

sergodjan66

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
18 172
Благодарностей
8 036
Баллы
113
А логических процессоров сколько? HT есть? Там из C# приходит инфа о количестве процессоров, поэтому столько потоков и запускается)

По поводу ошибки - странно. Какая версия ZP? Там тот JS, что не может выполнится - всего лишь запускает тест. В ProjectMaker тоже так фейлится? Можно тогда поменять на обычный Rise->Click то действие с запуском теста
в таск-менеджере 4 графика (4 процессора типа), но процессор i3-530 физически имеет 2 ядра с HT..
в ПМ - ок, попробую..
 

justhelen

Client
Регистрация
18.11.2009
Сообщения
267
Благодарностей
134
Баллы
43
Всем привет :-) Lord_Alfred заставил меня закодить этот тест на Селениуме. Так что, все, кто хочет, могут провести такой же тест с использованием любого браузера на хромиуме, любой версии ФФ и ИЕ. Если вам интересно сравнить с Зенкой :-) Гарантии, что сработает именно с вашим любимым браузером, нет. Скорей всего сработает, но может и нет. На одном компе может заработать, на другом нет :-) Я ничего не буду фиксить, прога as is.

Вот ссылка: https://github.com/jane-cook/selenium-benchmark

В архивет есть readme.txt. Почитайте перед запуском.
 
Последнее редактирование:

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
Спасибо @justhelen за то, что открыла глаза, что результат по этим тестам у хрома и фф может быть почти идентичный, что для меня было крайне удивительно (всегда думал, что хром будет впереди планеты всей). Да, скорее всего он будет кушать меньше ОЗУ, но быстродействие на сайтах, напичканных JS - будет таким же).

Выкладываю свои результаты по бенчу через тест селениума

Хром ( 60.0.3112.78 ):


Firefox ( 54.0.1 (64-бит) ):


Яндекс.Браузер и IE, к сожалению, не удалось у меня затестить, пол дня вчера ловили баги, но в итоге так и не вышло. Но по субъективным ощущениям (т.к. иногда тесты запускались, но не всей пачкой или фейлились перед окончанием) - IE у меня был бы сильно медленнее (что-то около 1000-1100), а вот Яндекс.Браузер показал бы лучший результат (думаю, около 1600), но это, конечно, без тестирования - не точно.

К сожалению, протестить их (или, например, ещё и Вивальди или Эпик) - времени уже нет. Но если кто-то заморочится - будет любопытно узнать (вместе с результатами по фф/хрому, чтобы было от чего отталкиваться) :-)
 
  • Спасибо
Реакции: justhelen

justhelen

Client
Регистрация
18.11.2009
Сообщения
267
Благодарностей
134
Баллы
43
Яндекс.Браузер и IE, к сожалению, не удалось у меня затестить, пол дня вчера ловили баги, но в итоге так и не вышло. Но по субъективным ощущениям (т.к. иногда тесты запускались, но не всей пачкой или фейлились перед окончанием) - IE у меня был бы сильно медленнее (что-то около 1000-1100), а вот Яндекс.Браузер показал бы лучший результат (думаю, около 1600), но это, конечно, без тестирования - не точно.
Кстати, я протестила у себя вчера ещё несколько раз с Яндекс.Браузером и у меня все разы получилось затестить :-) И с ИЕ тоже. В общем, твой комп кто-то сглазил :-)
 

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 919
Благодарностей
3 809
Баллы
113
Кстати, я протестила у себя вчера ещё несколько раз с Яндекс.Браузером и у меня все разы получилось затестить :-) И с ИЕ тоже. В общем, твой комп кто-то сглазил :-)
Сейчас ещё раз на всякий случай скачал твой последний билд с гитхаба, переустановил яндекс.браузер, попробовал поменять хромдрайвер, но не вышло. Выходит - да, проблема локально только у меня появляется, а от чего - не понятно :-)
 

justhelen

Client
Регистрация
18.11.2009
Сообщения
267
Благодарностей
134
Баллы
43
Сейчас ещё раз на всякий случай скачал твой последний билд с гитхаба, переустановил яндекс.браузер, попробовал поменять хромдрайвер, но не вышло. Выходит - да, проблема локально только у меня появляется, а от чего - не понятно :-)
Это может быть из-за версии браузера. По крайней мере, я видела на stackoverflow, люди пишут, что даже некоторые версии хрома у них ни в какую не работают. В итоге они делают даунгрейд, потому что непонятно, как решить эту проблему. Что самое смешное, эти же версии хрома работают у других людей :-) И с той же самой прогой.

Тут немного другая ситуация, я например качала последний Яндекс.Браузер. Может, тут наоборот апгрейд нужен? :-) По "переустановил" не совсем понятно, последнюю версию поставил или нет. А ещё я тестила не на сервере (ну уж очень мне не хотелось вырубать своего бота там), а на своём компе. У меня Windows 7. Вполне может быть, что из-за этого. В общем, это какой-то баг или хромдрайвера или Яндекс.Браузера (я конечно как нелюбитель последнего склоняюсь ко 2му варианту :-)). А вот ИЕ вроде бы должен был начать работать.

Кто думает о переходе на Селениум, обратите внимание на вот это всё :-) Там бывает такое. Не для слабонервных, в общем :-)
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)