Форум

Пожалуйста или Регистрация для создания записей и тем.

Новости проекта RakeSearch

НазадСтраница 3 из 20Далее
Цитата: Yura12 от 30.12.2019, 21:38

И ещё 1 смежный вопрос - а ведутся ли сейчас работы, чтобы сделать приложение для R10 для счёта на видеокартах NVidia или AMD?

Возможно, Panda поделится новостями. Насколько я вижу, GPU-образно алгоритм не параллелится, были попытки запустить на GPU очень много заданий одновременно.

Цитата: hoarfrost от 30.12.2019, 23:32

А они изначально открыты, просто их не перекладывали в официальный репозитарий. Будет интересно увидеть результаты на Эльбрусах!

Спасибо, я так долго искал их, а они, оказывается, лежали практически под носом...

Вроде собралось (пришлось убрать UTF BOM из main.c (у нас компилятор пока не понимает их) и немного отредактировать app_data.xml, поменяв там название приложения на rakesearch10 - надеюсь, всё правильно сделал), запустил - первые задачи уже сделаны и высланы, одна из них даже проверена.

Я ведь правильно понимаю, что количество очков, выданных после проверки, пропорционально количеству вычислений в конкретной задаче (в то время, как сами задачи достаточно сильно отличаются по объёму вычислений)?

Если так, то забавно, но пока на всех моих компах ситуация пока что в пользу Эльбруса =) Разумеется, с поправкой на тактовую частоту, потому что поскольку мы привязаны к "толстым" техпроцессам, мы не можем задирать тактовую частоту так же, как Intel - зато можем напихать много ядер на кристалл (само ядро медленнее и экономичнее, но ядер при этом больше). Я ожидал худшего - учитывая то, что наш компилятор не умеет в -ftree-vectorize (он просто пропускает эту опцию), хотя на 8СВ это, вероятно, могло бы дать существенный прирост - потому что там (наконец-то) аппаратные SIMD-блоки, чего в предыдущих версиях процессоров не было (у меня был, например, трёхкратный прирост производительности на задаче HierarchicalSearchGCT из Einstein@home, когда я переписал их горячий цикл с ассемблера x86_64 на интринсики компилятора).

В общем, пока получается как-то так:

ID: 9779 minoriko Linux Эльбрус-8СВ (нативно) : 1500 МГц 134,66 с/очко = 4,950 пикоочков/такт
ID: 8906 kisume Linux Эльбрус-8С (трансляция x86_64 -> e8c): 1300 МГц 197,61 с/очко = 3,892 пикоочков/такт
ID: 5978 flandre Linux Core i7 x86_64: 3700 МГц 108,82 с/очко = 2,483 пикоочков/такт
ID: 5981 IBM-PC Win 7 Core i5 x86_64: 2800 МГц 90,88 c/очко = 3,929 пикоочков/такт

Буду продолжать следить за результатами - благо на нативном BOINC из всех моих проектов могут крутиться только Milkyway@home и Einstein@home, а теперь и RakeSearch будет. Надо же чем-то 32 ядра загрузить =)

Если есть более точный метод замера быстродействия, чем деление CPU time на количество очков и усреднение получившегося отношения по всем проверенным задачам (а потом вычисление 1 / (f * t) - количества очков на такт)  - то буду рад его узнать.

AlexA, hoarfrost и 2 отреагировали на эту запись.
AlexAhoarfrostSerValAxiy
Цитата: Igor Molchanov от 01.01.2020, 05:20
Цитата: hoarfrost от 30.12.2019, 23:32

А они изначально открыты, просто их не перекладывали в официальный репозитарий. Будет интересно увидеть результаты на Эльбрусах!

Спасибо, я так долго искал их, а они, оказывается, лежали практически под носом...

Вроде собралось (пришлось убрать UTF BOM из main.c (у нас компилятор пока не понимает их) и немного отредактировать app_data.xml, поменяв там название приложения на rakesearch10 - надеюсь, всё правильно сделал), запустил - первые задачи уже сделаны и высланы, одна из них даже проверена.

Я ведь правильно понимаю, что количество очков, выданных после проверки, пропорционально количеству вычислений в конкретной задаче (в то время, как сами задачи достаточно сильно отличаются по объёму вычислений)?

Если так, то забавно, но пока на всех моих компах ситуация пока что в пользу Эльбруса =) Разумеется, с поправкой на тактовую частоту, потому что поскольку мы привязаны к "толстым" техпроцессам, мы не можем задирать тактовую частоту так же, как Intel - зато можем напихать много ядер на кристалл (само ядро медленнее и экономичнее, но ядер при этом больше). Я ожидал худшего - учитывая то, что наш компилятор не умеет в -ftree-vectorize (он просто пропускает эту опцию), хотя на 8СВ это, вероятно, могло бы дать существенный прирост - потому что там (наконец-то) аппаратные SIMD-блоки, чего в предыдущих версиях процессоров не было (у меня был, например, трёхкратный прирост производительности на задаче HierarchicalSearchGCT из Einstein@home, когда я переписал их горячий цикл с ассемблера x86_64 на интринсики компилятора).

В общем, пока получается как-то так:

ID: 9779 minoriko Linux Эльбрус-8СВ (нативно) : 1500 МГц 134,66 с/очко = 4,950 пикоочков/такт
ID: 8906 kisume Linux Эльбрус-8С (трансляция x86_64 -> e8c): 1300 МГц 197,61 с/очко = 3,892 пикоочков/такт
ID: 5978 flandre Linux Core i7 x86_64: 3700 МГц 108,82 с/очко = 2,483 пикоочков/такт
ID: 5981 IBM-PC Win 7 Core i5 x86_64: 2800 МГц 90,88 c/очко = 3,929 пикоочков/такт

Буду продолжать следить за результатами - благо на нативном BOINC из всех моих проектов могут крутиться только Milkyway@home и Einstein@home, а теперь и RakeSearch будет. Надо же чем-то 32 ядра загрузить =)

Если есть более точный метод замера быстродействия, чем деление CPU time на количество очков и усреднение получившегося отношения по всем проверенным задачам (а потом вычисление 1 / (f * t) - количества очков на такт)  - то буду рад его узнать.

КРАСАВЧИК!

Если есть более точный метод замера быстродействия, чем деление CPU time на количество очков и усреднение получившегося отношения по всем проверенным задачам (а потом вычисление 1 / (f * t) - количества очков на такт)  - то буду рад его узнать.

Значит E8C и E8C2 - это всё-таки Эльбрусы! Мы давно заприметили компьютеры этого участника, но из-за того, что выступает за SETIKAH, а E8C может быть ещё и Power-системой, судя по Google - не были уверены. :)

Наиболее точный из фактически доступных методов сравнения - это щёлкнуть ссылку Compare / Сравнить либо на странице со свойствами компьютера, либо в таблице их перечнем (в списке своих компьютеров, или просто в списке TOP-компьютеров проекта).

Я ведь правильно понимаю, что количество очков, выданных после проверки, пропорционально количеству вычислений в конкретной задаче (в то время, как сами задачи достаточно сильно отличаются по объёму вычислений)?

Да, это именно так. Но проще всего смотреть на показатели на странице Compare - там идёт агрегирование на основе попарных сравнений с напарниками из workunit-ов. Поэтому чем больше будет посчитано - тем больше будет статистика. Только надо помнить, что результаты через 3 дня уходят в архив. :)

 Я ожидал худшего - учитывая то, что наш компилятор не умеет в -ftree-vectorize (он просто пропускает эту опцию),

Почти весь алгоритм - состоит из обычных конструкций вида while, for, if, обычных операторов, массивов и т.п. Исключение - только два идентичных места, где используется поиск первого выставленного бита в битовой маске - _BitScanForward и __builtin_ffs, насколько я понимаю, приходящие к инструкции bsf в случае x86 и x86_64. Для ARM там стоит ассемблерная вставка из rbit + clz. Если компилятор Эльбруса обрабатывает эти два фрагмента кода аналогичным образом, то процессор будет работать в полную силу.

Судя по тому, что я вижу на странице сравнения - как минимум E8C2 уже может быть конкурентен на серверном рынке в сегменте инфраструктуры, лицензируемой по серверам или сокетам. Главное - чтобы подерживал то или иное ПО. При называвшихся в "электронной печати" ценах порядка несольких сотен тысяч рублей за 2-х или 4-х сокетную систему - он может быть весьма полезен. А если на их основе, да ещё и с Ангарой выйдет что-то вроде ZFS Storage от Oracle, с драйверами для Oracle/RedHat Linux, которые позволят работать с ним быстро - то вообще замечательно.

Эльбрусы в Boinc запустили? Приятная новость, особенно с учетом того, что получаются неплохие результаты в производительности.

Igor Molchanov, возможно ли на какое-то время получить доступ к системе на Эльбрусах для  того, чтобы попробовать сделать официальное приложение для этой платформы? Было бы наверное здорово, если бы система на Эльбрусах заняла одну их верхних строк в списке TOP-компьютеров проекта - быть может, это будет неплохая реклама. А сделать это, судя по всему - возможно.

Подвели итоги декабря 2019-го, заодно выдав бэйджики тем, кто успел сделать находку во второй половине месяца, но не успел - в первой. За месяц было завершено 85812 workunit-ов, а статистика находок выглядит так:

Degree 81: 3818480
Degree 82: 917509
Degree 83: 200920
Degree 84: 39244
Degree 85: 6817
Degree 86: 1062
Degree 87: 140
Degree 88: 34
Degree 89: 0
...
Degree 100: 0

- видно, что пар с характеристикой (или "степенью") ортогональности 89 и выше - снова нет. Зато со степенью 88 - аж 34 штуки. Статистика же за всё время поиска теперь выглядит так:

Degree 81: 13894687
Degree 82: 3297818
Degree 83: 701533
Degree 84: 134540
Degree 85: 22476
Degree 86: 3543
Degree 87: 433
Degree 88: 73
Degree 89: 7
Degree 90: 2
Degree 91: 0
...
Degree 100: 0

Посмотрим, что будет дальше! И спасибо за участие в проекте!

SerVal отреагировал на эту запись.
SerVal
Цитата: SETI_Home_v8 от 01.01.2020, 09:26

КРАСАВЧИК!

Спасибо. =)

Цитата: hoarfrost от 01.01.2020, 11:23

Значит E8C и E8C2 - это всё-таки Эльбрусы! Мы давно заприметили компьютеры этого участника, но из-за того, что выступает за SETIKAH, а E8C может быть ещё и Power-системой, судя по Google - не были уверены. ?

Да, это именно Эльбрусы =)  Насчёт SETIKAH - мне как-то послали приглашение, я и присоединился - мне-то всё равно ни тепло ни холодно от этого, а людям, наверное, зачем-то нужно было.

Цитата: hoarfrost от 01.01.2020, 11:23

Наиболее точный из фактически доступных методов сравнения - это щёлкнуть ссылку Compare / Сравнить либо на странице со свойствами компьютера, либо в таблице их перечнем (в списке своих компьютеров, или просто в списке TOP-компьютеров проекта).

Понятно, буду знать. Как статистику наберу, сравню.

Цитата: hoarfrost от 01.01.2020, 11:23

Почти весь алгоритм - состоит из обычных конструкций вида while, for, if, обычных операторов, массивов и т.п. Исключение - только два идентичных места, где используется поиск первого выставленного бита в битовой маске - _BitScanForward и __builtin_ffs, насколько я понимаю, приходящие к инструкции bsf в случае x86 и x86_64. Для ARM там стоит ассемблерная вставка из rbit + clz. Если компилятор Эльбруса обрабатывает эти два фрагмента кода аналогичным образом, то процессор будет работать в полную силу.

Да, если мне не изменяет память, у нас есть аппаратная поддержка buintin_ffs, так что должно нормально оптимизироваться.

Цитата: hoarfrost от 01.01.2020, 11:23

Судя по тому, что я вижу на странице сравнения - как минимум E8C2 уже может быть конкурентен на серверном рынке в сегменте инфраструктуры, лицензируемой по серверам или сокетам. Главное - чтобы подерживал то или иное ПО. При называвшихся в "электронной печати" ценах порядка несольких сотен тысяч рублей за 2-х или 4-х сокетную систему - он может быть весьма полезен. А если на их основе, да ещё и с Ангарой выйдет что-то вроде ZFS Storage от Oracle, с драйверами для Oracle/RedHat Linux, которые позволят работать с ним быстро - то вообще замечательно.

Да, мы на этот рынок и ориентируемся. Ещё если учитывать нашу киллер-фичу по сравнению с ARM/MIPS/RISCV/прочими альтернативными архитектурами - возможность бинарной трансляции x86/x86_64-программ (или даже целых операционок, правда это куда медленнее), то перевод инфраструктуры на Эльбрус технически не так уж и сложен. BOINC, к слову, я запустил прежде всего как раз в режиме трансляции (и он до сих пор вполне себе работает, это машина kisume).

