Странное поведение двух Шреддеров

Тема в разделе "Машинное отделение", создана пользователем Мастер Икс, 18 апр 2006.

  1. Мастер Икс
    Оффлайн

    Мастер Икс Василий Щепетнев Команда форума

    Репутация:
    19
    Анализируя позицию, я решил в качестве основного движка поставить Шреддер 9, а вспомогательного (кибицера) - Шреддер 9.1 ЮСИ. Отвел им поровну памяти и стал смотреть, что получится. Интерфейс - Чесспрограмм 9
    Позицию они оценивали по-аптекарски, с совпадением до сотых, число рассмотреных узлов для рубежа глубины также совпадало. Но Шреддер 9 перебирал узлы куда шустрее, нежели его ЮСИ-собрат (95 килонод в секунду против 56), и потому выходил на рубеж определенной глубины тоже значительно быстрее. При этом диспетчер задач утверждал, что время работы процессора между ними распределено поровну (колебалось от 48 до 52 процентов для каждого).
    Тогда я поменял их местами: основным движком стал Шреддер-юси, а кибицером - Шредер-чессбэйс. позицию выбрал другую. Все равно Шреддер-ЮСИ по прежнему здорово отставал - вдвое! При том. что анализ опятьсовпадал до килонода и второго знака после запятой...
    Такие вот дела.
     
  2. krey
    Оффлайн

    krey Михаил Кройтор Команда форума Команда форума

    Репутация:
    1
    все дело в том, что UCI - не родной протокол для чессбэйс. потому он и поддерживается как-то не по родному...
     
  3. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    Может быть, причина в текстовом характере UCI-протокола и бинарном - внутреннего протокола CB?

    Т.е. время тратится на а) перекодировку представления ходов туда-сюда в текстовую нотацию; б) синхронизацию потоков ввода-вывода (уж не знаю как это в CB реализовано, в открытых оболочках используют pipes - они могут пожирать какое-то время)...
     
  4. Kirr
    Оффлайн

    Kirr Команда форума Команда форума

    Репутация:
    8
    Думаю скорее всего они просто откомпилированы разными компиляторами, либо под разные процессоры, или с различными опциями оптимизации. Текстовый UCI не должен давать настолько сильное замедление, ведь обмен сообщениями по UCI очень маленький по сравнению с собственно вычислениями движка. Если бы UCI давал заметное замедление, им бы уже давно не пользовались. (Хотя может быть что-то действительно не так с синхронизацией потоков ввода вывода, тогда это проблема адаптера UCI Chessbase).
     
  5. Мастер Икс
    Оффлайн

    Мастер Икс Василий Щепетнев Команда форума

    Репутация:
    19
    Я продолжил проверку, подключив иные движки, и пришел к выводу, что
    GUI от ChessBase (использовались GUI 10 Фрица и 9 ChessBase) не идеальны для UCI-движков.
    Сравнивая скорость работы Рыбки, Шреддеров 9 и 10 а также Тоги II, я заметил, что под GUI от ChessBase они работают примерно на 15 процентов медленнее, чем под GUI Shredder Classic.
    Почему - не знаю, но 15 процентов - довольно заметная потеря.
    Практический выход:
    1. Максимальная отдача от UCI-движка наблюдается под GUI Shredder Classic, и если идет ночной анализ позиции, это стоит учесть.
    2. Устраивая матчи на 2-х компьютерах, UCI-движки необходимо запускать под GUI Shredder Classic.
    3. Результаты матчей на 1 компьютере между движками ChessBase и UCI-движками некорректны из-за торможения UCI-движков в интерфейсе ChessBase. Собственно, ChessBase тормозит чужие движки.
     
  6. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    Интересно. А что можно сказать про Арену?
     
  7. Мастер Икс
    Оффлайн

    Мастер Икс Василий Щепетнев Команда форума

    Репутация:
    19
    Не знаю, Ареной пользуюсь редко.
    Но в любом случае продукты от СВ всегда играют только на своем поле, где их соперников хватают за футболки.