Pages:
Author

Topic: [ANN][RIC] Riecoin: constellations POW *CPU* HARD FORK successful, world record - page 25. (Read 685207 times)

member
Activity: 62
Merit: 12
Thanx a lot i make a deposit to zapple but it s long. Waiting..

Hi,

Guy from Zapple here.  If you're still having a problem raise a support ticket and I'll get it escalated to have a look at for you.  You can PM me here as well but I'm less likely to see a message quickly.

Thanks,

Guy
IGJ
newbie
Activity: 29
Merit: 2
Unfortunately, as I did not study the miner optimizations, I do not have any idea of what are the "segment hits" :| ...

My quick look over the code, leading me to few thoughts... As I understand segment_hits is pointer to array of pointers, the way you declare it, and use it may lead to sure memory leaks. In C (not sure for C++ but should be same) when you just declare pointer, it points to nowhere in the memory.
In C I would declare and initialize it like this...

uint32_t **segment_hits;
sgment_hits = malloc( maxiter * sizeof(uint32_t *) );
if ( !segment_hits ) {do something allocation of memory failed}
for (int i=0; i < maxiter; i++) {
   segmet_hits\[i\] = malloc( entriesPerSegment * sizeof(uint32_t) );
   if ( !segment_hits\[i\] ) {do something allocation of memory failed}
}
note: The forum do not allow me to directly put "[" and "]" thats why I'm escaping them.

Also check deeper the code, because from what i see usage of segment_hits in your code may go out of array boundaries. Anyway, when I start riecoin community forum we may move there to talk for that and to look deeper in codes Smiley

Hope this helps.
member
Activity: 113
Merit: 51
Riecoin developer
The failure is a bad alloc, so I do not think that the problem is CPU related. Just for fun, I compiled it once on a Pentium 3 laptop, unfortunately it has this issue. But I encountered it in some recent computers as well. I suspect that for some reason, rieMiner needs much more memory to start, than it actually uses/needs. I will investigate this later in September. I likely just removed one line too much or so.

This exception is throw when "new" in C++ cant allocate memory. In fact calling new not guarantee it will allocate the needed memory. So it throw that exception and you have to handle it in your code, or you can stop throwing the exception and you should check if returned pointer is not null. Second method is slower, so first one is better practice. On P3 machine it is obvious that there is not enough memory, but if you doubt about memory leaks valgrind and gdb are your best friends. They will show you where you allocating memory and not freeing it.
  In DGA's fastrie miner there is some points where memory leaks are possible. but they are not a problem. It is always good practice to call "delete" in C++ when you don't need any more allocated memory from heap with "new" and  to call mpz_clear for mpz structures, even when there is no obvious point to do it.

Ok, so you are right, I did some quick debugging, and the problem occurs when I use new for an array called segment_hits. It is allocating almost 30 GB... For some reason, the miner is much more sensitive to this problem on Windows than Linux, so I thought at first that it was a Windows specific problem.

Unfortunately, as I did not study the miner optimizations, I do not have any idea of what are the "segment hits" :| ... The huge memory allocation problem seems to be fixable by reducing the max_increments value (with for example 1 << 25 instead of 1 << 29), but this seems to decrease noticeably the performance (by about 40%). But by doing that, I was able to get the Pentium 3 laptop mining properly! It is about 100 x slower than one 2700X unthrottled thread, but would still find a Testnet block each hour. This variable might simply be an user configurable variable, like the sieve size.

I will commit in minutes to reflect these observations (essentially updating the Readme and restore the allocation checks that I stupidly removed). Thank you for pointing out the bad alloc origin.
member
Activity: 266
Merit: 10
Hello i have some riecoin on polonie someone knows how i can move it or exchange them ?

Hello, jhdscript

As Poloniex delisted riecoin you cant exchange them directly there. You have couple options...

1. Start your own wallet (linux or windows), sync it to the network, generate your riecoin address, and withdraw your RICs from poloniex to your wallet.

2. Create registration on zapple.com (only exchange which support ric at the moment), and move your coins there.

3. There is web wallet version, see somewhere in previous posts.

If you decide to try variant 1. read this:

http://download.riecoin-community.com/README.txt

There I wrote what you need to run your own wallet under linux and windows.

Thanx a lot i make a deposit to zapple but it s long. Waiting..
IGJ
newbie
Activity: 29
Merit: 2
The failure is a bad alloc, so I do not think that the problem is CPU related. Just for fun, I compiled it once on a Pentium 3 laptop, unfortunately it has this issue. But I encountered it in some recent computers as well. I suspect that for some reason, rieMiner needs much more memory to start, than it actually uses/needs. I will investigate this later in September. I likely just removed one line too much or so.

This exception is throw when "new" in C++ cant allocate memory. In fact calling new not guarantee it will allocate the needed memory. So it throw that exception and you have to handle it in your code, or you can stop throwing the exception and you should check if returned pointer is not null. Second method is slower, so first one is better practice. On P3 machine it is obvious that there is not enough memory, but if you doubt about memory leaks valgrind and gdb are your best friends. They will show you where you allocating memory and not freeing it.
  In DGA's fastrie miner there is some points where memory leaks are possible. but they are not a problem. It is always good practice to call "delete" in C++ when you don't need any more allocated memory from heap with "new" and  to call mpz_clear for mpz structures, even when there is no obvious point to do it.
member
Activity: 113
Merit: 51
Riecoin developer
...

AFAIK, regtest mode isn't available on the 0.9 codebase, at least not easily... so having an easy testnet will most likely help dev work. I would suggest throttling your miner (on a low power VM) to keep the difficulty manageable.

Correction, regtest is there. Still, it probably would be helpful to have a low diff testnet.

Sure, I will mine very slowly by using cpulimit. I will try to produce about 1 block each 2,5 min at difficulty 304.
IGJ
newbie
Activity: 29
Merit: 2
Hello i have some riecoin on polonie someone knows how i can move it or exchange them ?

Hello, jhdscript

As Poloniex delisted riecoin you cant exchange them directly there. You have couple options...

1. Start your own wallet (linux or windows), sync it to the network, generate your riecoin address, and withdraw your RICs from poloniex to your wallet.

2. Create registration on zapple.com (only exchange which support ric at the moment), and move your coins there.

3. There is web wallet version, see somewhere in previous posts.

If you decide to try variant 1. read this:

http://download.riecoin-community.com/README.txt

There I wrote what you need to run your own wallet under linux and windows.
hero member
Activity: 626
Merit: 504
...

AFAIK, regtest mode isn't available on the 0.9 codebase, at least not easily... so having an easy testnet will most likely help dev work. I would suggest throttling your miner (on a low power VM) to keep the difficulty manageable.

Correction, regtest is there. Still, it probably would be helpful to have a low diff testnet.
hero member
Activity: 626
Merit: 504
 When you developing miner it will be better to have low difficulty, so checking if your algorithm is right will be faster, it is annoying to must wait hours or days just to check if block you found is correct Smiley

The Testnet is more meant to look like the Mainnet network, where people (not just developers) can test Riecoin with "play tokens". Developers who are creating programs other than a miner would like to be able to send and receive coins too, with new blocks found regularly.

If I am not mistaken, there exist a "regression mode", more adapted to do such testing, with an own local network. Raw performance testing is preferably done by using some fixed data from a chosen block.

 Cool, my plans are to build riecoin community site with a lot HOWTOs and information about riecoin so if you don't mind will include your miner. Your source code looks very clean and ordered, it is good to have as much as possible different and various software for riecoin, that will attract more people to the community.

No problem, and thank you for the feedback. I wish you all success with your website.

 With what error execution fails ? You are using gmplib which is highly optimized for calculations, and big parts from it are in assembler. It gives big speedup but portability is lower, for example if you compile with gmplib optimized for i7 or xeon it will fail to run on P4. many modern compilers put by default optimizing flag -mtune=native which will auto detect CPU instructions set and will optimize for it, which can break portability too. Maybe to be portable one cpu miner you should use -march=pentium4 your code will run on any modern CPU , but you will lose speed.

The failure is a bad alloc, so I do not think that the problem is CPU related. Just for fun, I compiled it once on a Pentium 3 laptop, unfortunately it has this issue. But I encountered it in some recent computers as well. I suspect that for some reason, rieMiner needs much more memory to start, than it actually uses/needs. I will investigate this later in September. I likely just removed one line too much or so.

AFAIK, regtest mode isn't available on the 0.9 codebase, at least not easily... so having an easy testnet will most likely help dev work. I would suggest throttling your miner (on a low power VM) to keep the difficulty manageable.
member
Activity: 113
Merit: 51
Riecoin developer
 When you developing miner it will be better to have low difficulty, so checking if your algorithm is right will be faster, it is annoying to must wait hours or days just to check if block you found is correct Smiley

The Testnet is more meant to look like the Mainnet network, where people (not just developers) can test Riecoin with "play tokens". Developers who are creating programs other than a miner would like to be able to send and receive coins too, with new blocks found regularly.

If I am not mistaken, there exist a "regression mode", more adapted to do such testing, with an own local network. Raw performance testing is preferably done by using some fixed data from a chosen block.

 Cool, my plans are to build riecoin community site with a lot HOWTOs and information about riecoin so if you don't mind will include your miner. Your source code looks very clean and ordered, it is good to have as much as possible different and various software for riecoin, that will attract more people to the community.

No problem, and thank you for the feedback. I wish you all success with your website.

 With what error execution fails ? You are using gmplib which is highly optimized for calculations, and big parts from it are in assembler. It gives big speedup but portability is lower, for example if you compile with gmplib optimized for i7 or xeon it will fail to run on P4. many modern compilers put by default optimizing flag -mtune=native which will auto detect CPU instructions set and will optimize for it, which can break portability too. Maybe to be portable one cpu miner you should use -march=pentium4 your code will run on any modern CPU , but you will lose speed.

The failure is a bad alloc, so I do not think that the problem is CPU related. Just for fun, I compiled it once on a Pentium 3 laptop, unfortunately it has this issue. But I encountered it in some recent computers as well. I suspect that for some reason, rieMiner needs much more memory to start, than it actually uses/needs. I will investigate this later in September. I likely just removed one line too much or so.
member
Activity: 266
Merit: 10
Hello i have some riecoin on polonie someone knows how i can move it or exchange them ?
IGJ
newbie
Activity: 29
Merit: 2
Oh Ok, this is fine in this case. I just expected that there would be much more blocks, and new ones found regularly, so I thought that something was wrong. Lol, I just mined hundreds of blocks at the rate of 1 block each 3 second or so, difficulty 304 is so low. In contrast, I was unable to mine anything using the wallet's built-in miner. I might leave one mining thread for the testnet network, so developers and testers can experience more realistic behavior when using it. A Testnet explorer would be welcome too. Thank you again for your nodes, and your reply.

  When you developing miner it will be better to have low difficulty, so checking if your algorithm is right will be faster, it is annoying to must wait hours or days just to check if block you found is correct Smiley

If anyone is interested in, I merged the original gatra's miner (rminerd) and the latest dave-andersen's one (fastrie), so anyone can solo mine Riecoins using the optimized algorithm. Here is the rieMiner's GitHub repository.

  Cool, my plans are to build riecoin community site with a lot HOWTOs and information about riecoin so if you don't mind will include your miner. Your source code looks very clean and ordered, it is good to have as much as possible different and various software for riecoin, that will attract more people to the community.

Currently, you should be able to compile it easily on Linux and Windows. The miner works fine on my computer, and is currently mining blocks, but for some reason, its execution might fail in some computers. Moreover, only the old protocol Getwork is supported. I plan to work on it on September and later to add the GetBlockTemplate (and custom payout addresses) and Stratum (and pool mining as well) protocols support, a benchmark mode (dummy mining at constant difficulty), and fix remaining problems.

  With what error execution fails ? You are using gmplib which is highly optimized for calculations, and big parts from it are in assembler. It gives big speedup but portability is lower, for example if you compile with gmplib optimized for i7 or xeon it will fail to run on P4. many modern compilers put by default optimizing flag -mtune=native which will auto detect CPU instructions set and will optimize for it, which can break portability too. Maybe to be portable one cpu miner you should use -march=pentium4 your code will run on any modern CPU , but you will lose speed.