А вот с ценами некоторая системная проблема, которую не очень понятно, как решать: цены наших систем близки к high-level системам, а производительность - на уровне middle-level. Цены можно будет снизить на больших партиях, а их никто не будет покупать, если цены не снизить. Замкнутый круг получается - пусть мы и всеми силами пытаемся из него вылезти.

Цитата: Disel от 01.01.2020, 17:48

Эльбрусы в Boinc запустили? Приятная новость, особенно с учетом того, что получаются неплохие результаты в производительности.

Да, и если с одноядерной производительностью нас пока ограничивает тактовая частота, то по многоядерной нам удаётся пока достаточно успешно держать планку (конечно, мы не последний Ryzen или Core i10, но по мерке типичных серверных процессоров не самого высокого уровня Эльбрус-8С/8С2 вполне себе нормален - если не считать цены, конечно, с ними у нас больная тема).

Цитата: hoarfrost от 01.01.2020, 21:54

Igor Molchanov, возможно ли на какое-то время получить доступ к системе на Эльбрусах для  того, чтобы попробовать сделать официальное приложение для этой платформы? Было бы наверное здорово, если бы система на Эльбрусах заняла одну их верхних строк в списке TOP-компьютеров проекта - быть может, это будет неплохая реклама. А сделать это, судя по всему - возможно.

Да, можно, специально для этого я выбил одну машину (сейчас это однопроцессорный Эльбрус-8С (yukari), но я пытаюсь расширить эту тему на ещё две "внешние" машины: четырёхпроцессорный Эльбрус-8С (mamizou) и однопроцессорный Эльбрус-8СВ (sumireko), а в перспективе туда добавятся ещё две машины на Эльбрусе-8СВ - maribel и renko (четырёхпроцессорная и двухпроцессорная соответственно)).

Доступ к yukari решается вообще без вопросов: достаточно любому желающему мне прислать в контакт (vk.com/muzzdiez) или (менее предпочтительно, так как я её реже проверяю) на почту akemi_homura (эт) kurisa.ch публичный ключ ключевой пары ssh-rsa, при генерации ключа надо прописать коммент ключа вида "логин@сервер", где логин - желаемое имя ssh-пользователя, сервер - хостнейм машины, в данном случае - yukari. Т.е. типичный коммент ключа должен выглядеть как-то типа "chireiden@yukari" (без кавычек, разумеется). Как я получаю ключ, я делаю аккаунт и потом в ответном сообщении отправляю, как логиниться на машину.

Про sumireko и mamizou я могу спросить, как выйду на работу девятого числа, с большой вероятностью доступ тоже дадут.

hoarfrost отреагировал на эту запись.
hoarfrost
Цитата: Igor Molchanov от 01.01.2020, 23:40
Цитата: SETI_Home_v8 от 01.01.2020, 09:26

КРАСАВЧИК!

Спасибо. =)

Цитата: hoarfrost от 01.01.2020, 11:23

Значит E8C и E8C2 - это всё-таки Эльбрусы! Мы давно заприметили компьютеры этого участника, но из-за того, что выступает за SETIKAH, а E8C может быть ещё и Power-системой, судя по Google - не были уверены. ?

Да, это именно Эльбрусы =)  Насчёт SETIKAH - мне как-то послали приглашение, я и присоединился - мне-то всё равно ни тепло ни холодно от этого, а людям, наверное, зачем-то нужно было.

Цитата: hoarfrost от 01.01.2020, 11:23

Наиболее точный из фактически доступных методов сравнения - это щёлкнуть ссылку Compare / Сравнить либо на странице со свойствами компьютера, либо в таблице их перечнем (в списке своих компьютеров, или просто в списке TOP-компьютеров проекта).

Понятно, буду знать. Как статистику наберу, сравню.

Цитата: hoarfrost от 01.01.2020, 11:23

Почти весь алгоритм - состоит из обычных конструкций вида while, for, if, обычных операторов, массивов и т.п. Исключение - только два идентичных места, где используется поиск первого выставленного бита в битовой маске - _BitScanForward и __builtin_ffs, насколько я понимаю, приходящие к инструкции bsf в случае x86 и x86_64. Для ARM там стоит ассемблерная вставка из rbit + clz. Если компилятор Эльбруса обрабатывает эти два фрагмента кода аналогичным образом, то процессор будет работать в полную силу.

Да, если мне не изменяет память, у нас есть аппаратная поддержка buintin_ffs, так что должно нормально оптимизироваться.

