Вот уже бьольше недели бьюсь над проблемой. Самопроизвольно отваливаются 1-й и 3-й клиенты. пишут "interrupted" и что сигнал на закрытие они получили от меня.
Клиенты сидят на одной и той же паре ядер что вызывает простой половины из 4-х ядер и потерю ппд, до этого таких проблем не было. Камень не перегревается. Температура около 70 градусов.
Самое интересной что 2-й и 4-й клиенты, сидящие на другой паре ядер считают как ни в чем не бывало и ни разу за это время не отвалились.
В чем может быть косяк?
Member
Статус: Не в сети Регистрация: 05.01.2003 Откуда: г.Ногинск
Alexey.Solodovnikov iptables -A OUTPUT -p TCP -d 171.64.65.63 -j REJECT --reject-with tcp-reset
Ну вроде вот так можно сделать ,
или почитать доку тут.
Member
Статус: Не в сети Регистрация: 23.12.2007 Откуда: TSC!Russia Team
Спасибо, не помогает - пишет, что не может соединиться с серверов и уходит в цикл повторных попыток, не перенаправляя на новый. Проблема решилась копированием задания (каталог work + queue.dat) с другого компа, который подключен к серверу с "нормальными" заданиями (2604, 2605).
TSC! Russia Vice-captain
Статус: Не в сети Регистрация: 21.03.2006 Откуда: Петербург
Alexey.Solodovnikov писал(а):
Спасибо, не помогает
Что значит не помогает? Цель была блокировать ip и iptables нормально всё заблокировал. А то, что не отправляет на другие сервера, так это просто так распределяет задания в данный момент раздающий сервер.
_________________ Революционеров можно убить, идеи — никогда.
Member
Статус: Не в сети Регистрация: 23.12.2007 Откуда: TSC!Russia Team
Так как все больше людей применяют Quad-ы для фолдинга и устанавливают на нем Linux и SMP клиента для увеличения PPD и стабильности рассчетов, думаю следующая информация будет им очень интересна.
После первого запуска SMP клиента под XUbuntu 7.10 на Q6600 я заметил, что вместо привычных заданий с 2605, 2653 по 1760 очков с серверов (171.64.65.56, 171.64.65.64), которые приходили на мой Quad под WinXP докторских сервер начал отправлять меня на сервер 171.64.65.63 с заданиями (3060, 3062),
PPD которых получалось ниже, чем под WinXP. Получалось, что переход с точки зрения PPD выглядел напрастным
Почитав форумы зарубежных коллег я нашел похожие сообщения. Многие отмечали, что их навсегда прикрепляют к "linux+quad" серверу 171.64.65.63, другие сообщали, что такого с ними не происходит. Я решил побороться с данным фактом, ибо переползать на WinXP не хотелось, т.к. SMP на Linux работает быстрее на тех же заданиях, что и под WinXP и на порядок стабильнее.
Попытка N1: заблокировать сервер 171.64.65.63 через iptables - это удалось, но клиент после этого входил в бесконечный цикл, пытаясь подключится к серверу через некоторый промежуток времени.
Попытка N2: прозрачно подменять через тот же iptables адрес сервера с 171.64.65.63 на 171.64.65.56 при помощи следующих команд:
Но так как я не силен в Linux этот метод у меня не заработал - возможно, более опытные товарищи позже укажат на ошибку.
Попытка N3: родилась следущая идея - на "нехороший" сервер отправлялись только Linux клиенты, которые детектировали 4 ядра, значит если сделать так, что клиент будет всегда детектировать только 2 ядра, то его будут направлять на "хорошие" сервера. Чтобы проверить свою идею я установил прокси сервер
Chables Web Debugging Proxy (http://xk72.com/charles/) и подглядел, что отправляет клиент на сервер (http://assign.stanford.edu:8080), который и решает, с какого сервера будут выдаваться задания. В передаваемом запросе было явно видно _количество обнаруженные ядер_.
Я подкорректировал fah клиента для Linux, заменой пары байт и моя версия успешно стала успешно детектировать всегда только 2 ядра на Quad и стала получать направление на "хорошие" сервера. PPD заметно вырос. URL моей версии тут: (пишите в личку)
PS. С моей точки зрения проект Folding@Home страшно полезен тем, кто хочет чему-то научиться. Это не обывательская Rosetta@Home, где ты просто скачиваешь красивый инсталлятор под любую платформу и клиент просто сам делает все за тебя, красиво показывая в одном окне _всю_ информацию, какую только возможно придумать + через Web морду ты можешь наблюдать за всеми своими клиентами. Folding@Home - это битва, начиная с выбора инсталлятора, где тебе надо
самому решить, SMP клиентом ты будешь считать или нет, потом битва продолжается при установке клиента, где тебе надо не забыть запустить install.bat, потом битва продолжается при настройке клиента, потом при остановке, зависании и перезапуске. Под Linux битва идет за PPD, который падает по сравнению с PPD под Windows. Далее битва с мониторингом клиента доходит до состояния, когда тебе проще написать свой монитор (если ты программист), чем собрать или использовать
готовые После тебя посещает мысль написать свою статистику (хотя бы для своей команды , т.к. текущие пересчитывают обновляются очень медленно.
Вот за этот дух битвы я и люблю Folding@Home!
Последний раз редактировалось Alexey.Solodovnikov 23.01.2008 22:54, всего редактировалось 1 раз.
TSC! Russia Vice-captain
Статус: Не в сети Регистрация: 21.03.2006 Откуда: Петербург
Alexey.Solodovnikov Хорошая идея, но за ковырянее в клиенте доктора по головке не погладят. И подмена ip адресов ничего не даст, соединятся не будет, под Win уже проходили.
"Каждая проблема таит в себе бесценный дар. И ты создаешь себе проблемы - ведь эти дары тебе крайне необходимы". Ричард Бах.
_________________ Революционеров можно убить, идеи — никогда.
Member
Статус: Не в сети Регистрация: 23.12.2007 Откуда: TSC!Russia Team
Behc писал(а):
Хорошая идея, но за ковырянее в клиенте доктора по головке не погладят.
А мы им ничего не скажем Соглашусь, метод топорный - но он работает. Более элегантый - либо добить iptables (я попрошу нашего админа глянуть завтра), либо взять исходники любого java http proxy и подправить их на предмет править POST данные или ответы или перенаправлять запросы на другие серевера. Все реально, заборем
PS. Я подебажил протокол с http://assign.stanford.edu:8080 - там первые 4 байта в
ответе - ip адрес сервера с заданиями, причем на сам сервер с заданиями так же в запросе на выдачу задания посылается его ip (возможно проверка против перенаправления через iptables).
PPS только бы они запрос на задание не подписывали ничем, иначе придется подпись реверсить
TSC! Russia Vice-captain
Статус: Не в сети Регистрация: 21.03.2006 Откуда: Петербург
Alexey.Solodovnikov Ага, TSC! впереди планеты всей. То WinSMP начинаем тестировать с внутренней альфаверсии за месяц до релиза, то в протоколах ковыряемся.
_________________ Революционеров можно убить, идеи — никогда.
Alexey.Solodovnikov А какие ДВА из четерых ядер он дектит? Именно 1-3 и 2-3?? Я спрашиваю именно из-за установки привязки к парам ядер.... вот и думаю, как будет дружить такая привязка с твоим детектом..
Member
Статус: Не в сети Регистрация: 23.12.2007 Откуда: TSC!Russia Team
Lev(RUS) писал(а):
Alexey.Solodovnikov А какие ДВА из четерых ядер он дектит? Именно 1-3 и 2-3?? Я спрашиваю именно из-за установки привязки к парам ядер.... вот и думаю, как будет дружить такая привязка с твоим детектом..
SMP клиент при старте пытается определить количество ядер в системе, чтобы не давать стартануть на компе с 1 ядром и чтобы передать информацию на сервер, чтобы получить оттуда адрес сервера для раздачи SMP заданий. Сам клиент не привязывает дочерние процессы к ядрам - в любом случае он стартует _4_ FahCore*.exe вне зависимости от 2 или 4 ядра имеется в системе. Привязку FahCore*.exe осуществляет taskset (как ты сам сам нам рекомендовал). Таким образом мой патч не влияет на привязку ядер, а просто подсовывает константу 2 для передачи на сервер.
вроде работает. По самой функции пока ничего сказать не могу, на момент подмены все 4 клиента были затарены 2653. Будет ясно через пару-тройку дней. Хотя я и так только одним/двумя ядрами хожу на 53 сервер, но все таки не хочется терять скорость. "Медленные" юниты пусть считают анонимусы.
TSC! Russia Vice-captain
Статус: Не в сети Регистрация: 21.03.2006 Откуда: Петербург
Alexey.Solodovnikov Да, если бы нас тут банили, то пришлось бы минимум всех "TSC! Russia member". Добавлено спустя 1 минуту, 26 секунд Кстати, под WinSMP кто-то тоже клиент правил, у меня только скачать не получилось. Chugumoto что ли...
_________________ Революционеров можно убить, идеи — никогда.
Member
Статус: Не в сети Регистрация: 17.02.2006 Откуда: Duisburg, NRW
Alexey.Solodovnikov Сделал папку, скачал и распаковал архив, заменил fah6. Пытаюсь запустить - execvp: Permission denied. Что я не так сделал?
ПС: вставил нормальный fah6 - запускается нормально.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 40
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения