Author

Topic: NovaCoin (scrypt PoW + PoS hybrid) - page 245. (Read 600924 times)

member
Activity: 125
Merit: 10
August 09, 2013, 03:55:43 PM
а в cgminer та же лабуда с нулями(( и по 10 шар за секунду фигачит
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 03:54:33 PM
wind, судя по тому что я вижу, таргет нормально подставился.
member
Activity: 125
Merit: 10
August 09, 2013, 03:53:03 PM
Balthazar у меня такое выдаёт с +0.05:
Code:
[2013-08-09 23:49:37] JSON protocol response:
{
   "result": {
      "submitold": true,
      "data": "000000038b7f6111626991c8f1b037465b43fd28bd1d738e1e6ab73cda47513f4
9af1e39ff4dcc528364f8cdc27a14ac68a18bbf045cf30973de17cfab3661c3b0327535520555d61
c00e1b80000000000000080000000000000000000000000000000000000000000000000000000000
0000000000000000000000080020000",
      "hash1": "0000000000000000000000000000000000000000000000000000000000000000
0000008000000000000000000000000000000000000000000000000000010000",
      "target": "0000000000000000000000000000000000000000000000000000ecff1300000
0",
      "identifier": "32",
      "midstate": "920c8698b5a9c1a6b342bbbbe9774cdd0d3eb0892a63051ccb2164025a747
0c2"
   },
   "jsonrpc": "2.0",
   "error": null,
   "id": 0
}
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 03:50:03 PM
Может как 2^224 / D ?
Верно. Последствия пятницы  Cheesy

Quote
можно его вычислить самому как D * 2^224
Huh Может как 2^224 / D ?
Т.е. В том случае, когда Target * S * A > 2^256 хеш гарантированно подходит любой, а значит монеты в принципе не могут перезреть, имея время гарантированного конца (т.е. время гарантированной генерации PoS)?
Оно не может быть больше 2^256, потому что 2^256 является максимально возможным 256-битным числом.

Но в целом да, если ОЧЕНЬ много монет, то хэш будет подходить любой при любой сложности. Математическая модель коллапса системы с гиперинфляцией.  Smiley

Т.е., сейчас, в текущих условиях вход в 1000 монет мгновенно генерирует блок, когда ему исполнилось 30 дней?
При текущей сложности обычно да.
legendary
Activity: 1218
Merit: 1019
August 09, 2013, 03:44:56 PM
Quote
можно его вычислить самому как D * 2^224
Huh Может как 2^224 / D ?

Но в целом ясно.
Code:
P = Target * S * A / 2^256
Т.е. в том случае, когда Target * S * A > 2^256 хеш гарантированно подходит любой, а значит монеты в принципе не могут перезреть, имея время гарантированного конца (т.е. время гарантированной генерации PoS)?
Т.е., сейчас, в текущих условиях вход в 1000 монет мгновенно генерирует блок, когда ему исполнилось 30 дней?
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 03:42:43 PM
Balthazar благодарю за оперативность!
но только что обновился  с гита до 11.4.3 - не работает((
всё осталось по-старому-пробую и +0.05 после имени пользователя и другие числа
cgminer виндовый 3.3.1
Попробуйте cpuminer в режиме отладки, чтобы посмотреть что он за таргет выдает и меняется ли он.

Например,

Code:
minerd.exe --url=http://127.0.0.1:8336 -O test+0.05:123 --protocol-dump

Quote
[2013-08-09 23:58:27] JSON protocol response:
{
   "result": {
      "submitold": true,
      "data": "00000003de86d39357c3c34e19a0c3d83362a5a742a58f890bfdfaa999d43d91a9b7124a5b558f6 779d57032f501e90919df1000000000000000000000000000000000000000000000000000000000 00000080020000",
      "hash1": "0000000000000000000000000000000000000000000000000000000000000000000000800000000 000000000000000000000
      "target": "0000000000000000000000000000000000000000000000000000ecff13000000",
      "identifier": "13",
      "midstate": "c087e2a3fb6ebec9582676639104bfb2b5466ec294dff83a4315a09bfcfca064"
   },
   "jsonrpc": "2.0",
   "error": null,
   "id": 0
}

Code:
minerd.exe --url=http://127.0.0.1:8336 -O test+0.1:123 --protocol-dump

Quote
[2013-08-10 00:44:28] JSON protocol response:
{
   "result": {
      "submitold": true,
      "data": "000000038b7f6111626991c8f1b037465b43fd28bd1d738e1e6ab73cda47513f49af1e39e6115dc a47d118d36fe3ccf2294ed320e86f639154efd16ae0b00000000000000000000000000000000000 000000000000000000000000000080020000",
      "hash1": "0000000000000000000000000000000000000000000000000000000000000000000000800000000 0000000000000000000000000000000000000000000
      "target": "0000000000000000000000000000000000000000000000000000f6ff09000000",
      "identifier": "1",
      "midstate": "a2cb455d5fe96ef4979aa4eb6c36fd4e1e5f6eb3ee56031cc4831405d48e7db9"
   },
   "jsonrpc": "2.0",
   "error": null,
   "id": 0
}
member
Activity: 125
Merit: 10
August 09, 2013, 03:39:05 PM
Balthazar благодарю за оперативность!
но только что обновился  с гита до 11.4.3 - не работает((
всё осталось по-старому-пробую и +0.05 после имени пользователя и другие числа
cgminer виндовый 3.3.1

и кстати vardiff по умолчанию тоже не работает((
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 03:32:02 PM
Выше 90 дней вес для хэшей перестает накапливаться, т.е. период роста ограничен окном начиная с 30 и заканчивая 90 днями. Далее накапливается только монетизируемый вес.

Что же до сложности... С нашей моделью эмиссии она будет расти достаточно медленно. Если считать на глаз, то что-то около 0.15 через год получится.
legendary
Activity: 1218
Merit: 1019
August 09, 2013, 03:28:49 PM
Еще надо учесть, что A при подсчете по этой формуле следует обрезать сверху значением в 90 дней.
Упс... Это в корне меняет дело при больших значениях сложности.  Undecided
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 03:21:27 PM
Alex AXe
S * A * T - это для PoS то же самое, что и работа для PoW. А именно, для PoS:

Code:
S * A * T = 2^32 * D

Для PoW:

Code:
Hashes = 2^32 * D

То есть, можно применять почти те же формулы, что и для PoW. С поправкой на растущий во времени вес, если есть желание. Smiley

К примеру, вероятность найти хороший хэш конкретной попыткой:

Code:
P = Target * S * A / 2^256

Правда, клиент не показывает таргет для PoS в реальном времени на данный момент, можно его вычислить самому как D * 2^224. Еще надо учесть, что A при подсчете по этой формуле следует обрезать сверху значением в 90 дней.
legendary
Activity: 3108
Merit: 1359
legendary
Activity: 1218
Merit: 1019
August 09, 2013, 03:09:03 PM
Бальтазар, а какова вероятность генерации ПоС-блока транзакцией в течении конкретной секунды? S*A / (2^32*D) - так что-ли? Вроде ж нет, ведь может быть ненулевая вероятность его НЕ найти если даже SA>D*2^32
Я хочу все правильно посчитать. Правда я и не сомневаюсь, что там зависимости сроков жизни именно от корней, а значит мои основные выводы верны - но хотелось бы иметь точные формулы.
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 02:49:30 PM
Поправлено

https://github.com/CryptoManiac/p2pool/commit/7274c2d163694fed975d37cf2d36373cd79427d3

У меня + и / работают как нужно, таргет меняет. Сборку под винду сейчас сделаем.

Только учтите, использовать +100 не надо, это перебор. +0.05, к примеру, обычно более чем хватает.
member
Activity: 125
Merit: 10
August 09, 2013, 01:54:57 PM
прошу помощи по p2poolу!!!
Есть ли возможность поднастроить его таким образом, чтобы он отдавал задания повышенной сложности, а то вот такая картина не очень хорошо смотрится да и реджектов много:
Code:
[2013-08-09 15:54:54] Accepted 45ff73c7 Diff 6/0 GPU 2 pool 0 
[2013-08-09 15:54:54] Accepted 3ff87a40 Diff 1/0 GPU 2 pool 0
[2013-08-09 15:54:54] Accepted c06e088f Diff 1/0 GPU 2 pool 0
[2013-08-09 15:54:54] Accepted 8f3151f0 Diff 1/0 GPU 2 pool 0
[2013-08-09 15:54:54] Accepted 89f17674 Diff 2/0 GPU 2 pool 0
Фишки типа +100 после имени юзера не работают!!!
legendary
Activity: 1218
Merit: 1019
August 09, 2013, 11:25:43 AM
В общем, промоделировал ситуацию в экселе (взял формулу с коэффициентом e, хотя это и не особо принципиально).
Мои опасения в основном беспочвенны.   Tongue

Рост сложности превратит ПоС майнинг в лотерею намного раньше, чем награда за мелкие транзакции станет большой из-за роста среднего времени их жизни.  Undecided
При сложности в 1000 раз больше текущей, награды за транзакцию в 10 нов придется ждать в среднем около 2-х лет  Shocked  (сейчас 40 дней) И она составит тогда в среднем чуть менее 2-х нов.  Grin


Еще один любопытный вывод. С ростом сложности наблюдается интересный феномен: выплата за PoS у мелких транзакций увеличивается (из-за увеличения времени их жизни), у крупных  - снижается. Однако при очень большой сложности, она увеличивается и у крупных. Увеличение начинает происходить с того момента, когда время жизни транзакции превышает примерно 60 дней. И это логично: квадратный корень растет быстрее кубического, на малых же временных отрезках влияет ограничение зрелости в 30 дней. В очень далекой перспективе при стремлении сложности к бесконечности, награда за среднее время жизни пропорциональна корню шестой степени из сложности, что дает любопытный эффект, заключающийся в том, что награда за транзакцию, равную ПоВ блоку остается постоянной, если ПоС и ПоВ сложности растут более-менее синхронно.

И это имеет важное следствие.
Оно касается того, что использовать в качестве ограничения. Рассмотрим в качестве "типичной" транзакцию равную по размеру ПоВ блоку. Сейчас это около 10. Она генерирует блок средней наградой в 1 нову. В 10 раз меньше лимита.
Если предположить, что когда ПоС сложность вырастет в 1000 раз, ПоВ сделает примерно тоже самое, то тогда выплата за ПоВ блок будет в районе 3-х нов. И такая транзакция будет генерировать тоже около одной новы.

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

Единственное что -  действительно стоит запретить подклейку тех транзакций, которые будут приводить к возможному превышению лимита
legendary
Activity: 1218
Merit: 1019
August 09, 2013, 09:37:22 AM
Не верно посчитал для 1 новы. 57 дней вышло. Точно занижено.
Если К дополнительно умножить на e, то получится 82 дня.  Smiley

Число е в формуле скорей всего действительно должно быть. Хорошо было б если специалист по вероятностным процессам это посмотрел.
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 09:28:52 AM
Точно, я ступил, немного занижено.
legendary
Activity: 1218
Merit: 1019
August 09, 2013, 09:07:51 AM
Многовато. Если пренебречь ростом возраста, то получалось 52 дня для 1 созревшей монеты.
Т.е. после созревания она живет 52 дня? Тогда получим общее время жизни 30+52=82

0,1 новы проживет 140 дней.

100 монет 30,5 дней


Хм... Похоже, у меня несколько заниженные оценки. Вероятно, при K должен стоять какой-то коэффициент вроде е или двойки... В принципе это логично - в самом начале генерации она идет медленней, следовательно, средний возраст будет больше.

Но это не так важно. Важнее характер зависимости - пропорциональность приращения возраста корню квадратному из сложности и обратная таковому из величины. В том, что она такая и есть я практически уверен, так как имеем модель равноускоренного движения. Отсюда и следует исходить.
legendary
Activity: 3108
Merit: 1359
August 09, 2013, 09:02:48 AM
Многовато. Если пренебречь ростом возраста, то получалось 52 дня для 1 созревшей монеты.
legendary
Activity: 1218
Merit: 1019
August 09, 2013, 08:56:10 AM
В общем, попробую не совсем корректно решить эту хрень (статистику и матан я уже забыл по большей части). Но для оценки, думаю сойдет.

У нас  A*T = 2^32 * D/S

При этом будем исходить из того что T = 86400*(A-30)  (не совсем верно статистически, но позволяет очень сильно упростить решение, сведя его к квадратному уравнению)

86400*(A^2 - 30*A) =  2^32 * D/S

Пусть K = ( 2^32 * D/S ) / 86400

Тогда A^2 - 30*A - K = 0

Отсюда A = 15 ± (225 + K)^0.5

Очевидно, что второй корень будет соответствовать отрицательным значениям времени, поэтому A = 15+(225 + K)^0.5  где K = ( 2^32 * D/S ) / 86400



Для транзакции в 10 нов у меня получилось что-то около 34-х дней сейчас. Для 1-й новы 71 день. ИМХО, очень даже правдоподобно.
Jump to: