Post
Topic
Board Announcements (Altcoins)
Re: [ANN] AEON 2nd gen advanced cryptonote, mobile friendly, scalable, new dev
by
dlightman
on 07/05/2015, 19:57:38 UTC
What's the purpose of changing PoW?

To make it faster to verify and more efficient on mobile and mainstream (not high end) desktop CPUs. See roadmap

Quote from: smooth

1. Mobile-friendly PoW (CryptoNight Lite). The current PoW is not ideal for smaller devices because the 2MB scratchpad is too large for the cache size on most mobile and lower-end desktop/laptop CPUs. A tweak to use a 1 MB scratchpad would allow it to run efficiently on lower end CPUs including some mobile processors as well as much better performance on mainstream desktops/laptops. Credit for this idea goes to the Louisd'or project (crypto_zoidberg and doe1138), although they didn't clearly explain the benefits of it.


I've stressed the most important part of quoted text.

I don't think that reduced scratchpad will give significant benefits to anybody because 2Mb and much bigger L3 cache becomes more and more widely used. Mobile CPU will follow soon. Proper implementation of checkpoints will solve the full chain verification problem better than scratchpad reduction.

From the other hand small scratchpad will remove one of ASIC / GPU protection layer. It will be easier to build dedicated mining hardware: for example one can assemble a mining rig with embedded CPUs. I don't think that this is a desirable.

Can you measure relative GPU advantage over CPU with reduced scratchpad?
Original CryptoNight implementation is very good from this point of view: GPU is about 2 times faster. This is quite fair.

I've looked at the range of CPU designs and roadmaps and I'm pretty sure that 1 MB/core is a better sweet spot that 2 MB/core, for at least the next several years, in addition to being 2x (or a bit more) faster. 2 MB isn't even optimal on most current higher end desktop and server CPUs, and is definitely a poor fit for anything below that

I will be evaluating the GPU performance but I don't expect a large change, in fact the ratio may improve.

No, checkpoints don't address verification because verification and sync speed matters even for current blocks.


For current blocks relative time of PoW calculation is less than total signature verification time. The only scenario where you get significant advantage from fast PoW in block verification speed is a low-loaded chain.

I edited above to mention that I will be adding a lightweight client model that does not verify signatures.


In case a node doesn't verifies signatures we don't have to consider it as a full node i.e. we can't rely on such node's decisions because they will accept correct PoW with wrong signature. We have to consider such nodes as light wallets. Network with majority of nodes not verifying signatures can be easily manipulated by big pools.

Let's calculate scratchpad reduction benefit for a low-end device in case of current block verification:

- 120 seconds block target time
- 10 h/s hash calculation speed

In this case one block verification takes 0.083333% of one CPU core time. Is this a showstopper for mobile device?