Цитата: hoarfrost от 01.01.2020, 11:23

Судя по тому, что я вижу на странице сравнения - как минимум E8C2 уже может быть конкурентен на серверном рынке в сегменте инфраструктуры, лицензируемой по серверам или сокетам. Главное - чтобы подерживал то или иное ПО. При называвшихся в "электронной печати" ценах порядка несольких сотен тысяч рублей за 2-х или 4-х сокетную систему - он может быть весьма полезен. А если на их основе, да ещё и с Ангарой выйдет что-то вроде ZFS Storage от Oracle, с драйверами для Oracle/RedHat Linux, которые позволят работать с ним быстро - то вообще замечательно.

Да, мы на этот рынок и ориентируемся. Ещё если учитывать нашу киллер-фичу по сравнению с ARM/MIPS/RISCV/прочими альтернативными архитектурами - возможность бинарной трансляции x86/x86_64-программ (или даже целых операционок, правда это куда медленнее), то перевод инфраструктуры на Эльбрус технически не так уж и сложен. BOINC, к слову, я запустил прежде всего как раз в режиме трансляции (и он до сих пор вполне себе работает, это машина kisume).

А вот с ценами некоторая системная проблема, которую не очень понятно, как решать: цены наших систем близки к high-level системам, а производительность - на уровне middle-level. Цены можно будет снизить на больших партиях, а их никто не будет покупать, если цены не снизить. Замкнутый круг получается - пусть мы и всеми силами пытаемся из него вылезти.

Цитата: Disel от 01.01.2020, 17:48

Эльбрусы в Boinc запустили? Приятная новость, особенно с учетом того, что получаются неплохие результаты в производительности.

Да, и если с одноядерной производительностью нас пока ограничивает тактовая частота, то по многоядерной нам удаётся пока достаточно успешно держать планку (конечно, мы не последний Ryzen или Core i10, но по мерке типичных серверных процессоров не самого высокого уровня Эльбрус-8С/8С2 вполне себе нормален - если не считать цены, конечно, с ними у нас больная тема).

Цитата: hoarfrost от 01.01.2020, 21:54

Igor Molchanov, возможно ли на какое-то время получить доступ к системе на Эльбрусах для  того, чтобы попробовать сделать официальное приложение для этой платформы? Было бы наверное здорово, если бы система на Эльбрусах заняла одну их верхних строк в списке TOP-компьютеров проекта - быть может, это будет неплохая реклама. А сделать это, судя по всему - возможно.

Да, можно, специально для этого я выбил одну машину (сейчас это однопроцессорный Эльбрус-8С (yukari), но я пытаюсь расширить эту тему на ещё две "внешние" машины: четырёхпроцессорный Эльбрус-8С (mamizou) и однопроцессорный Эльбрус-8СВ (sumireko), а в перспективе туда добавятся ещё две машины на Эльбрусе-8СВ - maribel и renko (четырёхпроцессорная и двухпроцессорная соответственно)).

Доступ к yukari решается вообще без вопросов: достаточно любому желающему мне прислать в контакт (vk.com/muzzdiez) или (менее предпочтительно, так как я её реже проверяю) на почту akemi_homura (эт) kurisa.ch публичный ключ ключевой пары ssh-rsa, при генерации ключа надо прописать коммент ключа вида "логин@сервер", где логин - желаемое имя ssh-пользователя, сервер - хостнейм машины, в данном случае - yukari. Т.е. типичный коммент ключа должен выглядеть как-то типа "chireiden@yukari" (без кавычек, разумеется). Как я получаю ключ, я делаю аккаунт и потом в ответном сообщении отправляю, как логиниться на машину.

Про sumireko и mamizou я могу спросить, как выйду на работу девятого числа, с большой вероятностью доступ тоже дадут.

приятно видеть, что все таки развиваются наши процессоры и архитектура, пусть хоть и медленно...

AlexA и SerVal отреагировали на эту запись.
AlexASerVal

Доступ на машину с Эльбрус 8C - действительно был выдан очень быстро. BOINC-клиент и расчётный модуль проекта, при помощи Игоря вчера были скомпилированы (при компиляции клиента BOINC возникала интересная ошибка, связанная с Open SSH, а приложение скомпилировалось вообще без проблем). На данный момент обработано уже 5 заданий, 3 прошли проверку. Есть какие-то странности в поведении BOINC-клиента, пробуем разобраться.

:)

НазадСтраница 3 из 20Далее
BOINC.RU