Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ПЛИС-реализация алгоритма "Монеро"
Форум разработчиков электроники ELECTRONIX.ru > Дополнительные разделы - Additional sections > Предлагаю работу
Алексей Черновицкий
Приветствую всех присутствующих!
Предлагаю рассмотреть задачу, которую планируем к выполнению в сдельно-удаленном режиме.

Разработка ПЛИС-проекта майнера по алгоритму «Монеро». Исходный алгоритм – стандартный, написанный на C. Его необходимо портировать на плату с Kintex7. Память QDR GSI Technology, для нее будет применен ip-core производителя, реализующий доступ для Xilinx. Плата в стадии финальной разводки, до конца апреля будет отдана в производство. Детали задачи будут уточнены при общении с нашим специалистом. Схемная документация будет предоставлена. Железо для удаленной работы будет предоставлено.
Сроки достаточно жесткие.
Примерный план-график:
20.04 – 20.05 – разработка модели ПЛИС-реализации алгоритма «Монеро» в САПР в режиме симуляции. Имитация (симуляция) памяти.
20.05 – 20.06 – отладка на плате. Итог – первично работающая версия. При недостатке сил в усиление будет придан еще один разработчик.
20.06 – (определяется по ходу работ) Финальная отладка.
Ориентировочный уровень оплаты – выше среднего для специалистов соответствующей квалификации в СПБ. Заинтересовавшихся кандидатов просьба в личке озвучить желаемую стоимость работ.

С Уважением,
Алексей
Doka
Алексей,
какие критерии приёмки?

Требуется переложить с Си на Верилог или всёже стоит задача выдачи не менее заданного хешрейна (хеш-на-лут, хеш-на-память)?
yes
offtop:
2 Doka
а это Monero как раз пример алгоритма, который все время меняют? ASIC mining resistant или что-то такое?
но с другой стороны, в википедии написано, что использует AES - как тогда он может быть устойчив к азик-майнингу?
вроде бы это обсуждалось в теме про "универсальный азик майнер" - вот мне интересно, как это реализовано на практике
если есть время - объясните

так складывается впечатление, что алгоритм не описан публично - гугление вывело меня на какую-то замкнутую петлю CryptoNight->CryptoNote->CryptoNight... из чего я узнал только, что нужно 2Mbit и fits in L3 cache
baumanets
Цитата(Алексей Черновицкий @ Apr 18 2018, 13:42) *
Сроки достаточно жесткие.
Примерный план-график:
20.04 – 20.05 – разработка модели ПЛИС-реализации алгоритма «Монеро» в САПР в режиме симуляции. Имитация (симуляция) памяти.
20.05 – 20.06 – отладка на плате. Итог – первично работающая версия. При недостатке сил в усиление будет придан еще один разработчик.
20.06 – (определяется по ходу работ) Финальная отладка.


Кто вам такие сроки писал?
Вы уже выбьетесь из них, даже если разработчика 24/7 найдёте.
blackfin
Цитата(yes @ Apr 18 2018, 19:02) *
складывается впечатление, что алгоритм не описан публично - гугление вывело меня на какую-то замкнутую петлю CryptoNight->CryptoNote->CryptoNight...

CryptoNote, CryptoNight.
twix
Цитата(baumanets @ Apr 19 2018, 01:41) *
Кто вам такие сроки писал?
Вы уже выбьетесь из них, даже если разработчика 24/7 найдёте.

Обычно сроки пишут не для того, чтобы обозначить сроки, а чтобы обозначить деньги которые есть на разработку.
То есть автор готов платить вот так. Больше не даст. Это стандартная неписаная практика sm.gif
x736C
Для системы майнига сроки могут быть продиктованы совершенно другими соображениями имхо. Высокорисковое и быстропортящееся дело.
gerber
Только на "поднятие" своей платы на базе Kintex-7 со всеми интерфейсами можно смело закладывать 3-4 месяца, и это если не будет выявлено каких-то фатальных косяков в дизайне.
Алексей Черновицкий
Цитата(Doka @ Apr 18 2018, 15:28) *
Алексей,
какие критерии приёмки?

Требуется переложить с Си на Верилог или всёже стоит задача выдачи не менее заданного хешрейна (хеш-на-лут, хеш-на-память)?



Здравствуйте! Да, все правильно. К началу июня - просто переложить и показать первичную работоспособность алгоритма на этом железе. Далее будет время на оптимизацию и выжимание хэшрэйта.

Цитата(blackfin @ Apr 19 2018, 04:08) *


Добрый день!

Вот этот:
https://github.com/wolf9466/cpuminer-multi

Здравствуйте!
Прошу прощения, не было возможности сразу ответить.
Постараюсь ответить всем одним сообщением.
Сроки действительно жесткие.
Сформулирую критерий первичного успеха простыми словами: в начале июня изделие должно первично заработать. Без оптимизации, с допустимыми недоработками и пр. Заказчик поедет с платой к инвестору, положит ее на стол и скажет «во чо у меня есть») Если оно при этом будет еще как-то функционировать, то вообще шикарно.
В планировании задачи изначально были допущены ошибки, плюс специфические орг.моменты – поэтому сроки остались вот такие.
В худшем случае будем переносить – головной заказчик вполне вменяемый. Но это всегда нежелательно.
В плате используются в основном схемные узлы, ранее неоднократно отработанные в других изделиях, поэтому с ее запуском больших проблем не должно возникнуть.
По деньгам все обсуждаемо, здесь не будет крохоборства. Но естественно, в разумных пределах. Есть «первый этап» - как-то запустить к июню. Далее – доработки, они тоже оплачиваются. Обычно в таких ситуациях я договариваюсь с разработчиком на примерный срок и помесячную оплату.
Готов рассматривать нескольких разработчиков (команду).

С Уважением,
Алексей


Цитата(Алексей Черновицкий @ Apr 20 2018, 10:49) *
Здравствуйте! Да, все правильно. К началу июня - просто переложить и показать первичную работоспособность алгоритма на этом железе. Далее будет время на оптимизацию и выжимание хэшрэйта.



Добрый день!

Вот этот:
https://github.com/wolf9466/cpuminer-multi

Здравствуйте!
Прошу прощения, не было возможности сразу ответить.
Постараюсь ответить всем одним сообщением.
Сроки действительно жесткие.
Сформулирую критерий первичного успеха простыми словами: в начале июня изделие должно первично заработать. Без оптимизации, с допустимыми недоработками и пр. Заказчик поедет с платой к инвестору, положит ее на стол и скажет «во чо у меня есть») Если оно при этом будет еще как-то функционировать, то вообще шикарно.
В планировании задачи изначально были допущены ошибки, плюс специфические орг.моменты – поэтому сроки остались вот такие.
В худшем случае будем переносить – головной заказчик вполне вменяемый. Но это всегда нежелательно.
В плате используются в основном схемные узлы, ранее неоднократно отработанные в других изделиях, поэтому с ее запуском больших проблем не должно возникнуть.
По деньгам все обсуждаемо, здесь не будет крохоборства. Но естественно, в разумных пределах. Есть «первый этап» - как-то запустить к июню. Далее – доработки, они тоже оплачиваются. Обычно в таких ситуациях я договариваюсь с разработчиком на примерный срок и помесячную оплату.
Готов рассматривать нескольких разработчиков (команду).

С Уважением,
Алексей


Где-то в интернете есть достоверное графическое представление алгоритма, что более наглядно, с ходу не смог найти.

На первом этапе рассматривали использование vivado hls или чего-то аналогичного.
Все сроки рассчитаны исходя из оптимистического прогноза по плате - если будут задержки из-за железа - это будет объективно восприниматься
Flood
Цитата(Алексей Черновицкий @ Apr 20 2018, 11:12) *
Все сроки рассчитаны исходя из оптимистического прогноза по плате - если будут задержки из-за железа - это будет объективно восприниматься

Интересно, был ли сделан прогноз по достижимому на выбранной FPGA + QDR хешрейту и энергоэффективности проекта?

По-моему, начинать такие проекты "от платы" довольно рискованно.
Правильнее было бы приступать (или не делать этого) к разработке платы имея на руках отлаженный на готовых платах алгоритм с понятной производительностью.
Realking
Цитата(Flood @ Apr 20 2018, 13:30) *
Интересно, был ли сделан прогноз по достижимому на выбранной FPGA + QDR хешрейту и энергоэффективности проекта?

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


Согласен... Попахивает авантюрой (со стороны разработчика платы, который сказал заказчику, что потом FPGAшник легко все запилит, и будет быстрее чем на видеокартах )))
warrior-2001
Доброго времени суток!
Дайте прямую ссылку на С код, который необходимо перевести в прошивку ПЛИС.
Жаль, что у вас xilinx. Но ради интереса - попробую получить hdl описание. Чтобы быть так сказать "в тренде". Чисто для себя.
jojo
Выше ссылку давали, не открывается. Мне кажется, в xmr-stak самая свежая реализация.

https://github.com/fireice-uk/xmr-stak/blob...tonight_aesni.h

3-4 месяца на интерфейсы, тут, пожалуй, не надо. Если они сразу заработают.

И какой хэшрейт ожидает увидеть заказчик? (Как вариант, если этот хэшрейт не очень велик, можете рассмотреть другие алгоритмы, для которых нет ASIC, если мощность и охлаждение позволяют).

В общем, здесь есть чем заняться. И несколько очевидных и не очень трюков есть, касающихся внутреннего цикла алгоритма. Вы их сами увидите, кто возьмётся.

Алексей Черновицкий
Цитата(Flood @ Apr 20 2018, 13:30) *
Интересно, был ли сделан прогноз по достижимому на выбранной FPGA + QDR хешрейту и энергоэффективности проекта?

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


Да, расчеты были сделаны предварительно.
Правильнее, согласен. Но имеем то, что имеем.
Производительность завязана на аппаратурные характеристики.
ilia_2s
Цитата(Алексей Черновицкий @ Apr 18 2018, 13:42) *
просьба в личке озвучить


Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.