-
luigi1111w
both of those are my emails
-
gzgavinzhao[m]
he's saying that fingerprints don't match up
-
luigi1111w
yeah IDK what's up with that yet
-
mj-xmr
I need a 2nd opinion on a short, but decisive matter. I'm trying to update the whole project to Python3 from v.2. I personally need it only for "functional_tests_rpc" but I thought it would be a good opportunity to do it project wise. Should I limit the change to the functional tests then?
-
mj-xmr
-
mj-xmr
All tests pass with Python3
-
mj-xmr
(set globally, that is)
-
usamat
hello.
-
usamat
could someone point me to any C or JS code for generating electrum 256 bit seed from mnemonics (25 words) ?
-
usamat
thnaks
-
usamat
*thanks
-
moneromooo
...
-
moneromooo
make it work for *both* if it doesn't currently.
-
moneromooo
usamat: src/mnemonics
-
moneromooo
I'm pretty sure I recently fixed it though. Let me see...
-
moneromooo
-
usamat
moneromooo thanks. yes im working on it.
-
moneromooo
I was unclear, the one line was for you, the others for mj-xmr.
-
mj-xmr
moneromooo, both versions work, for what I can see, ie. no tests have failed for Python3
-
moneromooo
With the patches I posted ?
-
mj-xmr
Ah, that's what you meant. No.
-
mj-xmr
I will try in the evening.
-
moneromooo
OK, well, if you didn't break 2 and you also did it, just PR. Your wording implied 2 was broken.
-
moneromooo
Oh, my patches are for the console part of python code... So they'll still be needed actually. I'll also PR them.
-
moneromooo
Assuming you did not also change that already.
-
mj-xmr
No
-
mj-xmr
Didn't
-
mj-xmr
Python2 creates notable differences in my timing calculations, but I will try to get around it with a C++ app, like iamamyth suggested. This will go in the direction Python2 and Python3 yielding the same results. But still many of his "code cleanness" comments require that I use Python3. It's generally starting to be hard to move around in Python2 realm.
-
mj-xmr
... which will reach EOL soon anyway.
-
ForestMapper
would it be possible to dev a nodejs randomx miner?
-
mj-xmr
moneromooo, The timing differences have been solved via the external C++ timing app in the below PR (warning. Lenghty)
-
mj-xmr
-
mj-xmr
So we dont HAVE to update to Python3, but it will bite us soon.
-
moneromooo
You're saying timeouts only happen with python 2 ?
-
moneromooo
In any case, I'm not sure it's worth wasting time just to make github servers happy.
-
moneromooo
(I would not unless someone annoys me about it tbh)
-
mj-xmr
I need to bring in some context to you. There's a mining test (mining.py). With that PR, I want to make the constant timeouts more dynamic, in case the virtual machine is overused. Then the fixed timeouts make less sense. For this purpose I make a short calculation to learn what the CPU can currently handle. The results of these calculations were different for Python2 and 3, when they were done under Python itself. Now I do these
-
mj-xmr
calculations in C++, so the Python version doesn't matter for this case anymore.
-
mj-xmr
(the results of calculation modify (by multiplication) the otherwise fixed constants)
-
selsta
-
selsta
seems like even with super high timeout it fails sometimes
-
selsta
so I kinda doubt this timeout is the problem in the first place
-
mj-xmr
selsta, I could imagine this. Later on I discovered, that there are 2 timeouts (hello clean code). One is for the RX init, that I increased, but then after the 1st block is mined, an another one (10s) is set. In my PR, I handle both cases separately.
-
selsta
I would just set an env var for CI and make the code check for it.
-
mj-xmr
For the 10s timeout case, I even simulate separately how the CPU would behave on 1 core, while the RX init readout is done for all the cores (just like the RX init behaves)
-
mj-xmr
The problem is, that if the virtual machine is used more by other projects / monero PRs, the CPU performance will decrease, and the constants (env var or code) stop making sense.
-
mj-xmr
Another use case: ctest -j2...
-
mj-xmr
So running tests in parallel will also affect the CPU performance and increase the mining time.
-
mj-xmr
From the recent logs of my PR:
-
mj-xmr
"Timeout for init, adjusted for the currently available CPU power, is 25.4 s"
-
mj-xmr
This is 10 times less than the fixed timeout, and will safeguard against mining regressions better.
-
mj-xmr
selsta, So to reiterate: I increased the RX init timeout from 60 to 240, but the subsequent mining timeout remained at 10s unfortunately, which was too little.
-
mj-xmr
-
mj-xmr
Here it is.
-
mj-xmr
At line 100 you can see the new 240s timeout.
-
mj-xmr
Also, it turned out, that the error message, that you show, was exactly the same for both 2 situations: RX init and mining. I created a distinction between them.
-
mj-xmr
So it was hard really to learn where the problem was.
-
mj-xmr
I hope my wall of text made things somewhat clearer.
-
juh9870
Hello, does anyone have example of block hashing blob? i'm trying to recconstruct get_block_hashing_blob algorithm but so far have no luck. I found 2 related stackexchange questions but they didn't help me much.
-
sech1
-
sech1
see an example there
-
moneromooo
Call getblocktemplate on a daemon, it's in there (as hexdump).
-
juh9870
okay, will try
-
juh9870
Have no access to daemon so tried to work with blob in example (block 1561970), tried to split it into information i can work with and got following results: 0707: version, 86a498d705: timestamp, f8dc58791266179087907a2ff4cd883615216749b97d2f12173171c725a6f84a: previous block, 00000000: nonce,
-
juh9870
fc751ea4a94c2f840751eaa36138eee66dda15ef554e7d6594395827994e31da: merkle root, 10: transaction count. And i have couple of issues with iit. Firstly, i can't understand how timestamp is serialized here, no matter how i try to decode 86a498d705 i can't get adequate timestamp. Secondly, i looked up this block by height at xmrchain and got list of
-
juh9870
transaction, but when i tried to calculate root by myself based on this list, my method returned completely different result: 8261ce12d6d34b14bd09d8780ee888002a77fe79a28be897df830d162dd35a93, despite passing teststs in tests-tree.txt from monero source code
-
moneromooo
Timestamp's a varint, src/common/varint.h
-
juh9870
ugh, still can't get right hashing blob for block 1561970. So foar i produce blob 98010707bd8098d705f8dc58791266179087907a2ff4cd883615216749b97d2f12173171c725a6f84a5f950080cd30905cd318b65fb1a6d0aed36cf624d9f0f20251d4e244b3bd13d2aa49ce040a where
-
juh9870
9801: header length (varint),___ 0707: version,___ bd8098d705: timestamp (varint),___ f8dc58791266179087907a2ff4cd883615216749b97d2f12173171c725a6f84a: previous block,___ 5f950080: nonce (4 bytes uint),___ cd30905cd318b65fb1a6d0aed36cf624d9f0f20251d4e244b3bd13d2aa49ce04: merkle root (payout + 9 transactions),___ 0a: tx count
-
juh9870
and when i run this hashblob trough keccak 256i still get different result from actiual block id
-
juh9870
what am i doing wrong?
-
juh9870
*misspelled: 9801: is varint-encoded length of rest of a blob, not of header
-
luigi1111
is the blockid computed on hash blob
-
vegiiQa
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
vegiiQa
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
vegiiQa
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
vegiiQa
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
vegiiQa
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
lmartin92UB
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
lmartin92UB
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
lmartin92UB
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
lmartin92UB
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
lmartin92UB
/!\ this chat has moved to irc.crimeircd.net #0 /!\
-
Raccoon
MVyc66J8ypXDo60zUSmzMbtNSzXahAmj2afhRrQ0srGTgtRMC4Lq4LqdNe5J3HfxxaeLaBuJgFOFXZ5756VztcRqkux2em8P9qKr8GPRkkrGxQcPGQmL5EtW