Power to the Hive (but just a little)
During the last Core Dev meeting, I’ve mentioned my Hive consensus node setup that consumes 7W of power. That was just my rough estimate, but because I was asked for more details, I took a closer look to provide a more detailed presentation. Please note that this is just an example, definitely not the optimal. It serves my needs, but yours might be different.
Hardware choices
Brand new, fancy Zotac (except not)
Hey, wait, is this Zotac sponsored content? No, it’s not. They suck (now with AirJet technology) ;-)
I've heard about this particular new model: ZBOX pico PI430AJ with AirJet.
Maybe it’s cool, maybe it’s not.
I wanted to buy it and try it, but it doesn’t seem to be available (as of December 2023), and they ignored my emails.
Maybe it’s expensive, but at least it's unavailable ;-)
Other modern alternatives
There are plenty of those. It depends on the details of what exactly you are looking for.
Intel i3-N300 looks promising with its 7W TDP while being really performant. The N100 and N200 are also great for similar use cases.
However, I needed it ASAP and, due to chronic lack of time, I wanted something that would run out of the box.
I couldn’t find anything with N300 or N100/N200 with a reasonable price and delivery dates so…
Recycled old Zotac
Why Zotac again? Pure coincidence.
It’s about effectively using available resources, not wasting them for fun. So instead of buying a brand new fancy piece of hardware, I decided to reuse one that I bought in early 2016. They had these ready-to-use, good-looking products, where I didn’t have to worry about finding a proper chassis to fit components in without risking inadequate heat dissipation. It served me well running 24/7 for most of the time, so it’s definitely a good candidate.
Back then, I paid 130EUR for the barebone. Originally, it came with 4GB RAM and 128GB SSD, which I upgraded for the purpose of running hived
.
Meet the nano
It’s Zotac ZBOX CI323 nano
It’s very small: 127mm x 127mm x 57mm
And handsome:
You have to admit, the chassis design is perfect for Hive, even though I got it even before the genesis block of the legacy chain was produced.
CPU
Equipped with an Intel(R) Celeron(R) CPU N3150 @ 1.60GHz
To put it into perspective, according to Passmark, one of the most popular CPUs these days, a 5-year-old AMD Ryzen 5 3600
has a CPU Mark of 17779
, while Intel Celeron N3150
has a CPU Mark of 1199
(yes, almost 15x less performant).
Memory
Unfortunately, it can handle a maximum of 8GB RAM. So I just installed that.
I would rather go for a setup that could support 16GB, as it would be much easier to manage (like with the N100/N200/N300)
Ideally, 24-32GB would be better, but even N300 wouldn’t suffice for that. It is what it is. We can make do with 8GB.
Storage
Samsung SSD 870 EVO 1TB
- I chose this simply because it was available for testing. It’s popular, affordable, and big enough for backup purposes.
Connectivity
It has two Gigabit Ethernet ports and is connected to two different network providers, with 0.2-0.6 ms latency to edge routers.
It has a lot of other fancy features, but for our purposes, those are irrelevant, so we won’t spend time on them. If you are curious, just use the links to the detailed specs provided by the menufaturers.
Software
OS
No, it’s not Ubuntu 22.04 LTS.
I use Debian 12 instead.
Why?
No particular reason.
”Your mama’s so old, she's in Debian Stable.”
Well, maybe I’m just old.
I installed it from a USB, and the whole process took less than 20 minutes.
Prerequisites
I haven’t configured it for development, so while it’s unable to build hived
, it’s ready to bootstrap it from a “starter pack” available on my https://gtg.openhive.network
Or so I thought.
Starter pack
To start quickly, I needed a block_log
and block_log.artifacts
(the latter is optional, but having it reduces the time needed for startup, as downloading is much faster than generating it on this low-performance hardware).
Getting a snapshot and uncompressing it on the fly was an unexpectedly long process (as expected ;-) ).
Simply put, this machine isn’t fast enough to cope with the amount of heavily compressed data coming from a fast network connection.
Of course, I also needed a hived
binary. There’s no point wasting time and building it from scratch. The CPU is slow, but it’s still x86_64
, and a binary from the starter pack, despite being built on and for Ubuntu 22.04 LTS, runs on Debian 12 without issues.
Getting all the required data, thanks to the fast connection, took less than 2 hours.
Hived Configuration
I want to run a consensus node but with account_by_key
and transaction_status
plugins for convenience, so it’s mostly based on the exchange-example-config.ini
, with the account_history_rocksdb
plugin and settings commented out.
Loading from snapshot
When you already have the starter pack in place:
.hived
├── blockchain
│ ├── block_log
│ └── block_log.artifacts
├── config.ini
└── snapshot
└── latest
You can simply start ~/bin/hived-v1.27.4 --load-snapshot latest
…and wait for 3 hours for it to fail due to running out of memory.
That’s likely because loading the snapshot is configured by default to use a lot of resources, which is not suitable for low-end machines.
Running with copied state
All I had to do was “transplant” an existing state stored in shared_meory.bin
from one of my other nodes. Of course, I needed to ensure that the block_log
matched. Downloading takes about 5 minutes.
With the new directory structure looking like this:
.hived
├── blockchain
│ ├── block_log
│ ├── block_log.artifacts
│ └── shared_memory.bin
└── config.ini
I simply started it with ~/bin/hived-v1.27.4
, and within a minute it was up to the head block and has been keeping up ever since.
Block stats looks like this:
{"num":80829589,"bp":"deathwing","txs":26,"size":8073,"offset":-254133,"exec":{"offset":-318320,"pre":837,"work":63350,"post":1213,"all":65400}}
{"num":80829590,"bp":"good-karma","txs":63,"size":38989,"offset":-209402,"exec":{"offset":-262837,"pre":1157,"work":52278,"post":4951,"all":58386}}
{"num":80829591,"bp":"engrave","txs":109,"size":33431,"offset":-193473,"exec":{"offset":-249851,"pre":3324,"work":53054,"post":6334,"all":62712}}
{"num":80829592,"bp":"themarkymark","txs":88,"size":52161,"offset":-197929,"exec":{"offset":-261370,"pre":3135,"work":60306,"post":5032,"all":68473}}
{"num":80829593,"bp":"roelandp","txs":128,"size":31096,"offset":-229059,"exec":{"offset":-271217,"pre":2247,"work":39911,"post":3351,"all":45509}}
{"num":80829594,"bp":"yabapmatt","txs":93,"size":29071,"offset":-235377,"exec":{"offset":-264357,"pre":2094,"work":26886,"post":5870,"all":34850}}
{"num":80829595,"bp":"quochuy","txs":151,"size":64217,"offset":-234209,"exec":{"offset":-281692,"pre":2835,"work":44648,"post":1632,"all":49115}}
{"num":80829596,"bp":"guiltyparties","txs":88,"size":25814,"offset":-243246,"exec":{"offset":-272498,"pre":1755,"work":27497,"post":4227,"all":33479}}
{"num":80829597,"bp":"abit","txs":174,"size":36404,"offset":-161127,"exec":{"offset":-235618,"pre":3439,"work":71052,"post":7639,"all":82130}}
{"num":80829598,"bp":"stoodkev","txs":148,"size":37167,"offset":-184325,"exec":{"offset":-221677,"pre":3163,"work":34189,"post":5399,"all":42751}}
{"num":80829599,"bp":"ocd-witness","txs":94,"size":31547,"offset":-249496,"exec":{"offset":-292343,"pre":2078,"work":40769,"post":1476,"all":44323}}
{"num":80829600,"bp":"emrebeyler","txs":146,"size":46342,"offset":-215147,"exec":{"offset":-260921,"pre":2987,"work":42787,"post":6332,"all":52106}}
{"num":80829601,"bp":"arcange","txs":132,"size":31830,"offset":-264145,"exec":{"offset":-303826,"pre":2637,"work":37044,"post":2898,"all":42579}}
{"num":80829602,"bp":"smooth.witness","txs":103,"size":28005,"offset":-38917,"exec":{"offset":-82887,"pre":2268,"work":41702,"post":9402,"all":53372}}
{"num":80829603,"bp":"ausbitbank","txs":129,"size":27922,"offset":-236931,"exec":{"offset":-278227,"pre":1819,"work":39477,"post":1615,"all":42911}}
{"num":80829604,"bp":"blocktrades","txs":200,"size":54257,"offset":-84679,"exec":{"offset":-139029,"pre":3185,"work":51165,"post":8174,"all":62524}}
{"num":80829605,"bp":"brofund","txs":157,"size":34013,"offset":-143719,"exec":{"offset":-185494,"pre":4184,"work":37591,"post":4755,"all":46530}}
{"num":80829606,"bp":"therealwolf","txs":101,"size":26220,"offset":-268139,"exec":{"offset":-301179,"pre":2133,"work":30907,"post":2866,"all":35906}}
{"num":80829607,"bp":"steempeak","txs":65,"size":15196,"offset":-238585,"exec":{"offset":-273225,"pre":1681,"work":32959,"post":1526,"all":36166}}
{"num":80829608,"bp":"threespeak","txs":133,"size":28875,"offset":-200882,"exec":{"offset":-247846,"pre":2878,"work":44086,"post":3558,"all":50522}}
{"num":80829609,"bp":"gtg","txs":100,"size":31987,"offset":-235297,"exec":{"offset":-264000,"pre":1871,"work":26832,"post":1649,"all":30352}}
Not great, not terrible. ;-)
As you can see, it can easily keep up with the current traffic.
Temperature
It’s passively cooled, meaning there are no moving elements, such as fans, that would generate noise.
Output of sensors
:
acpitz-acpi-0
Adapter: ACPI interface
temp1: +26.8°C (crit = +95.0°C)
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +34.0°C (high = +90.0°C, crit = +90.0°C)
Core 1: +34.0°C (high = +90.0°C, crit = +90.0°C)
Core 2: +42.0°C (high = +90.0°C, crit = +90.0°C)
Core 3: +42.0°C (high = +90.0°C, crit = +90.0°C)
Power consumption
At peak it never reached 12W (actually, 11.5W) and that was during a massive sync.
When hived
is at the head block (which is its usual condition after the initial setup) it consumes 6-7W.
The last 24-hour average was 6.3W.
Trivia (A Light Bulb, a Coffee Machine, and a Tesla)
A Light Bulb
At a conference this year, @detlev and @arcange discussed how a Hive node’s power consumption could be compared to that of a single light bulb.
This comparison is not only accurate but also an understatement in the case of our setup. Our little Hive node consumes about as much power as a single LED light bulb.
Coffee Machine
Interestingly, a standard coffee machine running for an hour consumes significantly more energy than our Hive node does in an entire day.
Tesla Model 3
A fully charged Tesla Model 3 battery has enough energy to run our Hive node for over a year.
👀
edit: Ok I'm done reading, nice little machine ! I'm glad you are going with "ancient" hardware instead of going with the new bells and whistles when it's not necessary
Hmm... is that a sticker covering air vents? 🔥
And it does show on work times in block stats, but 15 times of almost nothing is still not significant :o)
It would be nice to try it on a testnet with large blocks.
I'm surprised
hived
even runs on that. Maybe we can try to put a node on some smartphone next? 📱Yes, I got it from @audiarmisg (thanks), but actually it's mostly covering the manufacturer logo and it's for the purpose of taking photo (I also disconnected it from two Giga Ethernet connections and let it work via WiFi during that time as I needed to bring it to a better background :-)
I want to test it with a mirror net to see how it would perform in actual top witness role. It would have to keep up with fast confirms, etc.
I'm surprised that it not only runs on 8GB, but it doesn't actually use swap that much.
Smartphones and toys like Raspberry Pi runs on ARM and it wouldn't be that easy to build it and start it (replay would be a pain and I don't have a state donor for ARM).
So glad to hear you're using the stickers ☺️ about the system and the node I don't know much 🫣 but that it works great 🙌
why did it take me this long to realize hive’s logo is hexagon shape lol I am sure we can shill hive to Hexicans and Pulsechain fans and garner a lot of conspiracy theories considering Richard Heart seemed to have been a big fan of Dan Larimer.
So much power, perfect for minecraft hahaha <3
so cool
cant decide if thats really your fully customized 3d printed case OR just a readymade hexagonal honeycomb case (which makes hive branding so easy) with the hive sticker simply added over what seemed to vbe an existing hexagonal branding space there in the case? altho you said it came out perfect i agree so i guess maybe u really did make it, or mill it
i have resin and pla printer that looks like somethin u could do on either or, i was gonna get a cnc milling machine and aluminum tiups, u could pmill that too would just takea few days i bet but yeah could be so fun to start making more custom hive hexagon shaped arduino and rasberry pi devices sell em on tremu and aliexpress liek a flipper zero or one of thoser lorawan lillygo or other hacker devices and cyber decks,
we c oudl sell just a basic card with hive account pre locked in and the abiility to hive blog as part of the base layer of a custom operatiung sytem on one of these lil computers on a single board toys
and we could have liek a hive version of a flipper zero type cyberdeck lil device but instead of just for hacking its designed to use the ledger ano style LOCKED set of hive wallets or newones u can generate off the seed pohrase locked in the devices, and they could just let you post hive posts over like wifi or bluetoothmesh networks or lorawan or even 5g ones for more exopensive people who wanna use hive for IoT
internet of things is perfect for hive when u use a dirty quick version of IoT that involves lots of hackery mesh network operatoirs using nothoing but Phones and some extra devices they buy using their hbd just talking about them
like this device itself could be sold as a makeshift hivemini witness u can use to become a real hive witness a LITE witrness maybe, but use it to BLOG and get upvotes that way to earn income like mining proof of brain and u use the picture sof the hive custom device itself to post from teh device using built in card keybaord like if itrs a computrer on a card, and access hive blocckhain and get paid and have buttons on it for seding hive and browsing hive engine tokens nfts and blog pposts most imoportantly it will be for showing people hive dapps
it could become a great new trend of custom red and black hive blog hexagon cases and devices smartwatches etc, even a smartwatch with 5g, cheap like $30, but with a microphone with solid voice to text, and maybe some chatbot that helps you POST IDEAS TO HIVE and organize the posts b, help you choose posts to curate, asking u if you wanna upvote this or that and to remember to leave a commentv thats authentic basedon teh following topics
dan larimer
binance dropping hive fears
using Leo or InLeo on Twitter or X
Threespeak and their video sharing platform for free speech and its political implications
see an ai bot for hive built into a small smartwatchj could compeet with that silly vbut cool looking HUMANE ai pin, we could have an ai HIVE pin wheer the ai is just more like automated voice software to simply help u post hive blog posstv EFFORTLESSLY< creating titles, 5 hashtags out of your text it transcribes from your voice, and then posts to the correct community automatically based on the topic of the post with a high accuracy rate and an ai chat bot guide to wizard you though becoming a power user on hive with lists you can follow lieka questr to go leave RELEVANT comments about some topic the hive ai bot will TELL You about/././.
so this could be liek an ai coach for hive think about it, it could help fuill in all the gaps of nooks and grannies hive users forget or dont have time to do, well now we can all get the hive attention of someone who spends hours a day upvoting commenting and giving liquid hive tips to all the tp hive users of the daym,
I like those ;-)
I was just messing around with running hived on mini pcs not too long ago. The sync times are brutal, but if you can load it, it makes a huge difference.
Yes, sync from scratch or even a replay is a pain, even loading snapshot isn't currently a viable solution because of the issue #623
funny thing, I got 64G of ram on my nodes, and I use only about 512MB to run nodes.
There you go... An idea! To run the HIVE node inside the Tesla car!!! Imagine the marketing potential of that! 🙂
Nah, just buzz words without real use case... which is still better than dogecoin ;-)
You missed that easter egg, didn't you? ;-)
Hehehehe... It looks like I did... 😃
Man, this thing looks great! Congratulations, man. I agree with @ph1102's comment. This could be an amazing advertisement.
It's good to see you don't need an 8 core monster with huge GPU to run these things. My PC is pretty old, but may be more powerful. It gets by on 8GB running Ubuntu.
A lot of scepticism about crypto seems to be about energy usage, but Hive counters that argument.
Throw it in a corner at home and help seed hive :)
You running this at home or in a dc? Dual ISP with ping time so low makes it sound like DC.
Yes. ;-)
Congratulations @gtg! Your post has been a top performer on the Hive blockchain and you have been rewarded with this rare badge
You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
Check out our last posts:
$WINE
Thank you for running our chain on a sustainable way.
Of course.
Source: reddit/r/theydidthemath
;-)
Pretty cool setup! I was wondering how you'd get 7w from the meeting recording. So the hexagonal case design is purely coincidental? The gods must have known :D
oh this looks super good
oh que esto pinta super bueno. ❤️✌️
What do you use to measure and graph power consumption?
I used Shelly Plug S to measure and Home Assistant to collect the data and graph it.
!WOC
Great effort on Woc, @gtg! kairke(3/5) is grateful for the work and dedication you've put into this post. Your contributions are truly appreciated.
This post made @kairke's day! As a gift, you've received 0.2 WGOLD! Keep creating amazing content and never give up!
BTW! WGOLD is the token of the War of Clans ecosystem, you can use it to have discounts in all our games or stake it and earn rewards now!
Very neat setup.
Have you tinkered with TLP (or something like it) to see if you can fine tune the power usage?
No, TLP isn't necessary in this case. Most of the power-related settings that it manages are irrelevant for my setup:
etc, etc.
Other settings, like turning off the Bluetooth adapter or WiFi, can be managed without the need for such a tool (which has by the way tons of unneeded dependencies)
But of course, I bet there is room for further optimization (I actually didn't bother to turn off radios, etc.) However, my goal wasn't to push it to the limits.
I achieved this setup with minimal effort and tweaking.
The main point is: Hive is awesome.
It's efficient and effective even without extensive customization or optimization.
:-)
I get it!
Indeed!
Congratulations @gtg! Your post has been a top performer on the Hive blockchain and you have been rewarded with this rare badge
You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
I love this idea and the project. Even if is seems to be a little bit underpowered, it shows the little resources we need to run and support hive blockchain.
Thanks @gtg for doing this test and thanks for coming back to the comparison I started during the summer. This gives a extra portion of motivation to finish this report I‘m working on with the help of @arcange and some others.
Hi @gtg I was wondering if you'd be open to restarting the testnet for development purposes? It was quite useful for testing dApps. Especially considering many of the calls from dhive and hive-js aren't typed
Currently there's ongoing heavy development before next v1.27.5 release, so I'm low on resources, as most of them are currently used for testing various aspect of new release. There's a mirror net running but at this moment I think there's no corresponding full haf node for that, but basic API (get_block, network_broadcast) should be available at:
http://seed.fake.openhive.network:8091
(that's mirror net so chain-id 42)
I don't plan to run old-style testnet (other than mirrornet) as it is something that people can easily run in their local development environments (very little resources needed)
Please let me know what do you need exactly and I'll try to help
Ho Ho Ho! @gtg, one of your Hive friends wishes you a Merry Christmas and asked us to give you a new badge!
The HiveBuzz team wish you a Merry Christmas!
May you have good health, abundance and everlasting joy in your life.
To find out who wanted you to receive this special gift, click here!
You can view your badges on your board and compare yourself to others in the Ranking
Check out our last posts:
nice
Sent u a sticker
Ill be barrackin for ur sucksess until the last drop or pic of ur power bars.
Yeah, looser. Its No-Tak. Got ur codes dickwot. Run 24 7 run. Right?
FAIL!