Pages:
Author

Topic: Создание своего пула SHA256d на короткий срок - page 2. (Read 2744 times)

kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
А, вот кстати набросал по-быстрому кусочек кода.
Аналитическую формулу я вывести не могу сейчас, потому что тервер
не был моим любимым предметом. Но мне аналитическая формула и не нужна. Я практик.
Допустим, вся сеть за сутки перебирает 144 охулиарда хэшей.
Я купил 1 (один) охулиард хешей (заплатил сразу, сдачу не вернут). Какова вероятность
того, что я найду хотя бы один блок?

Ответ: примерно 0.6341
(спасибо тем, кто помогал мне в приватной переписке)

Доказательство методом Монте-Карло, которое меня как практика устраивает полностью:
Code:
void test ( )
{
  long rounds = 0;
  long success = 0;
  while ( true )
  {
    char field [144];
    memset ( field, 0, 144 );
    for ( unsigned i ( 0 ); i < 144; i++ )
      field [((unsigned)qrand ( )) % 144]++;
    rounds++;
    if ( field [5] )
      success++;
    if ( ( rounds % 1000 ) == 0 )
      printf ( "\r rounds=%ld success=%ld success probability=%f", rounds, success, ((float)success)/((float)rounds) );
  }
}


Как работает этот код?
В цикле случайный элемент массива увеличивается на 1, потом зачем-то увеличивается rounds, потом проверка пятого элемента на ненулевость если не ноль то классно, потом вывод результата...

видимо ещё один цикл по rounds не написали?
но все равно, если пятый элемент при первой итерации станет ненулевым - какой вывод будет?
sr. member
Activity: 770
Merit: 305
Если это в процентах, то все верно

(1/144)*100% = 0.694%
Нет, конечно не в процентах. Прочитайте внимательно еще раз мои условия задачи.
Я пытаюсь понять - сколько мне будет стоить нахождение одного блока.
Если грубо (это очень грубо, но точно надо будет считать по факту) прикинуть что
владельцы асиков продают хэш-мощности по той же цене, что могли бы майнить
соло, я трачу 12.5 попугаев и вероятность удачи ~0.63 (то есть 63%)
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Если это в процентах, то все верно

(1/144)*100% = 0.694%
sr. member
Activity: 770
Merit: 305
А, вот кстати набросал по-быстрому кусочек кода.
Аналитическую формулу я вывести не могу сейчас, потому что тервер
не был моим любимым предметом. Но мне аналитическая формула и не нужна. Я практик.
Допустим, вся сеть за сутки перебирает 144 охулиарда хэшей.
Я купил 1 (один) охулиард хешей (заплатил сразу, сдачу не вернут). Какова вероятность
того, что я найду хотя бы один блок?

Ответ: примерно 0.6341
(спасибо тем, кто помогал мне в приватной переписке)

Доказательство методом Монте-Карло, которое меня как практика устраивает полностью:
Code:
void test ( )
{
  long rounds = 0;
  long success = 0;
  while ( true )
  {
    char field [144];
    memset ( field, 0, 144 );
    for ( unsigned i ( 0 ); i < 144; i++ )
      field [((unsigned)qrand ( )) % 144]++;
    rounds++;
    if ( field [5] )
      success++;
    if ( ( rounds % 1000 ) == 0 )
      printf ( "\r rounds=%ld success=%ld success probability=%f", rounds, success, ((float)success)/((float)rounds) );
  }
}
sr. member
Activity: 770
Merit: 305
так. на чем мы остановились?
я сделал ноду на VPS-сервере, собрал и запустил демона bitcoind, он синхронизировал
базу блоков и вроде пашет. теперь нужен еще софт пула, который будет слушать
стратум на порту 3333, на него смогут коннектиться майнеры или я смогу на него купить
трафик на бирже. Всё верно вроде излагаю?

с NOMP/UNOMP как-то не сложилось, решил поставить вот это
https://bitbucket.org/ckolivas/ckpool
в связи с этим вопрос: есть у кого опыт настройки и эксплуатации? я в этих делах полный
лопух и готов слушать опытных людей с открытым ртом. на что обращать внимание,
какие настройки и все такое прочее. сейчас гуглю любую информацию об этом, но все
равно считаю лучшим вариантом общение на родном языке в форме вопросов-ответов.

второй вопрос: не захочет ли потом кто-то за деньги (но лучше забесплатно, потому что
денег у меня мало) потом погонять-потестировать мой новый пул? как там выставлять
минимальную сложность шар я себе плохо представляю, так что опять же - не молчите,
делитесь знаниями.
sr. member
Activity: 770
Merit: 305
1. Регаешься у хостера по моей ссылке и получаешь 10 баксов на баланс (это два месяца халявного хостинга) https://m.do.co/c/1ece5d76d5cd
2. Создаешь убунту сервер
3. Далее идешь по ссылке которую сам же тут выше приводил и по шагам устанавливаешь пул.
4. Если не получится, но все еще захочешь делать сам - спрашивай, поразбираемся тут вместе ))
Если надоест мучиться, можешь дать мне доступ к серваку - я тебе настрою бесплатно когда время будет.

Я пока на своей локальной тачке попробую. У меня какая-то убунта есть.
Потом когда и если получится можно и на хостинге регаться.
Буду прям здесь рассказывать по шагам как пул создаю.
Беру мануал https://github.com/Crypto-Expert/stratum-mining/wiki/Getting-Started-With-Stratum
Там правда лайткойн, а мне нужен sha256d но потом с этим буду разбираться

$ git clone https://github.com/Crypto-Expert/stratum-mining.git
Code:
Cloning into 'stratum-mining'...
remote: Counting objects: 1243, done.
remote: Total 1243 (delta 0), reused 0 (delta 0), pack-reused 1243
Receiving objects: 100% (1243/1243), 254.11 KiB | 247.00 KiB/s, done.
Resolving deltas: 100% (814/814), done.
Checking connectivity... done.

$ git clone https://github.com/ahmedbodi/stratum.git
Code:
Cloning into 'stratum'...
remote: Counting objects: 875, done.
remote: Total 875 (delta 0), reused 0 (delta 0), pack-reused 875
Receiving objects: 100% (875/875), 164.14 KiB | 230.00 KiB/s, done.
Resolving deltas: 100% (512/512), done.
Checking connectivity... done.

$ git clone https://github.com/Tydus/litecoin_scrypt.git
Code:
Cloning into 'litecoin_scrypt'...
remote: Counting objects: 13, done.
remote: Total 13 (delta 0), reused 0 (delta 0), pack-reused 13
Unpacking objects: 100% (13/13), done.
Checking connectivity... done.

Так. С гитом проблем не возникло. Поехали дальше по руководству

$ cd ~/stratum-mining
$ git submodule init

Code:
Submodule 'externals/stratum' (https://github.com/ahmedbodi/stratum.git) registered for path 'externals/stratum'

$ git submodule update
Code:
Cloning into 'externals/stratum'...
remote: Counting objects: 875, done.
remote: Total 875 (delta 0), reused 0 (delta 0), pack-reused 875
Receiving objects: 100% (875/875), 164.14 KiB | 238.00 KiB/s, done.
Resolving deltas: 100% (512/512), done.
Checking connectivity... done.
Submodule path 'externals/stratum': checked out '8ba1b5fd8a802b981f31dace4cf920cfb4a3907c'

$ cd ~/litecoin_scrypt
$ sudo python setup.py install

Code:
running install
running build
running build_ext
building 'ltc_scrypt' extension
creating build
creating build/temp.linux-x86_64-2.7
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I. -I/usr/include/python2.7 -c scryptmodule.c -o build/temp.linux-x86_64-2.7/scryptmodule.o
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I. -I/usr/include/python2.7 -c scrypt.c -o build/temp.linux-x86_64-2.7/scrypt.o
creating build/lib.linux-x86_64-2.7
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/scryptmodule.o build/temp.linux-x86_64-2.7/scrypt.o -o build/lib.linux-x86_64-2.7/ltc_scrypt.so
running install_lib
copying build/lib.linux-x86_64-2.7/ltc_scrypt.so -> /usr/local/lib/python2.7/dist-packages
running install_egg_info
Writing /usr/local/lib/python2.7/dist-packages/ltc_scrypt-1.0.egg-info

Фиг с ним, пусть scrypt будет пока. Потом заменю

$ cd ~/stratum
$ sudo python setup.py install

Code:
Downloading http://pypi.python.org/packages/source/d/distribute/distribute-0.6.28.tar.gz
Traceback (most recent call last):
  File "setup.py", line 3, in
    use_setuptools()
  File "/home/alex/stratum/distribute_setup.py", line 145, in use_setuptools
    return _do_download(version, download_base, to_dir, download_delay)
  File "/home/alex/stratum/distribute_setup.py", line 124, in _do_download
    to_dir, download_delay)
  File "/home/alex/stratum/distribute_setup.py", line 194, in download_setuptools
    src = urlopen(url)
  File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen
    return _opener.open(url, data, timeout)
  File "/usr/lib/python2.7/urllib2.py", line 410, in open
    response = meth(req, response)
  File "/usr/lib/python2.7/urllib2.py", line 523, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/lib/python2.7/urllib2.py", line 448, in error
    return self._call_chain(*args)
  File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 531, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 403: SSL is required

Ну вот и первая проблема. Что ей за сертификат нужен?
Или у меня питон не той версии? Бля, как вы с этими линухами живёте-то?
Если без проблем 10 команд сделать не получается. Пошел гуглить.

kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
А проще будет, нанять человека, чтобы пул под ключ тебе настроил.
Это несколько часов работы для знающего человека.
Если нет желания самому возиться с пулом - то это лучший вариант.
Желание-то есть. Опыта и знаний явно мало. В том числе по тому как формулировать ТЗ и как принимать работу.
И я не вижу очереди желающих этим заняться "под ключ" за гонорар.
По опыту общения на этом форуме скажу, что 99% здешних - это пустомели и пустобрехи.
Если у вас (здесь я не конкретно к вам обращаюсь, а ко всем читающим) есть опыт в этом
деле - озвучивайте свою цену. Много денег у меня сейчас нет, и я бы вообще хотел бы, разумеется,
не платить, а просто сделать самостоятельно по готовой инструкции.
Но разумное предложение - почему бы и не рассмотреть?

1. Регаешься у хостера по моей ссылке и получаешь 10 баксов на баланс (это два месяца халявного хостинга) https://m.do.co/c/1ece5d76d5cd
2. Создаешь убунту сервер
3. Далее идешь по ссылке которую сам же тут выше приводил и по шагам устанавливаешь пул.
4. Если не получится, но все еще захочешь делать сам - спрашивай, поразбираемся тут вместе ))
Если надоест мучиться, можешь дать мне доступ к серваку - я тебе настрою бесплатно когда время будет.
legendary
Activity: 2744
Merit: 1387
Ukrainians will resist
Либо на этом форуме в соответствующем разделе, либо на форуме битс.медиа.
Не раз там видел подобные темы, там находились желающие за гонорар поднять, но дальше общение в личке шло и чем все закончилось неизвестно.
Я пробовал с номпом разобраться, но потом мне на глаза попался криптонотовский движок и я загорелся идеей пулов под криптонот.
И к номпу больше не возвращался.
Так что сорри, рад был бы помочь, не не смогу.
sr. member
Activity: 770
Merit: 305
А проще будет, нанять человека, чтобы пул под ключ тебе настроил.
Это несколько часов работы для знающего человека.
Если нет желания самому возиться с пулом - то это лучший вариант.
Желание-то есть. Опыта и знаний явно мало. В том числе по тому как формулировать ТЗ и как принимать работу.
И я не вижу очереди желающих этим заняться "под ключ" за гонорар.
По опыту общения на этом форуме скажу, что 99% здешних - это пустомели и пустобрехи.
Если у вас (здесь я не конкретно к вам обращаюсь, а ко всем читающим) есть опыт в этом
деле - озвучивайте свою цену. Много денег у меня сейчас нет, и я бы вообще хотел бы, разумеется,
не платить, а просто сделать самостоятельно по готовой инструкции.
Но разумное предложение - почему бы и не рассмотреть?
legendary
Activity: 2744
Merit: 1387
Ukrainians will resist
amaclin1, насколько мне известно, почти все движки пулов под линукс идут.
есть исключение, например вот - https://github.com/bonesoul/CoiniumServ
А проще будет, нанять человека, чтобы пул под ключ тебе настроил.
Это несколько часов работы для знающего человека.
Если нет желания самому возиться с пулом - то это лучший вариант.
sr. member
Activity: 770
Merit: 305
Перекачал BTH. Теперь у меня оба клиента есть полностью синхронизированных.
Но пока инструкцию написать времени нет. Тут BTG зарелизили клиента. Надо тоже отсинхронизировать.
Да мне это не горит. Мне ж не экзамен на этой неделе сдавать по этому предмету,
когда надо все к определенному сроку, а если на день позже - то уже никому не надо.
Мы ж не ловлей блох занимаемся. У нас вечность впереди.

Quote
А по поводу твоего вопроса, найди майнер (вроде cgminer) поддерживающий соло.
И цепляйся к своему клиенту. getworktemplate в нем есть, а в соло ничего другого не нужно.
Не, ну я не настолько везучий человек, и не рассчитываю что смогу на процессоре
смайнить блок, пусть даже не в основном Bitcoin, а в BitcoinCash.

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

А мне надо понять весь процесс. Для этого я иду с конца:
а) Конечная цель - смайнить блок.
б) Значит нужна запущенная майнинг-нода и где-то взять хэширующие мощности
в) Мощности можно купить если зарегаться на бирже покупателем и дать доступ к своему работающему пулу по стратуму
г) значит на ноде надо развернуть софтину пула (без блекджека и шлюх или с ними)
д) тренироваться сразу на боевом линукс-сервере в интернете мне ссыкотно и я банально не умею многого
е) поэтому надо попробовать все то же самое сделать на локальной машине и желательно под виндой
ж) для этого вполне достаточно иметь bitcoin-qt (это есть), софт пула (этого нет) и программу майнинга (это тоже есть)

Вот примерно в середине пункта (ж) я и нахожусь сейчас.
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
У меня есть тачка в облаке с полной нодой BTC. Могу дать доступ к РПЦ
И помочь развернуть NOMP
В общем-то мне не помешали бы пошаговые инструкции актуальные на сегодняшний день
Перекачал BTH. Теперь у меня оба клиента есть полностью синхронизированных.
Но пока инструкцию написать времени нет. Тут BTG зарелизили клиента. Надо тоже отсинхронизировать.

А по поводу твоего вопроса, найди майнер (вроде cgminer) поддерживающий соло. И цепляйся к своему клиенту. getworktemplate в нем есть, а в соло ничего другого не нужно.


Он уже пробовал cgminer, не цепляется он к клиенту. 404 пишет. Смотри скрин выше.
member
Activity: 172
Merit: 11
У меня есть тачка в облаке с полной нодой BTC. Могу дать доступ к РПЦ
И помочь развернуть NOMP
В общем-то мне не помешали бы пошаговые инструкции актуальные на сегодняшний день
Перекачал BTH. Теперь у меня оба клиента есть полностью синхронизированных.
Но пока инструкцию написать времени нет. Тут BTG зарелизили клиента. Надо тоже отсинхронизировать.

А по поводу твоего вопроса, найди майнер (вроде cgminer) поддерживающий соло. И цепляйся к своему клиенту. getworktemplate в нем есть, а в соло ничего другого не нужно.
sr. member
Activity: 770
Merit: 305
У меня есть тачка в облаке с полной нодой BTC. Могу дать доступ к РПЦ
И помочь развернуть NOMP
В общем-то мне не помешали бы пошаговые инструкции актуальные на сегодняшний день.
Я пока думал об этом в субботу решил пересмотреть старый фильм "Экипаж".
Тот момент, когда они готовятся взлетать - всё вокруг горит, пылает, взрывается,
а пилоты в кабине читают инструкцию и щелкают тумблерами, потому что последовательность
действий надо соблюдать вне зависимости от всего происходящего вокруг.

Вот типа такого: https://bitcointalksearch.org/topic/0130-1624251
Можно не до конца понимать что происходит, но по этой инструкции у меня вроде сами
биткоен-клиенты собираются. Хотя там тоже сложности возникли и убунту 16-ая не
нравится (взял 14-ую), и какие-то строчки в сорцах пришлось грохнуть (поубивал бы
разработчиков которые используют конструкции языка, которые не пережевываются компиляторами)
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
А дощло: ты к битку майнером цепляться пытаешься ))
Ничего не выйдет... К рпц битка должен цепляться пул, а майнер цепляется к пулу по другому протоколу.
Ну то есть мне еще одну прослойку надо
как раз тот самый NOMP или аналог про который мы толковали
Который будет к клиенту цепляться по rpc, а майнеру отдавать стратум

Да именно так.
sr. member
Activity: 770
Merit: 305
А дощло: ты к битку майнером цепляться пытаешься ))
Ничего не выйдет... К рпц битка должен цепляться пул, а майнер цепляется к пулу по другому протоколу.
Ну то есть мне еще одну прослойку надо
как раз тот самый NOMP или аналог про который мы толковали
Который будет к клиенту цепляться по rpc, а майнеру отдавать стратум
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
А дощло: ты к битку майнером цепляться пытаешься ))
Ничего не выйдет... К рпц битка должен цепляться пул, а майнер цепляется к пулу по другому протоколу.
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Надо смотреть логи битка.
запусти bitcoin-qt с ключем debug, там больше логов будет. Все попытки коннектов по рпц точно должны быть.
sr. member
Activity: 770
Merit: 305
Попробуй для процессора этот майнер что скажет:
https://github.com/pooler/cpuminer/releases
Да шота тоже ему не нравится
Буду ща разбираться. Может какие-нибудь файерволы и антивирусы надо поотключать?
Вроде отключил
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Попробуй для процессора этот майнер что скажет:
https://github.com/pooler/cpuminer/releases
Pages:
Jump to: