Poc1 > Poc2 conversion with Linux, some tools out there ?

  • Hi,

    after the brs 2.0.4 is working stable in solo mining i am looking forward to the hard fork in nearly 14 days.

    I found some conversion tools for windows on github.

    But i didn't find tools for Linux. So has someone found some conversion tools for Linux ? Or does someone know where to find them in the future ?

  • Hmm you have a point I cannot find any conversion tools for linux as well.

  • admin

  • @haitch Thanks for the link. I read this:

    PoC2 to PoC1 conversion

    This is not the intended mode of operation, but it works nevertheless.

    It's possible, because PoC1 -> PoC2 conversion does not lose any information, thus the conversion operation is symmetric. So should you - for whatever reasons - need to do this, here's how

    Rename your PoC2 plot file to contain a stagger info (ID_START_NONCES -> ID_START_NONCES_STAGGER) where the STAGGER = NONCES
    Let poc1to2.pl run on that file, so we pretend it's a PoC1 plot
    We will get a ID_START_NONCES file, which we again rename to ID_START_NONCES_STAGGER with NONCES = STAGGER, because in fact we now have an optimized PoC1 plot 

    Of course, you could now take that PoC1 file and again convert it into a PoC2 plot. Round you go."

    But how to "run t poc1to2.pl run on that file". Don't know what to type in the terminal at this time.

    It would be realy nice to have an step by step How to with the Example of an optimiced PoC1 file converting to PoC2 file. The readme is not clear for me and i think a step by step would be best for all Linux users.

    Perhaps someone can give adive or write a short how to (That way i wrote a how to for installing BRS 2.0.4 and installing maria.db for other Linux users).

    It should be a simple step by step guide for Linux, so that everbody can converte Poc1 to Poc2 by copy and paste and only changing the plotfile name.

    Still I don'tknow what exactly to do.

  • admin

    @burnme download the perl script then

    flag it executable: chmod +x poc1to2.pl
    then run it with: /poc1to2.pl <path to plotfile> [--mem MB] [--outdir <path>] [--quiet]

    All three options are not required, but mean:
    --mem MB : Enter a value in MB to use, overriding the default
    --outdir <path> : rathe rthan in-place convert, write the converted file to <directory>
    --quiet : suppress output

  • @haitch

    hi haitch,

    ok it seems to be simple.

    I will make some testing in the next days and report my learning.

    So i'm fine with Linux. I am using BTRFS File System, therefore during plotting PoC1 i got some issues because of the full HDD. The BTRFS seems to have some problems on Metadata when the HDD is fully filled. So it can be that the BTRFS brings out the message that the HDD is full even when its not realy full. It was the metadata that was full so that it was not possible to write any more DATA on the HDD. I solved this problem and got all HDD fully filled with my plots.

    So what do you think about in place converting on BTRFS. Does it work without the metadata error i mentioned ?
    Would it be faster to save the new PoC2 file on another harddrive ?

    And one more question. Does th per Script convert all plotfiles in the plotfile path. I have 1-3 plotfile per path.

  • admin

    @burnme I'm not using BTRFS so don't know how it'll interact with the metadata.

    The script requires a specific filename rather than directory, so you'll need to run it per plotfile.

  • @haitch

    Hi i am just testing Poc1 to Poc2 and i got some issues:
    I am using this command:

    ./poc1to2.pl /mnt/HDD7/(plotfile name) -mem 18284 -out /mnt/HDD1

    But everytime i got this message:

    Outdir defined. Copy conversion mode.
    Name: ... (Plotfilename)
    Path: /mnt/HDD7/
    memory to be used: 4571.000 MB
    processing scoops...
    read 2147479552 bytes instead of 2396520448

    First question: I defined mem with 18284 MB why is only used 4571 MB ? Without mem definintion i got the same read error. On a small plotfile without memory definition everything is working fine.

    Second: read ... bytes instead of ... ? What does that mean and what to do ?

    I am thinking that the converter expectetd 2396520448 bytes instead of 2147479552 bytes and that can be the error. But i don't know why. My PoC 1 file is working fine and is optimized.

  • all I can say if it isn't gonna do it; plot, plot again (that's how I roll with Linux)
    my sympathies to Linux users btw

  • Hi,

    i was thinking the same actually i am testing the other PoC1 to PoC2 converter written in Rust.

    I am using the command:

    ./poc1to2 here the folder and name of the plotfile -o some_directory

    f.e. : ./poc1to2 /mnt/HDD1/10282355196851764065_123456789_10000_10000 -o /mnt/HDD2

    In this example the PoC1 file "10282355196851764065_123456789_10000_10000" on HDD 1 is converted to a PoC2 file on HDD2.

    With this converter it seems to be working with Linux. I realy don't want to plot again. The last time it needed a lot of time and cpu power for plotting.

    Here is the Link for the converter: https://github.com/PoC-Consortium/Utilities.git

    The Link for install instructions: https://github.com/PoC-Consortium/Utilities/tree/master/poc1to2.rust

    I can everyone give the tip to use Linux. Its fast secure and stable without Microsoft spying you. But Microsoft did buy github 😞

  • One of my poc1to2 processes crapped out for no apparent reason, predictably on an ultra-slow-plotting 8TB Seagate Backup USB drive.

    There's no way to resume this process, is there? I'm going to have to plot it again from scratch, aren't I?

  • @tinycoins

    I got an error on poc1topoc2 too, like you.

    My error message is now:

    thread 'main' panicked at 'called Result::unwrap() on an Err value: Error { repr: Os { code: 5, message: "Input/output error" } }', src/libcore/result.rs:916:5
    note: Run with RUST_BACKTRACE=1 for a backtrace

    Cause of lack of information for the converters both Linux converters are not working and I don't know what to to.

    It seems that all Linux user have to replot everything with PoC2. Freaking out !!!!!!!!!! 😞

    Don't know why there is no more support for Linux Converter. Has someone advice or knowing what to do ?

    I am testing on and tell here my solving if I get some

    And why is there no other Linux user reporting on PoC2 Converting. There should be thousands of Linux users who want to use PoC2 ? Perhaps tinycoins and ZapbuzZ are the two of three with me. So in the whole Burstcoin space there are 3 Linux users. Perhaps we are the most stupid Linux user and all others can code their own solution 🙂

  • @burnme I'm using Ubuntu for mining and a bit of conversion, but I'm mainly using a Windows PC for plotting/conversion because it's a more powerful machine.

    You don't need to freak out; which miner do you use? If you get the most recent release of creepminer then it will work with PoC1 or PoC2 pools while you gradually replot. (I don't know if the same is true for other Linux miners.) I'm on course for having about half of my plots converted by the switchover, but there's no need to panic.

  • @tinycoins

    I am using CreepMiner 1.8.1 so it will be working with PoC1 and PoC2.

    Converting doesn't work for me. And actually i am testing PoC2 plotting. It's a bit frustrating cause PoC2 plotting with asynchronous writing doesn't work too.

    I am not on panic but sometimes it would be nice to have smooth solution without testing so much.

    So after testing i can say the asynchronous modus doesn't work on my Linux (Mintlinux), sometimes i got some freezing. But The normal one runs fine without asynchronous writing.

    So Plotting isn't so much slower for me but it needs much more electricity and CPU Power but its ok now.

  • admin

    @burnme I suspect the 4GB figure is all it need to do the conversion.

    The expected x bytes messages sounds like it might be a malformed plot - file size doesn't match the specs in the filename. Try running plotschecker on it.

    If a conversion dies, the plot file is screwed, delete and replot - I some I was doing over the wire fail, still reporting ....

    Finally the error opening,rust backtrack.... is probably due to the federal being mined at that point of time. Stop your miner before starting conversions.

  • @haitch

    1. both PoC1 to PoC2 convertes are using 4,5 GB RAM for each instance, i think you are right that its all it need to do the conversion.

    2. Is there any Plotchecker for Linux ? I can't find it right now. (But the plots are mining fine i created them with dcct plotter and then optimizing them after plotting. The filesize is high 9 TB, perhaps its a bit to high for converting tool writen in .pl ?)

    3. Rust backtrack: Ok i only disabled the miner for the HDD that gets the PoC2 file because i thought it would be ok to mine with the origin HDD during transformation to another HDD.

    So what i am doing now:

    Actually i have disabled mining all HDD that are on PoC2 conversion the origin HDD and the new output HDD.
    I am using the converter written in rust because the pl converter throws the error with the expected x bytes.
    I am trying to find another plot checker but CreepMiner can check the plots too and it says everything is fine.

    If i got a solution i write a short HowTo for other Linux user.