Duinocoin version 3.0 släppt

Den nya versionen ger högre hashprestanda till Arduino & Co

Utvecklingsteamet kring Duinocoin-uppfinnaren Robert Piotrowski (revoxhere) har släppt version 3.0 av kryptovalutan som är skräddarsydd för mikrokontroller.

Version 3.0 av Duinocoin-programvaran ger Arduino Uno, ESP8266/ESP32-kort och andra mikrokontroller högre hastighet och därmed högre hashfrekvens för gruvdrift. Det finns en snygg, webbaserad instrumentpanel för ESP8266/ESP32 och PC-mineraren klarar upp till tio gånger högre hashhastighet tack vare "fasthash".

Antalet DUCO-Miner ökar till över 20 000

Duinocoin Logo

För närvarande (den 07 februari 2022) finns det cirka 8000 ESP8266, 7000 Arduino, 800 datorer, 700 Raspberry Pi, 200 ESP32 och 200 webminers, 100 smartphones och 100 andra miners som arbetar i Duinocoin-nätverket. Duinocoinen (DUCO) har inofficiellt ett värde på 0,00118381 US-dollar.

Hashfrekvensen på PC ökade tio gånger!

Den gamla Duinocoin-programvaran version 2.74/2.75 är från den 15 november 2021 och fungerade ganska stabilt. Före den nya stora utgåvan 3.0 fanns det en release candidate "3.0rc", som ersattes av den slutliga utgåvan 3.0 bara tre dagar senare. Den nya Duinocoin-mjukvaran kan laddas ner som vanligt på Github.

För PC- och Raspberry Pi-användare borde den nya funktionen "fasthash" i PC Miner vara intressant, eftersom den ska ge en hashfrekvens som är upp till tio gånger högre. Tekniskt sett är detta verkligen ett tydligt steg framåt. Med tanke på Kolka-systemet, som belönar svaga system rättvist och därmed mer än snabba system, kommer den extra prestandan dock knappast att betala sig i DUCO.

ESP8266/ESP32 med instrumentpanel

Nytt i version 3.0 är en instrumentpanel för ESP-familjen. Gruvarbetare med ESP8266 och ESP32 visar en liten översikt över hashfrekvensen och annan information via en minivwebbserver under sin IP-adress. För större gruvgårdar är det bättre att samla denna information på en enda webbsida.

10 % snabbare: Optimering av kompilatorn för Arduino och ESP8266/ESP32

De som förväntar sig förändringar i algoritmen för gruvdrift (DUCO-S1) kommer tyvärr att bli besvikna. Hastighetsökningen för mikrokontrollerna kommer från optimeringen av GNU C Compiler (GCC). Istället för att använda standardinställningen som tidigare är Duinocoin-mjukvaran nu specifikt optimerad för hastighet.

#pragma GCC optimize ("-Ofast").

I standardinställningen optimerar GCC och andra kompilatorer koden för mikrokontroller med avseende på storlek - dvs. de försöker skapa så små binärer som möjligt (det program som kan köras på mikrokontrollern). Orsaken är att med en mikrokontroller - till exempel i en tvättmaskin - handlar det inte om några procent högre hastighet när programvaran körs. Det är mycket viktigare att kunna spara några cent på mikrokontrollern genom att till exempel använda en version med lite mindre minne - alternativt kan man kanske bygga in några extra funktioner i en redan planerad mikrokontroller.

Duinocoin Code Version 3.0

Duinocoin-programvaran i version 3.0.

Optimering för snabbhet är ibland meningsfullt i realtidstillämpningar, till exempel i programvaran för en drönare, en kamera eller kanske en 3D-skrivare. Med Duinocoin är denna optimering egentligen inte nödvändig, eftersom Kolka-systemet automatiskt belönar svagare system med lägre hashprestanda bättre än snabba system. Ändå: Mer fart vid gruvdrift ser alltid bra ut och gör ingen skada... eller hur?

Problem på grund av optimeringen?

Optimering för hastighet innebär automatiskt att den binära filen för mikrokontrollern blir större. Detta är helt irrelevant med Arduino UNO och ESP8266/ESP32, men kan vara problematiskt med en ATtiny-mikrokontroller med endast några KByte minne. Om gruvprogramvaran inte får plats i minnet på styrenheten kan du ta bort ovanstående alternativ.

TIPS: Om minnet är mycket trångt

Om Duinocoin-programvaran inte får plats i minnet på en mikrokontroller även med standardinställningen (utan ovanstående #PRAGMA-angivelse) kan du använda en

#pragma GCC optimize ("-Os")

kan vara till hjälp. Med "-Os" för "size" aktiverar GCC alla optimeringsalternativ i "-O2" - utom sex alternativ som tar plats. Om det fortfarande inte passar kan du använda "-Oz" för att be GCC att optimera aggressivt för minnet, även om det innebär en hastighetsförlust. Mer information om optimeringsalternativen för GCC finns i den officiella dokumentationen i kapitel 3.11 Alternativ som styr optimeringen.