member
Activity: 113
Merit: 51
Riecoin developer
[...] That list are my nodes I started before, and using them from time to time to testing builds or miner modification. It is not stuck, just there is only 34 blocks left on them from my tests. [...]

Oh Ok, this is fine in this case. I just expected that there would be much more blocks, and new ones found regularly, so I thought that something was wrong. Lol, I just mined hundreds of blocks at the rate of 1 block each 3 second or so, difficulty 304 is so low. In contrast, I was unable to mine anything using the wallet's built-in miner. I might leave one mining thread for the testnet network, so developers and testers can experience more realistic behavior when using it. A Testnet explorer would be welcome too. Thank you again for your nodes, and your reply.

If anyone is interested in, I merged the original gatra's miner (rminerd) and the latest dave-andersen's one (fastrie), so anyone can solo mine Riecoins using the optimized algorithm. Here is the rieMiner's GitHub repository.

I heavily simplified and modernized (making it more C++ish) the code. Indeed, the fastrie's code contains many parts of unused or outdated code. In another hand, I am not knowledgeable enough to improve the miner algorithm, so this miner is more a convenience improvement than a performance one.

Currently, you should be able to compile it easily on Linux and Windows. The miner works fine on my computer, and is currently mining blocks, but for some reason, its execution might fail in some computers. Moreover, only the old protocol Getwork is supported. I plan to work on it on September and later to add the GetBlockTemplate (and custom payout addresses) and Stratum (and pool mining as well) protocols support, a benchmark mode (dummy mining at constant difficulty), and fix remaining problems. The Testnet nodes will be very useful for me!
IGJ
newbie
Activity: 29
Merit: 2

Thank you IGJ (and everyone who supports the project).

Unfortunately, using your nodes, I am stuck at block 34 (36 weeks behind). Do I need to configure something else? Does anyone have more Testnet IPs?

  Hello, PttnMe

Official testnet nodes, that are hardcoded into the latest stable version do not work since years. That list are my nodes I started before, and using them from time to time to testing builds or miner modification. It is not stuck, just there is only 34 blocks left on them from my tests.

I can sync main chain to testnet if you need it for your tests, but it will add a lot sync time. Anyway if you need exactly that let me know.

At all you don't need something else to configure in your wallet to enable testnet.
 
member
Activity: 113
Merit: 51
Riecoin developer
[...]
  For testing and developing, started two test nodes, and created dns record for them, so if you want to use testnet add these lines to your riecoin.conf

addnode=testnet.riecoin-community.com
testnet=1

  If you have or plan to start a node in testnet for longer and want to be put in nodes list, please send me private message with your ip address.

Thank you IGJ (and everyone who supports the project).

Unfortunately, using your nodes, I am stuck at block 34 (36 weeks behind). Do I need to configure something else? Does anyone have more Testnet IPs?
IGJ
newbie
Activity: 29
Merit: 2
Update 2018-08-16

  Riecoin wallet on Raspberry Pi !

  http://download.riecoin-community.com/community_builds/riecoin-0.10.2-community_rpi.tar.gz

Contains static and shared binaries for raspberry Pi. Shared binaries are for raspberian/debian 9 (current stable version), console and qt (graphical) version of the wallet. Static binaries, only console wallet, should work on any linux distribution for raspberry pi. If you plan to use static binaries, please test them well, before use in production, I am worried about few compiler warnings and cant guarantee everything will work properly.

  For testing and developing, started two test nodes, and created dns record for them, so if you want to use testnet add these lines to your riecoin.conf

addnode=testnet.riecoin-community.com
testnet=1

  If you have or plan to start a node in testnet for longer and want to be put in nodes list, please send me private message with your ip address.
jr. member
Activity: 55
Merit: 1
Just let them dump and give their hard earned money to more intelligent people. They will cry when the price will recover. This might need months, but as long as we have motivated people like Clo1, Lzknr, IGJ and all the community, there is no reason that the project will collapse. The 0.16 wallet, a good maintained community website, an interesting hard fork, some advertising, and the market cap will easily match the Primecoin one (which would give us a price over 6000 sat). IGJ, do not hesitate to take initiatives with your website and promote the project!

Carlospavone, Love diem, and all the holders who bought at more than 500, just do not panic. Forget about your coins and come back only in a few months to check the price. You should still be prepared to lose everything if I was too optimistic (never invest what you cannot afford to lose). But if you sell now, you lose for sure.


And congrats Guytp, Cryptoid is now using Zapple to show the price! Next step is CoinMarketCap!
hero member
Activity: 1106
Merit: 508
Bisq Market Day - March 20th 2023
excuse my english i have riecoin in poloniex i loose a lot of money, i prefer no sell now, what can i do? where can my riecoins send to trade in the futur or exist any wallet to send it, help me please

I lost with this coin nearly 0.5 btc. Because I bought at price in more than 1,000 satoshi. I decided to not sell them and I installed desktop wallet and transferred to my desktop wallet already.

0.5 BTC sounds like a painful experience, but believe me there are people who lust a lot more than that. I know that doesn't bring your money back, but we are somehow all in the same boat.

Thank you for your messages. I'm very sad with my investment but I 'm trying to recover.
I bought at Polo around 0.42 BTC by average price 1,100 satoshi and Zapple around 0.05 BTC by average price 500 satoshi. ( total 2 exchanges , my break even price is around 975 satoshi ).
Now I'm trying to sell another coins and buy RIC. I'm trying to reduce my break even price as most as possible.
I like this coin and I try to follow up this coin from last year until now. I'm still think that this coin will have future.
De-listing coin is very high risk but I decided to continue with it. The time will tell us.
 

Get familiar with the term "Never catch a falling knife". Averaging down your price is good but only if you are very confident that it will ever go up in price significantly. Otherwise that strategy makes you lose a lot of money.

I bought RIC more on last day ( 2 Aug.'18 ) and my new break even price is around 450 satoshi. I have to wait for long time. May be I will correct.

I wish you the best of luck because right now that's what everyone in this market needs. So many weak hands are still in it.
newbie
Activity: 20
Merit: 0
I've made pretty good progress on the upgrade over the last couple weeks. If you take a look at the explorer network you will see a 0.16.0 node.


This is great! I am happy to see you making progress here.

TO hopguide: no I have not been working with him. I am happy to see that someone moved faster and I will loose the bounty.
jr. member
Activity: 55
Merit: 1
I've made pretty good progress on the upgrade over the last couple weeks. If you take a look at the explorer network you will see a 0.16.0 node. I believe I have all the riecoin changes implemented. I was able to sync the chain starting from scratch. The gui is close to complete as well. I have a few more things I need to test. I'm hoping to release a version of the code in a couple weeks for more extensive testing.

Can someone give me a list of seed nodes to use? Should I use the list of nodes on page 284?

Very good, great news! Thank you! Are you working with Lzknr, or alone? (then you would be competing each other for the bounty) Do you have a GitHub repository, so we can check the progress?

Could you upgrade later to 0.16.2 instead of 0.16.0?

About hard coded nodes, try finding some very old lists and check if some nodes are still in the latest one from Ziiip, and choose these one. Or just run the client for a months and only keep the nodes that are connected at least 99 % of the time.


...

We will need to decide which of the bitcoin softforks we want to implement. The code is all there. It is just a matter of activating them. If we choose to activate them we might need to update miners to use a new block version.


All of them. It's not worth trying to deviate from upstream with the development manpower Riecoin has, and all available softforks offer valid network improvements.

+1, and this is likely to improve in some way acceptance and integration of Riecoin in future exchanges. (like Barter DEX which required some BIPs, but would else gladly accept listing RIC)

Sure, faucet is re-enabled:

https://cryptap.us/ric/faucet

Thank you!
Pages:
Jump to: