Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 24, 2016, 05:49:19 PM |
|
Hi EK, I fixed the longpoll error in the miner and updated the github.
Please let me know if you find anything else.
Looks amazing! One little "artefact" I noticed is this: When the work is completed, the miner still tries to submit PoW for this work. The reason is that the longpoll did not yet fire to "see a new block" (because there was no block). The job is more closed because its funds went to zero. I think I should give back a better error message if the funds are gone, so we dont confuse it with the "20 POW limit". See here
|
|
|
|
coralreefer
|
|
November 24, 2016, 06:05:25 PM |
|
Hi EK, I fixed the longpoll error in the miner and updated the github.
Please let me know if you find anything else.
Looks amazing! One little "artefact" I noticed is this: When the work is completed, the miner still tries to submit PoW for this work. The reason is that the longpoll did not yet fire to "see a new block" (because there was no block). The job is more closed because its funds went to zero. I think I should give back a better error message if the funds are gone, so we dont confuse it with the "20 POW limit". See here I agree that eventually we can enhance the messaging to tighten up the integration between the miner / server. But I think we may want to hold off on it for a bit until we see a much larger scale test (probably will only occur once we go to mainnet) in case we observe other scenarios that could influence our direction. People will just need to understand that this is still Beta (or even Alpha) and that issues like this will exists for a while in this initial version.
|
|
|
|
Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 24, 2016, 06:15:04 PM |
|
@coralreefer: agreed! I have still extended the error messages a bit so we have it easier in the future. These are possible: Proof of Work: Duplicate unconfirmed transaction: work is already closed Duplicate unconfirmed transaction: maximum pows per block reached Duplicate unconfirmed transaction: work ran out of funds
Bounty Announcement: Duplicate unconfirmed transaction: no more bounty announcement slots available
Bounty: Duplicate unconfirmed transaction: work is already closed, you missed the reveal period And of course a plain Duplicate unconfirmed transaction if it's really a duplicate.
|
|
|
|
hagie
|
|
November 24, 2016, 06:16:44 PM |
|
Hi, I just updated my public node to 0.7.1 @ https://elastic.cryptnodes.site/index.htmlBlockdownload isn't happening at the moment - still stuck at block #2 I tried to redeem my XEL but I get the same error like if I try to add/edit my userinfo : Could not validate unsigned bytes returned by the server. Was there a sollution to this or did I missed it ? Regards
|
|
|
|
coralreefer
|
|
November 24, 2016, 06:20:59 PM |
|
@coralreefer: agreed! I have still extended the error messages a bit so we have it easier in the future. These are possible: Proof of Work: Duplicate unconfirmed transaction: work is already closed Duplicate unconfirmed transaction: maximum pows per block reached Duplicate unconfirmed transaction: work ran out of funds
Bounty Announcement: Duplicate unconfirmed transaction: no more bounty announcement slots available
Bounty: Duplicate unconfirmed transaction: work is already closed, you missed the reveal period And of course a plain Duplicate unconfirmed transaction if it's really a duplicate. Excellent! great work as usual. Later tonight, I'll update the miner to check for both "Duplicate" and ":", if it see's both, then I'll display the "discarded" message. Otherwise, I'll display the error message. Is that as you intended it?
|
|
|
|
Soul_eater_123
Legendary
Offline
Activity: 952
Merit: 1000
|
|
November 24, 2016, 06:23:40 PM |
|
Guys I've been away for a while. So apologies for the stupid question but are we able to claim our tokens yet?
|
|
|
|
Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 24, 2016, 06:31:59 PM |
|
Hi, I just updated my public node to 0.7.1 @ https://elastic.cryptnodes.site/index.htmlBlockdownload isn't happening at the moment - still stuck at block #2 I tried to redeem my XEL but I get the same error like if I try to add/edit my userinfo : Could not validate unsigned bytes returned by the server. Was there a sollution to this or did I missed it ? Regards With only 3 test nodes it is really "instable" to kick off the blockchain. To make things easy you could use this in your (at the moment empty) conf/nxt.properties nxt.numberOfForkConfirmations=0 nxt.testnetNumberOfForkConfirmations=0
Also, please do a git pull - i have added some fixes! It should sync from there on! Regarding the other error ... I am clueless, but I will take a look into it tonight.
|
|
|
|
hagie
|
|
November 24, 2016, 06:39:43 PM |
|
The chain is moving finally (without doing git pull) but will recompile right now.
Because I can't redeem xel maybe someone could send me some test-xel : XEL-XFMU-85XU-V4S3-EZZY2
Thanks
P.S. I could set up one or two other nodes if you need them.
|
|
|
|
wpalczynski
Legendary
Offline
Activity: 1456
Merit: 1000
|
|
November 24, 2016, 06:50:03 PM |
|
Any chance someone could make a script do deploy a node? I'll host it on a VPS, maybe others would too if it was dead simple.
|
|
|
|
Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 24, 2016, 06:53:08 PM |
|
Any chance someone could make a script do deploy a node? I'll host it on a VPS, maybe others would too if it was dead simple.
That would be great ;-) Right now we have a docker image which works pretty simple ( http://elastic-project.com/installing_and_running_elastic) but I have no idea if the port 6876 would be externally reachable.
|
|
|
|
wpalczynski
Legendary
Offline
Activity: 1456
Merit: 1000
|
|
November 24, 2016, 06:58:05 PM |
|
Should be fairly easy to enable the port with a script on a Linux box VPS hosted no?
Im not good with Unix at all.
|
|
|
|
ttookk
|
|
November 24, 2016, 07:52:55 PM |
|
Guys I've been away for a while. So apologies for the stupid question but are we able to claim our tokens yet?
Nope. No ETA yet, either.
|
|
|
|
Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 24, 2016, 08:27:07 PM |
|
@coralreefer: agreed! I have still extended the error messages a bit so we have it easier in the future. These are possible: Proof of Work: Duplicate unconfirmed transaction: work is already closed Duplicate unconfirmed transaction: maximum pows per block reached Duplicate unconfirmed transaction: work ran out of funds
Bounty Announcement: Duplicate unconfirmed transaction: no more bounty announcement slots available
Bounty: Duplicate unconfirmed transaction: work is already closed, you missed the reveal period And of course a plain Duplicate unconfirmed transaction if it's really a duplicate. Excellent! great work as usual. Later tonight, I'll update the miner to check for both "Duplicate" and ":", if it see's both, then I'll display the "discarded" message. Otherwise, I'll display the error message. Is that as you intended it? Something like this! BUt i found a more serious issue in the miner. It uses 100% CPU on all threads even if no work is live and it should be idle ;-)
|
|
|
|
coralreefer
|
|
November 24, 2016, 09:31:24 PM |
|
Something like this! BUt i found a more serious issue in the miner. It uses 100% CPU on all threads even if no work is live and it should be idle ;-)
I'll take a look at this. On my system the threads go back to minimal usage, but with the recent changes, I may have broken something. Should be pretty easy to fix.
|
|
|
|
Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 24, 2016, 09:45:32 PM |
|
Something like this! BUt i found a more serious issue in the miner. It uses 100% CPU on all threads even if no work is live and it should be idle ;-)
I'll take a look at this. On my system the threads go back to minimal usage, but with the recent changes, I may have broken something. Should be pretty easy to fix. I noticed it when I launched the miner when there was work online and waited until the work was finished! I will try to reproduce this once again.
|
|
|
|
coralreefer
|
|
November 24, 2016, 09:54:39 PM |
|
Something like this! BUt i found a more serious issue in the miner. It uses 100% CPU on all threads even if no work is live and it should be idle ;-)
I'll take a look at this. On my system the threads go back to minimal usage, but with the recent changes, I may have broken something. Should be pretty easy to fix. I noticed it when I launched the miner when there was work online and waited until the work was finished! I will try to reproduce this once again. There is a difference when there is no work vs work, but none eligible to be mined (i.e. no bounties left). I would guess on your system with no work, it idles, but with non-eligible work, it's still doing something...that's what I may have broken when I redid all the i/o logic.
|
|
|
|
Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 24, 2016, 10:03:41 PM |
|
Something like this! BUt i found a more serious issue in the miner. It uses 100% CPU on all threads even if no work is live and it should be idle ;-)
I'll take a look at this. On my system the threads go back to minimal usage, but with the recent changes, I may have broken something. Should be pretty easy to fix. I noticed it when I launched the miner when there was work online and waited until the work was finished! I will try to reproduce this once again. There is a difference when there is no work vs work, but none eligible to be mined (i.e. no bounties left). I would guess on your system with no work, it idles, but with non-eligible work, it's still doing something...that's what I may have broken when I redid all the i/o logic. Here it's reproducible when I just start the miner up with no work:
|
|
|
|
ttookk
|
|
November 24, 2016, 10:18:43 PM |
|
Could Lannister just log in and say "hi"? It's been a while…
|
|
|
|
coralreefer
|
|
November 25, 2016, 12:39:38 AM |
|
Something like this! BUt i found a more serious issue in the miner. It uses 100% CPU on all threads even if no work is live and it should be idle ;-)
I'll take a look at this. On my system the threads go back to minimal usage, but with the recent changes, I may have broken something. Should be pretty easy to fix. I noticed it when I launched the miner when there was work online and waited until the work was finished! I will try to reproduce this once again. There is a difference when there is no work vs work, but none eligible to be mined (i.e. no bounties left). I would guess on your system with no work, it idles, but with non-eligible work, it's still doing something...that's what I may have broken when I redid all the i/o logic. Here it's reproducible when I just start the miner up with no work: EK, I've posted an updated miner. Let me know if this fixes the issue for you. I think it was caused during my i/o redesign by the removal of the 15 sec sleep when there is no work. I have incorporated a modified 15 sec sleep now.
|
|
|
|
Evil-Knievel
Legendary
Offline
Activity: 1260
Merit: 1168
|
|
November 25, 2016, 08:07:57 AM |
|
I am trying to measure the Elastic Network's performance in Gigaflops! Far from trivial, here are my thoughts. What do you think? How is the Gigaglop Estimation Performed?Estimating the network's computation power is not a trivial task since many different architectures with a broad variety of hardware come together. So please keep in mind, that an accurate estimation is not possible at this point. However, we are using the following technique to roughly estimate the network's computation power from empirical values that we have collected on a reference computer: Disclaimer: The estimated Gigaflops can be unprecise and differ significantly from the reality!- We begin with a very simple work task, the simplest possible that contains just one verify statement with one expression
- We are using an Intel i7 4700HQ as the reference CPU, and measure (over a long period) how many POW packages we (on average) generate in each 360 second period on minimal difficulty. We are using a highly optimized C miner and assume that the C code optimization we achieve using GCC reflects the fastest possible way to run that work package on that CPU.
- We know that the i7 4700HQ performs at 3.34 Gigaflop/s per core. On one core, this CPU generates on average X POW per 360 second period on minimal difficulty
- The above values are hard coded into GigaflopEstimator.java, let's now look at what happens at the users' computers
- At the beginning the client measures how long it takes to evaluate the very simple program in the Elastic PL interpreter on the users' machine, and, every time the client sees a new work package, it measures how long it takes to evaluate it as well. It calculates a stretch-factor which indicates how much more it takes to evaluate other work packages in comparison to the simple work package. The thought is, if the strech factor of a new work package is for example x2 and we still generate the same amount of POW submissions for the lowest difficulty per 360s frame, we can assume that our computation power has doubled
- Now, the client constantly monitors all open works, their POW submission rates (of the total network) per 360s frame, and their difficulty. We only account for works that have received a POW in the last 3 blocks, to ignore works that are not being worked on due to whatever reason.
Now comes the magic:- From the strech-facor for each work and the target (which itself can be seen as a scaling factor, since the target throttles linearly the POW rate in relation to the computational power) each client can derive the estimated POW rate per 360s that we would likely have if both the target would be minimal on all work packages and all works were as simple as they could be
- From the hard coded rate at which an i7 4770HQ can generate such POWs (minimal target and minimal complexity) [see point 3 above] we can now estimate how many cores an i7 4770HQ would have to have in order to generate the same amount of POWs per 360 second frame that we have seen in the network
- From the Gigaflop power of each core of the i7 4770HQ [again, point 3 above] we can estimate how many Gigaflops the entire Elastic network must have.
|
|
|
|
|