Skip to content

Instantly share code, notes, and snippets.

@maxux
Last active July 18, 2022 12:34
Show Gist options
  • Save maxux/fd36491ee0f49f3f9faa4ba0963959dd to your computer and use it in GitHub Desktop.
Save maxux/fd36491ee0f49f3f9faa4ba0963959dd to your computer and use it in GitHub Desktop.

I put some work on a way to rethink how the current capacity computing and reward system works. ThreeFold main goal and philosophy is fair an equity to make a better world for everybody.

The current way on how we compute, reward and show grid capacity only rely on 'numbers' (amount of cores, amount of GBs of storage, ...). This way of thinking and computing was pretty good in a first step, to get the grid alive. It's now time to make it more robust and more fair.

We need to keep in mind couple things:

  • It's important to reuse old hardware and not throw it away if it still works
  • In this always evolving world, some application needs high power machine, we need some good hardware too

But right now, it's not fair to reward the same amount for a 24 threads cpu 12 years old and a recent 24 threads cpu, which are way more powerful. This is true for SSD as well, old SATA 300 MB/s SSD vs a new PCI Gen4 NVMe at 7 GB/s should not have the same reward, thus they don't cost the same at all.

In addition, the price billed for hardware should be scaled as well: it's not fair to be billed the same price for a high recent powerful machine and for an old machine. And schema would also have another benefit, paying less to host workload on old hardware if this hardware fits the needs, overkill is definitively not good for anyone.

I've put some work in order to find a way to get a score based on performance, which cannot be faked in the meantime. This score is based on a problem-to-solve mechanism and the fastest you can solve the problem, the more powerful you are, you can't fake this mechanism since you cannot be faster than what you are, and this can be verified.

Here are some numbers to illustrate the high difference you can get beteween old and recent cpu:

2x E5-2660 v4, 56 threads (2016)
[+] single thread score: 504,863
[+] multi-threads score: 21,266,970

1x AMD Ryzen 5950x, 32 threads (2020)
[+] single thread score: 818,563
[+] multi-threads score: 22,596,528

1x Ryzen 9 3950X, 32 threads (2019)
[+] single thread score: 772,981
[+] multi-threads score: 21,619,355

2x E5-2630 v3, 32 threads (2014)
[+] single thread score: 395,595
[+] multi-threads score: 11,914,274

2x L5640, 24 threads (2010)
[+] single thread score: 265,695
[+] multi-threads score: 4,770,021

1x Xeon D-1541, 16 threads (2015)
[+] single thread score: 392,336
[+] multi-threads score: 5,924,587

1x i7-8750H, 12 threads (2018)
[+] single thread score: 573,909
[+] multi-threads score: 5,515,932

As you can see, 12 years old CPU with 24 threads have a lower score than a 16 threads more recent CPU, it's unfair to reward the old CPU better than the 16 threads.

Some people reported than difference between DDR3 and DDR4 should be take in account as well, but the major issue here is the difficulty to prove capacity and performance, since there is no way to certifiy speed with enough accuracy, but it's in my opinion fair to say that CPU and memory are quite equivalant in performance (proportionally) because you can't mix old and new CPU and old/new Memory module.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment