14.3. Стресс-тест openMosix

(автор: Matt Rechenburg)

14.3.1. Общее описание

Стресс-тест сделан с целью тестирования openMosix кластера и ядра. Он выполняет несколько тестов приложений и ядра на предмет устойчивости, и различных опций openMosix (таких как миграция процессов, MFS…). В процессе теста кластер нагружается по максимуму, так что рекомендуется остановить другие приложения перед запуском теста. По окончании теста генерируется подробный отчёт о каждой протестированной компоненте.

14.3.2. Подробное описание

Стресс-тест openMosix запускает несколько программ, проверяющих функционирование системы в целом. Далее будет описано каждое из приложений теста.

  • distkeygen: Эта программа генерирует 4000 RSA ключей длиной 1024 бит каждый. При этом она распределяется на столько процессов, сколько процессоров в вашем openMosix кластере.

    Требования: компилятор gcc и библиотека OpenSSL. Copyright © 2001 by Ying-Hung Chen (GPL) http://www.yingternet.com/mosix

  • portfolio – это скрипт на perl, который симулирует портфолио для разных структур в заданный период времени. Этот метод основан на книге "The intelligent asset allocator", автор William Bernstein.

    Программа распространяется по лицензии GPL. Copyright © 2002 by Charles-E. Nadeau Ph.D. charlesnadeau@hotmail.com.

  • eatmem: Программа просто вычисляет синус+корень из числа 1000000 раз и выводит всё в файл (который разрастается при этом неимоверно). Этот тест запускается столько раз, сколько процессоров в вашем кластере.

  • forkit: Тест forkit похож на тест eatmem, но использует ветвление при создании множественных процессов (3*[количество_процессоров_в_кластере]) и не пишет ничего в файлы.

  • mfstest: Этот тест создаёт 10MB файл и копирует его по узлам туда-сюда. Предназначен для проверки возможностей oMFS.

  • kernel syscall test: Linux Test Project – это совместный проект SGI, IBM, OSDL и Bull, целью которого является создание набора тестов для open source сообщества, который проверяет надёжность и устойчивость Linux. The Linux Test Project представляет собой набор утилит для тестирования ядра Linux. Все заинтересовавшиеся могут присоединиться к проекту. За подробностями обращайтесь на: http://ltp.sf.net.

  • moving: Скрипт moving.sh перемещает start_openMosix_test.sh по всем узлам кластера во время выполнения всего стресс-теста. Таким образом, start_openMosix_test.sh мигрирует по узлам каждую минуту во время всего теста. В зависимости от того, сколько будет выполняться весь тест, программа может мигрировать 20-40 раз.

14.3.3. Установка комплекта strestest

Сначала загрузите .rpm или исходники с http://www.openmosixview.com/omtest/

  • при использовании исходных кодов:

    Распакуйте openMosix stress-test следующими командами, например, в /usr/local:

    gunzip omtest.tar.gz tar -xvf omtest.gz

    Затем перейдите в каталог /usr/local/omtest и выполните:

    ./compile_tests.sh

    Это установит необходимые модули perl и скомпилирует тестовые программы. Установка модулей требует прав root, но после установки можно запускать openMosix stress-test и с правами обычного пользователя (может понадобиться удалить старые временные файлы, созданные с правами пользователя root, т.к. обычный пользователь не сможет перезаписать их). После этого можно запускать тест командой:

    ./start_openMosix_test.sh

  • при использовании .rpm пакета

    Для успешной установки omtest.rpm необходимо наличие в системе сompat-libstdc++-7.3-2.96.110 (Для дистрибутива RedHat 8.0). Установить можно вот такой командой:

    rpm -ihv omtest.rpm

    После этого можно запускать openMosix stress test командой:

    start_openMosix_test.sh

    (.rpm пакет будет установлен в /usr/local/omtest). (Учтите, что также будут установлены и модули для perl).

14.3.4. Пример запуска тестов

[root@dhcp51 omtest]# ./start_openMosix_test.sh starting the openMosix stress test now! the results will be saved in: /tmp/openMosix-stress-test-report-03/16/2003-11:27:02.txt oMFS is not mounted at /mfs! oMFS-test will be disabled. Please mount oMFS before running this openMosix-test You will find instructions how to configure and use oMFS at: http://howto.ipng.be/openMosix-HOWTO/x222.htm#AEN243 (return to continue, ctrl-c for cancel)