Bitcoin Forum
November 19, 2024, 02:00:33 AM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Memcoin Protocol (A CPU/GPU-oriented, very memory hard chain)  (Read 6755 times)
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 03, 2012, 07:26:10 PM
Last edit: November 12, 2012, 05:34:27 PM by tacotime
 #1

I don't have time to actually make this, but this is my proposal:

MEMCOIN PROTOCOL
Quote
1) Difficulty adjustment rate 3.5 days with the generation of 2016 blocks.  Other properties regarding difficulty adjustment are also the same as for Litecoin.

2) Blockreward begins at 50 coins and decreases every 35 days (10 difficulty periods) according to the following formula:
reward = previous_reward * (1+(-0.07/10))^(10*0.10)
This leads to a 7% decrease in blockreward every 350 days, or a blockreward halving in a little under 10 years.
Finance/business people will recognize this as the formula for compounded interest.

3) Scrypt is used with the following scheme:
1. ChaCha20 for mix algorithm, because it's a little faster than Salsa20.
2. SHA256 followed by BLAKE256 followed by keccak256 (SHA3-256) for the crypt algorithm, to enhance circuit size in ASICs without strongly affecting hash speed.  This should make memcoin more ASIC unfriendly.

and the following variables:
N = 1024
p = 1
r = variable

3.1) The scrypt parameter r is initialized as 128, so the initial memory required per scrypt process is 16 MB.  The value of r will be multiplied by 3.5 every 1050 days (604800), e.g., a little less than 3 years after chain creation r will be 448 and the required memory will be 56 MB per thread.  This is in keeping with Moore's law, and should ensure that the chain remains CPU/GPU-minable for a long time.

Things to be done from a Litecoin fork:
- Modification of scrypt miners to accept variable values of r and to utilize the new scrypt algorithm proposed (see https://github.com/floodyberry/scrypt-jane for different scrypt implementations)
- Adding the variable r to each block
- Implementing the new blockreward algorithm

Benefits of the chain:
- Long implementation time for blockreward decrease, so blockreward will not be ~1.5 for 50 years.
- Progressive stepping for blockreward decreases of a little over a month
- Very FPGA and ASIC difficult because of the massive memory requirements and large circuit size for cryptography algorithms, so CPUs/GPUs will be ideal for mining

Release: Upon the building of the final binary of the bitcoin-qt and cpuminer fork from the source code, a couple extra blocks will be mined to ensure the binaries are functional and then the binaries and source will be compressed and encrypted in a 7zip file with 256-bit AES.  This encrypted file will be uploaded on multiupload and as a torrent one week before the chain is to launch.  Upon the launch date, a password will be revealed and everyone can begin mining the chain at the same time.

Thoughts?

CURRENT DEVELOPER BOUNTY: 0 BTC
ADDRESS TO DONATE TO DEVELOPER BOUNTY: 1DSbmKcWrir5zxXPZhjjZdVLsqLZxu2Qc4


DEVELOPER BOUNTY WILL BE AWARDED TO THE FIRST PERSON OR GROUP TO FULLY IMPLEMENT THE PROTOCOL.  PREMINES, IF ADDED BY THE DEVELOPER, WILL BE REMOVED PRIOR TO LAUNCH BY MODIFICATION OF THE GENESIS BLOCK.

edit: Forgot to change to 7% decrease, fixed (lots of 3.5s and multiples in this protocol)

PM me if interested in the development.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
wndrbr3d
Hero Member
*****
Offline Offline

Activity: 914
Merit: 500


View Profile
November 03, 2012, 08:28:40 PM
 #2

I would like to get a small group of people helping make it in on a ~100k coin premine.

.... aaaand with that you lost about all community support  Tongue
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 03, 2012, 08:35:23 PM
 #3

I would like to get a small group of people helping make it in on a ~100k coin premine.

.... aaaand with that you lost about all community support  Tongue

Why?  Satoshi premined bitcoin (you can check his unspent address for tens of thousands of BTC), Artforz premined bitcoin as well before releasing his CPU miner for AMD 4xxx series...  I have no problem with the developers paying themselves for their own work.  If you look at a similar currency like litecoin, it's obvious that 100k coins really isn't even that much.  I only want a few thousand myself, and then I'll mine the rest with everyone else after release.  With this blockreward algorithm we will see hundreds of millions of coins generated, so really it's nothing.

There needs to be incentives for people to develop this coin because a small amount of programming needs to be done.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
wndrbr3d
Hero Member
*****
Offline Offline

Activity: 914
Merit: 500


View Profile
November 03, 2012, 08:37:45 PM
 #4

Why?  Satoshi premined bitcoin (you can check his unspent address for tens of thousands of BTC), Artforz premined bitcoin as well before releasing his CPU miner for AMD 4xxx series...  I have no problem with the developers paying themselves for their own work.  If you look at a similar currency like litecoin, it's obvious that 100k coins really isn't even that much.

Bitcoin is a very poor example as it was a trailblazer in cryptocurrenty. Can you name an alt that had a sizable premine that actually succeeded or had community backing that WASN'T viewed in the light of being just a money grab for its creator?
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 03, 2012, 08:41:23 PM
 #5

Well, the protocol is right there if someone wants to make the chain themselves and then release it without a premine.  I'm just trying to organize this and get the coin to public as quickly as possible.

Also, it's now presumed that Artforz premined litecoin by GPU as there is evidence in these forums that he knew that GPU mining was faster, and litecoin is doing just fine.  The survivability of an altchain is related to it's utility, not whether or not it was "fair" for people at any given time in its history.  Right now BFL/others are probably "premining" with ASICs too before releasing them to the public.  This is the reward for bringing new technology into play.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
Bitcoin Oz
Hero Member
*****
Offline Offline

Activity: 686
Merit: 500


Wat


View Profile WWW
November 03, 2012, 08:50:50 PM
 #6

Artforz didnt premine, litecoin was already out.

The only proper and fair way to bring out a coin is to announce a start date and release the binaries to everyone at the same time without a massive premine.

tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 03, 2012, 08:52:37 PM
 #7

Well, if someone wants to work on it without a premine too, just PM me.  I'd be happy to have it released either way, I was just trying to add an incentive for programmers to spend a couple weeks of their lives hashing out the new coin through a testnet.

Regardless of premine or not, I think the protocol is a good one and adds a few things that bitcoin/litecoin doesn't have without any disruptions to the fundamental security enjoyed by these two chains.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
iddo
Sr. Member
****
Offline Offline

Activity: 360
Merit: 251


View Profile
November 03, 2012, 09:46:06 PM
 #8

3.1) The scrypt parameter r is initialized as 4096, so the initial memory required per scrypt process is 512 MB.  The value of r will be multiplied by 3.5 every 1050 days (604800), e.g., a little less than 3 years after chain creation r will be 14336 and the required memory will be 1792 MB.

https://bitcointalk.org/index.php?topic=103085.msg1137364#msg1137364
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 03, 2012, 09:52:38 PM
Last edit: November 03, 2012, 10:09:23 PM by tacotime
 #9

512 MB should be okay I would think.  DDR3 in dual channel can provide ~23 GB/s and somewhat less than that random access, but that's still sub-second for verification.  Given the GPU implementation random access doesn't even seem that important, at least from what I understand.

There will be weird GPU scaling too, I would guess GPUs would still be faster than CPUs due to bandwidth but CPUs will be able to have more memory and so would be more scalable.  Which will end up dominant is hard to say, DDR3 in quad channel is about 40 GB/s while GDDR5 is presently about 200 GB/s in terms of raw bandwidth.  A 7950 with 5x threads would then surely outpace an Intel system with 6x threads, and so it may be another GPU oriented coin.

If it is most ideally minable by a GPU, it still has a great purpose because it is pretty much guaranteed that developing ASICs for the platform will be difficult and very expensive because of the memory size required.  At this point I think it's clear that ASICs for litecoin will probably be on the horizon if the chain lasts long enough, although there will be a long wait for that.

Really someone just needs to implement it with high r values and see what kind of hash rates they get.  I don't think an r leading to 512 MB of RAM required will be that catastrophic.

The biggest problem is if we hit a technological wall for memory size or speed down the road, since the present design foresees decades of mining.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 03, 2012, 10:37:46 PM
 #10

Okay, thinking about it a bit more:
A solution may also be only having to download partial blockchains/blockchain headers as proposed by Satoshi, eg, only the last 10000 blocks of the blockchain.  Users doing this would be "partial nodes" and thus would constantly be deleting blocks while obtaining new ones and only able to upload a limited number of recent blocks to other users.  "Full" nodes with the entirety of the chain would still be required in the network for security purposes.

https://en.bitcoin.it/wiki/Scalability

The number of hashes able to be performed by the client on the CPU should still ideally be 100 hashes/second or more, though, to prevent the blockchain from taking months to verify with current technology when it reaches 1M+ blocks.  Nor sure if that's possible with such a high r value, someone needs to test it.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
markm
Legendary
*
Offline Offline

Activity: 3024
Merit: 1121



View Profile WWW
November 04, 2012, 01:26:10 AM
Last edit: November 04, 2012, 01:08:57 PM by markm
 #11

The premining controversy is easily solved, just use bitcoins for bounties like Unthinkingbit to get DeVCoin built.

This seems like more work than DeVCoin but still a few hundred bitcoins might well get the interest of a coder or two.

-MarkM-

Browser-launched Crossfire client now online (select CrossCiv server for Galactic  Milieu)
Free website hosting with PHP, MySQL etc: http://hosting.knotwork.com/
Syke
Legendary
*
Offline Offline

Activity: 3878
Merit: 1193


View Profile
November 04, 2012, 05:40:30 AM
 #12

Satoshi premined bitcoin (you can check his unspent address for tens of thousands of BTC)
If I'm reading the date stamps correct, Satoshi only mined about 14 blocks before announcing the release of the software. Definitely not "tens of thousands".

Buy & Hold
Etlase2
Hero Member
*****
Offline Offline

Activity: 798
Merit: 1000


View Profile
November 04, 2012, 05:49:29 AM
 #13

Yeah, if "announcing" counts for making a post on a mailing list that gets 10 or 20 posts per year...

iddo
Sr. Member
****
Offline Offline

Activity: 360
Merit: 251


View Profile
November 04, 2012, 09:05:14 AM
 #14

Really someone just needs to implement it with high r values and see what kind of hash rates they get.  I don't think an r leading to 512 MB of RAM required will be that catastrophic.

Here you go:

Quote
[test]$ time ./scrypt-ref 1024 1 1
0.007u 0.000s 0:00.00 0.0%      0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-ref 1024 4096 1
31.282u 0.235s 0:31.55 99.8%    0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-sse 1024 4096 1
9.725u 0.225s 0:09.95 99.8%     0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-nosse 1024 4096 1
7.535u 0.210s 0:07.75 99.8%     0+0k 0+0io 0pf+0w
[test]$ cat /proc/cpuinfo | grep name
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
[test]$ uname -a
Linux cs 2.6.18-308.16.1.el5 #1 SMP Tue Sep 18 07:21:07 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

About 8 seconds per hash attempt with 512 megabytes, so it'd take 18 days to verify the initial download of a blockchain with 200,000 blocks.
crazy_rabbit
Legendary
*
Offline Offline

Activity: 1204
Merit: 1002


RUM AND CARROTS: A PIRATE LIFE FOR ME


View Profile
November 04, 2012, 03:52:24 PM
 #15

Really someone just needs to implement it with high r values and see what kind of hash rates they get.  I don't think an r leading to 512 MB of RAM required will be that catastrophic.

Here you go:

Quote
[test]$ time ./scrypt-ref 1024 1 1
0.007u 0.000s 0:00.00 0.0%      0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-ref 1024 4096 1
31.282u 0.235s 0:31.55 99.8%    0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-sse 1024 4096 1
9.725u 0.225s 0:09.95 99.8%     0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-nosse 1024 4096 1
7.535u 0.210s 0:07.75 99.8%     0+0k 0+0io 0pf+0w
[test]$ cat /proc/cpuinfo | grep name
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
model name      : Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
[test]$ uname -a
Linux cs 2.6.18-308.16.1.el5 #1 SMP Tue Sep 18 07:21:07 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

About 8 seconds per hash attempt with 512 megabytes, so it'd take 18 days to verify the initial download of a blockchain with 200,000 blocks.

ouch.

Basically everyone would have to run it through an electrum server of some sort.

more or less retired.
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 04, 2012, 03:56:20 PM
 #16

Eh, some testing will just need to be done to figure out what the ideal size for r should be.  It looks like the scaling is non-linear with memory size, and whatever we can get that is 10 hashes per second on the CPU will probably be about 100 hashes per second on a GPU.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
iddo
Sr. Member
****
Offline Offline

Activity: 360
Merit: 251


View Profile
November 04, 2012, 04:06:00 PM
 #17

It looks like the scaling is non-linear with memory size

What makes you say that?

Quote
[test]$ time ./scrypt-nosse 1024 8192 1
16.022u 0.525s 0:16.55 99.9%    0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-nosse 1024 16384 1
33.335u 1.034s 0:34.42 99.8%    0+0k 0+0io 0pf+0w
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 04, 2012, 04:15:59 PM
Last edit: November 04, 2012, 04:28:28 PM by tacotime
 #18

Well, a quad Xeon should get ~40 kh/s with r=1, but with r=4096 you get one hash per 8 seconds.  It could just be that that implementation is slow.

edit: Or I guess also being able to be executed in the cache is also a significant factor.  Scaling linearly, that would mean we would use an r of about 32-128 to achieve multiple hashes per second.  But of course, that's not a lot of memory.

Floodberry released a fork called scrypt-jane at https://github.com/floodyberry/scrypt-jane
It includes keccak/SHA3, SHA256, and blake and when I have time it might be fun to play around with all three encryption algorithms together in combinations to see what I can get in terms of execution times.  Adding keccak and blake circuits that are long/difficult will also make this very hard for ASICs to run.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
iddo
Sr. Member
****
Offline Offline

Activity: 360
Merit: 251


View Profile
November 04, 2012, 04:48:01 PM
Last edit: November 08, 2012, 07:48:44 PM by iddo
 #19

Well, a quad Xeon should get ~40 kh/s with r=1, but with r=4096 you get one hash per 8 seconds.  It could just be that that implementation is slow.

Right, it was my mistake, I now compiled with -O3 and it's faster, in particular the SSE version. However, it's using only a single thread, so assuming that single Xeon gets 10kh/s I tested how long this non-optimized implementation takes to finish 10k invocations, and it took about 4.5 seconds. So you can assume that it's 4x slower than the Litecoin miner implementation (with r=1, i.e. in cache).

Quote
[test]$ time ./scrypt-sse 1024 4096 1
1.677u 0.271s 0:01.95 99.4%     0+0k 0+0io 0pf+0w
[test]$ time ./scrypt-sse 1024 8192 1
3.369u 0.486s 0:03.85 99.7%     0+0k 0+0io 0pf+0w

So it's more like 2 seconds instead of 8 seconds per hash attempt, with 512 megabytes.
tacotime (OP)
Legendary
*
Offline Offline

Activity: 1484
Merit: 1005



View Profile
November 05, 2012, 09:17:26 PM
 #20

Bump with more data.

Code:
speed test for scrypt[SHA-2-256,Salsa20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 560699136 ticks
scrypt high vol Ndiff16( ~64mb), 1310 msec
scrypt high vol Ndiff17( ~64mb), 580991397 ticks
scrypt high vol Ndiff17( ~64mb), 1330 msec
scrypt high volume     ( ~16mb), 137270420 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 276121012 ticks
scrypt high volume     ( ~32mb), 630 msec
scrypt high volume     ( ~64mb), 553540355 ticks
scrypt high volume     ( ~64mb), 1270 msec
scrypt interactive     (~128mb), 1116808578 ticks
scrypt interactive     (~128mb), 2560 msec
scrypt non-interactive (~256mb), 2302226277 ticks
scrypt non-interactive (~256mb), 5200 msec
scrypt non-interactive (~512mb), 4501413429 ticks
scrypt non-interactive (~512mb), 10360 msec
speed test for scrypt[SHA-2-256,Salsa20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1058269857 ticks
scrypt high vol Ndiff16( ~64mb), 2410 msec
scrypt high vol Ndiff17( ~64mb), 1084450327 ticks
scrypt high vol Ndiff17( ~64mb), 2490 msec
scrypt high volume     ( ~16mb), 250159563 ticks
scrypt high volume     ( ~16mb), 570 msec
scrypt high volume     ( ~32mb), 501760342 ticks
scrypt high volume     ( ~32mb), 1150 msec
scrypt high volume     ( ~64mb), 1002698161 ticks
scrypt high volume     ( ~64mb), 2290 msec
scrypt interactive     (~128mb), 2008898193 ticks
scrypt interactive     (~128mb), 4600 msec
scrypt non-interactive (~256mb), 4025320448 ticks
scrypt non-interactive (~256mb), 9340 msec
scrypt non-interactive (~512mb), 8094222321 ticks
scrypt non-interactive (~512mb), 18470 msec


speed test for scrypt[SHA-2-256,ChaCha20/8,SSSE3]
scrypt high vol Ndiff16( ~64mb), 549218114 ticks
scrypt high vol Ndiff16( ~64mb), 1270 msec
scrypt high vol Ndiff17( ~64mb), 567011811 ticks
scrypt high vol Ndiff17( ~64mb), 1300 msec
scrypt high volume     ( ~16mb), 133962643 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 270169247 ticks
scrypt high volume     ( ~32mb), 610 msec
scrypt high volume     ( ~64mb), 541458057 ticks
scrypt high volume     ( ~64mb), 1240 msec
scrypt interactive     (~128mb), 1085494492 ticks
scrypt interactive     (~128mb), 2500 msec
scrypt non-interactive (~256mb), 2191138714 ticks
scrypt non-interactive (~256mb), 5050 msec
scrypt non-interactive (~512mb), 4399106230 ticks
scrypt non-interactive (~512mb), 10120 msec
speed test for scrypt[SHA-2-256,ChaCha20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 648769776 ticks
scrypt high vol Ndiff16( ~64mb), 1490 msec
scrypt high vol Ndiff17( ~64mb), 666021770 ticks
scrypt high vol Ndiff17( ~64mb), 1520 msec
scrypt high volume     ( ~16mb), 159339472 ticks
scrypt high volume     ( ~16mb), 360 msec
scrypt high volume     ( ~32mb), 320178493 ticks
scrypt high volume     ( ~32mb), 740 msec
scrypt high volume     ( ~64mb), 643168897 ticks
scrypt high volume     ( ~64mb), 1470 msec
scrypt interactive     (~128mb), 1289501798 ticks
scrypt interactive     (~128mb), 2950 msec
scrypt non-interactive (~256mb), 2597599954 ticks
scrypt non-interactive (~256mb), 5950 msec
scrypt non-interactive (~512mb), 5204672247 ticks
scrypt non-interactive (~512mb), 11920 msec
speed test for scrypt[SHA-2-256,ChaCha20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1011186015 ticks
scrypt high vol Ndiff16( ~64mb), 2310 msec
scrypt high vol Ndiff17( ~64mb), 1037747927 ticks
scrypt high vol Ndiff17( ~64mb), 2380 msec
scrypt high volume     ( ~16mb), 236390823 ticks
scrypt high volume     ( ~16mb), 540 msec
scrypt high volume     ( ~32mb), 474083454 ticks
scrypt high volume     ( ~32mb), 1090 msec
scrypt high volume     ( ~64mb), 963547183 ticks
scrypt high volume     ( ~64mb), 2170 msec
scrypt interactive     (~128mb), 1900783574 ticks
scrypt interactive     (~128mb), 4380 msec
scrypt non-interactive (~256mb), 3827973132 ticks
scrypt non-interactive (~256mb), 8770 msec
scrypt non-interactive (~512mb), 7607540515 ticks
scrypt non-interactive (~512mb), 17490 msec


speed test for scrypt[SHA-2-512,Salsa20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 560745387 ticks
scrypt high vol Ndiff16( ~64mb), 1310 msec
scrypt high vol Ndiff17( ~64mb), 583578756 ticks
scrypt high vol Ndiff17( ~64mb), 1340 msec
scrypt high volume     ( ~16mb), 136518703 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 274486657 ticks
scrypt high volume     ( ~32mb), 630 msec
scrypt high volume     ( ~64mb), 549973745 ticks
scrypt high volume     ( ~64mb), 1260 msec
scrypt interactive     (~128mb), 1107249574 ticks
scrypt interactive     (~128mb), 2550 msec
scrypt non-interactive (~256mb), 2228935919 ticks
scrypt non-interactive (~256mb), 5140 msec
scrypt non-interactive (~512mb), 4505295044 ticks
scrypt non-interactive (~512mb), 10300 msec
speed test for scrypt[SHA-2-512,Salsa20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1064011641 ticks
scrypt high vol Ndiff16( ~64mb), 2450 msec
scrypt high vol Ndiff17( ~64mb), 1104468570 ticks
scrypt high vol Ndiff17( ~64mb), 2520 msec
scrypt high volume     ( ~16mb), 250563561 ticks
scrypt high volume     ( ~16mb), 580 msec
scrypt high volume     ( ~32mb), 500851477 ticks
scrypt high volume     ( ~32mb), 1140 msec
scrypt high volume     ( ~64mb), 1037199368 ticks
scrypt high volume     ( ~64mb), 2330 msec
scrypt interactive     (~128mb), 2075439189 ticks
scrypt interactive     (~128mb), 4760 msec
scrypt non-interactive (~256mb), 4024294797 ticks
scrypt non-interactive (~256mb), 9250 msec
scrypt non-interactive (~512mb), 8133132837 ticks
scrypt non-interactive (~512mb), 18520 msec


speed test for scrypt[SHA-2-512,ChaCha20/8,SSSE3]
scrypt high vol Ndiff16( ~64mb), 546538402 ticks
scrypt high vol Ndiff16( ~64mb), 1280 msec
scrypt high vol Ndiff17( ~64mb), 566027167 ticks
scrypt high vol Ndiff17( ~64mb), 1300 msec
scrypt high volume     ( ~16mb), 133166022 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 268627290 ticks
scrypt high volume     ( ~32mb), 610 msec
scrypt high volume     ( ~64mb), 539938777 ticks
scrypt high volume     ( ~64mb), 1230 msec
scrypt interactive     (~128mb), 1081993920 ticks
scrypt interactive     (~128mb), 2500 msec
scrypt non-interactive (~256mb), 2184229141 ticks
scrypt non-interactive (~256mb), 5030 msec
scrypt non-interactive (~512mb), 4386687581 ticks
scrypt non-interactive (~512mb), 10090 msec
speed test for scrypt[SHA-2-512,ChaCha20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 647679874 ticks
scrypt high vol Ndiff16( ~64mb), 1480 msec
scrypt high vol Ndiff17( ~64mb), 667401700 ticks
scrypt high vol Ndiff17( ~64mb), 1520 msec
scrypt high volume     ( ~16mb), 158885318 ticks
scrypt high volume     ( ~16mb), 370 msec
scrypt high volume     ( ~32mb), 319624364 ticks
scrypt high volume     ( ~32mb), 730 msec
scrypt high volume     ( ~64mb), 642449223 ticks
scrypt high volume     ( ~64mb), 1470 msec
scrypt interactive     (~128mb), 1286662982 ticks
scrypt interactive     (~128mb), 2940 msec
scrypt non-interactive (~256mb), 2597905086 ticks
scrypt non-interactive (~256mb), 5930 msec
scrypt non-interactive (~512mb), 5198008411 ticks
scrypt non-interactive (~512mb), 11880 msec
speed test for scrypt[SHA-2-512,ChaCha20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 993569914 ticks
scrypt high vol Ndiff16( ~64mb), 2280 msec
scrypt high vol Ndiff17( ~64mb), 1025329900 ticks
scrypt high vol Ndiff17( ~64mb), 2340 msec
scrypt high volume     ( ~16mb), 235284161 ticks
scrypt high volume     ( ~16mb), 540 msec
scrypt high volume     ( ~32mb), 472326546 ticks
scrypt high volume     ( ~32mb), 1080 msec
scrypt high volume     ( ~64mb), 946002266 ticks
scrypt high volume     ( ~64mb), 2170 msec
scrypt interactive     (~128mb), 1894030684 ticks
scrypt interactive     (~128mb), 4340 msec
scrypt non-interactive (~256mb), 3805890337 ticks
scrypt non-interactive (~256mb), 8700 msec
scrypt non-interactive (~512mb), 7586214330 ticks
scrypt non-interactive (~512mb), 17370 msec


speed test for scrypt[BLAKE-256,Salsa20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 559057589 ticks
scrypt high vol Ndiff16( ~64mb), 1290 msec
scrypt high vol Ndiff17( ~64mb), 580234927 ticks
scrypt high vol Ndiff17( ~64mb), 1330 msec
scrypt high volume     ( ~16mb), 136843554 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 276290328 ticks
scrypt high volume     ( ~32mb), 630 msec
scrypt high volume     ( ~64mb), 551879392 ticks
scrypt high volume     ( ~64mb), 1260 msec
scrypt interactive     (~128mb), 1109203423 ticks
scrypt interactive     (~128mb), 2560 msec
scrypt non-interactive (~256mb), 2239012920 ticks
scrypt non-interactive (~256mb), 5150 msec
scrypt non-interactive (~512mb), 4492166905 ticks
scrypt non-interactive (~512mb), 10330 msec
speed test for scrypt[BLAKE-256,Salsa20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1060686754 ticks
scrypt high vol Ndiff16( ~64mb), 2430 msec
scrypt high vol Ndiff17( ~64mb), 1084012720 ticks
scrypt high vol Ndiff17( ~64mb), 2480 msec
scrypt high volume     ( ~16mb), 249750704 ticks
scrypt high volume     ( ~16mb), 570 msec
scrypt high volume     ( ~32mb), 501177302 ticks
scrypt high volume     ( ~32mb), 1150 msec
scrypt high volume     ( ~64mb), 1007858180 ticks
scrypt high volume     ( ~64mb), 2290 msec
scrypt interactive     (~128mb), 2007045499 ticks
scrypt interactive     (~128mb), 4600 msec
scrypt non-interactive (~256mb), 4021455078 ticks
scrypt non-interactive (~256mb), 9200 msec
scrypt non-interactive (~512mb), 8053150712 ticks
scrypt non-interactive (~512mb), 18430 msec


speed test for scrypt[BLAKE-256,ChaCha20/8,SSSE3]
scrypt high vol Ndiff16( ~64mb), 546481338 ticks
scrypt high vol Ndiff16( ~64mb), 1270 msec
scrypt high vol Ndiff17( ~64mb), 565028708 ticks
scrypt high vol Ndiff17( ~64mb), 1300 msec
scrypt high volume     ( ~16mb), 133523416 ticks
scrypt high volume     ( ~16mb), 300 msec
scrypt high volume     ( ~32mb), 268760371 ticks
scrypt high volume     ( ~32mb), 620 msec
scrypt high volume     ( ~64mb), 539225832 ticks
scrypt high volume     ( ~64mb), 1230 msec
scrypt interactive     (~128mb), 1082901397 ticks
scrypt interactive     (~128mb), 2500 msec
scrypt non-interactive (~256mb), 2185779769 ticks
scrypt non-interactive (~256mb), 5020 msec
scrypt non-interactive (~512mb), 4384002491 ticks
scrypt non-interactive (~512mb), 10090 msec
speed test for scrypt[BLAKE-256,ChaCha20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 647971800 ticks
scrypt high vol Ndiff16( ~64mb), 1490 msec
scrypt high vol Ndiff17( ~64mb), 665749569 ticks
scrypt high vol Ndiff17( ~64mb), 1520 msec
scrypt high volume     ( ~16mb), 158713282 ticks
scrypt high volume     ( ~16mb), 360 msec
scrypt high volume     ( ~32mb), 319408821 ticks
scrypt high volume     ( ~32mb), 730 msec
scrypt high volume     ( ~64mb), 640888851 ticks
scrypt high volume     ( ~64mb), 1470 msec
scrypt interactive     (~128mb), 1286127517 ticks
scrypt interactive     (~128mb), 2960 msec
scrypt non-interactive (~256mb), 2592551237 ticks
scrypt non-interactive (~256mb), 5930 msec
scrypt non-interactive (~512mb), 5195462496 ticks
scrypt non-interactive (~512mb), 11890 msec
speed test for scrypt[BLAKE-256,ChaCha20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 992871061 ticks
scrypt high vol Ndiff16( ~64mb), 2270 msec
scrypt high vol Ndiff17( ~64mb), 1054273312 ticks
scrypt high vol Ndiff17( ~64mb), 2360 msec
scrypt high volume     ( ~16mb), 235666596 ticks
scrypt high volume     ( ~16mb), 530 msec
scrypt high volume     ( ~32mb), 472534845 ticks
scrypt high volume     ( ~32mb), 1090 msec
scrypt high volume     ( ~64mb), 946197590 ticks
scrypt high volume     ( ~64mb), 2160 msec
scrypt interactive     (~128mb), 1894859927 ticks
scrypt interactive     (~128mb), 4340 msec
scrypt non-interactive (~256mb), 3793694565 ticks
scrypt non-interactive (~256mb), 8680 msec
scrypt non-interactive (~512mb), 7589446959 ticks
scrypt non-interactive (~512mb), 17370 msec


speed test for scrypt[BLAKE-512,Salsa20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 559078398 ticks
scrypt high vol Ndiff16( ~64mb), 1300 msec
scrypt high vol Ndiff17( ~64mb), 579169169 ticks
scrypt high vol Ndiff17( ~64mb), 1330 msec
scrypt high volume     ( ~16mb), 136067453 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 273892506 ticks
scrypt high volume     ( ~32mb), 630 msec
scrypt high volume     ( ~64mb), 548861138 ticks
scrypt high volume     ( ~64mb), 1250 msec
scrypt interactive     (~128mb), 1130063523 ticks
scrypt interactive     (~128mb), 2550 msec
scrypt non-interactive (~256mb), 2228063773 ticks
scrypt non-interactive (~256mb), 5130 msec
scrypt non-interactive (~512mb), 4516875800 ticks
scrypt non-interactive (~512mb), 10310 msec
speed test for scrypt[BLAKE-512,Salsa20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1103284396 ticks
scrypt high vol Ndiff16( ~64mb), 2500 msec
scrypt high vol Ndiff17( ~64mb), 1117811129 ticks
scrypt high vol Ndiff17( ~64mb), 2560 msec
scrypt high volume     ( ~16mb), 260114838 ticks
scrypt high volume     ( ~16mb), 590 msec
scrypt high volume     ( ~32mb), 521931927 ticks
scrypt high volume     ( ~32mb), 1190 msec
scrypt high volume     ( ~64mb), 1032815834 ticks
scrypt high volume     ( ~64mb), 2360 msec
scrypt interactive     (~128mb), 2002020973 ticks
scrypt interactive     (~128mb), 4590 msec
scrypt non-interactive (~256mb), 4011427394 ticks
scrypt non-interactive (~256mb), 9180 msec
scrypt non-interactive (~512mb), 8052391400 ticks
scrypt non-interactive (~512mb), 18400 msec


speed test for scrypt[BLAKE-512,ChaCha20/8,SSSE3]
scrypt high vol Ndiff16( ~64mb), 545883037 ticks
scrypt high vol Ndiff16( ~64mb), 1270 msec
scrypt high vol Ndiff17( ~64mb), 565077237 ticks
scrypt high vol Ndiff17( ~64mb), 1290 msec
scrypt high volume     ( ~16mb), 132964571 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 267707485 ticks
scrypt high volume     ( ~32mb), 610 msec
scrypt high volume     ( ~64mb), 536927717 ticks
scrypt high volume     ( ~64mb), 1230 msec
scrypt interactive     (~128mb), 1078703271 ticks
scrypt interactive     (~128mb), 2480 msec
scrypt non-interactive (~256mb), 2176501448 ticks
scrypt non-interactive (~256mb), 5020 msec
scrypt non-interactive (~512mb), 4382421316 ticks
scrypt non-interactive (~512mb), 10070 msec
speed test for scrypt[BLAKE-512,ChaCha20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 651901469 ticks
scrypt high vol Ndiff16( ~64mb), 1490 msec
scrypt high vol Ndiff17( ~64mb), 672001453 ticks
scrypt high vol Ndiff17( ~64mb), 1540 msec
scrypt high volume     ( ~16mb), 158283670 ticks
scrypt high volume     ( ~16mb), 360 msec
scrypt high volume     ( ~32mb), 318847704 ticks
scrypt high volume     ( ~32mb), 740 msec
scrypt high volume     ( ~64mb), 638860463 ticks
scrypt high volume     ( ~64mb), 1460 msec
scrypt interactive     (~128mb), 1282649078 ticks
scrypt interactive     (~128mb), 2930 msec
scrypt non-interactive (~256mb), 2644959237 ticks
scrypt non-interactive (~256mb), 5940 msec
scrypt non-interactive (~512mb), 5204660148 ticks
scrypt non-interactive (~512mb), 11870 msec
speed test for scrypt[BLAKE-512,ChaCha20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1039501355 ticks
scrypt high vol Ndiff16( ~64mb), 2380 msec
scrypt high vol Ndiff17( ~64mb), 1061833607 ticks
scrypt high vol Ndiff17( ~64mb), 2430 msec
scrypt high volume     ( ~16mb), 235161973 ticks
scrypt high volume     ( ~16mb), 550 msec
scrypt high volume     ( ~32mb), 482695691 ticks
scrypt high volume     ( ~32mb), 1120 msec
scrypt high volume     ( ~64mb), 980329075 ticks
scrypt high volume     ( ~64mb), 2250 msec
scrypt interactive     (~128mb), 1946428293 ticks
scrypt interactive     (~128mb), 4460 msec
scrypt non-interactive (~256mb), 3786085261 ticks
scrypt non-interactive (~256mb), 8730 msec
scrypt non-interactive (~512mb), 7573800932 ticks
scrypt non-interactive (~512mb), 17330 msec


speed test for scrypt[Skein-512,Salsa20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 560626536 ticks
scrypt high vol Ndiff16( ~64mb), 1300 msec
scrypt high vol Ndiff17( ~64mb), 581786189 ticks
scrypt high vol Ndiff17( ~64mb), 1330 msec
scrypt high volume     ( ~16mb), 136625774 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 274129493 ticks
scrypt high volume     ( ~32mb), 630 msec
scrypt high volume     ( ~64mb), 549898046 ticks
scrypt high volume     ( ~64mb), 1260 msec
scrypt interactive     (~128mb), 1106224927 ticks
scrypt interactive     (~128mb), 2540 msec
scrypt non-interactive (~256mb), 2233296913 ticks
scrypt non-interactive (~256mb), 5140 msec
scrypt non-interactive (~512mb), 4480327365 ticks
scrypt non-interactive (~512mb), 10300 msec
speed test for scrypt[Skein-512,Salsa20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1057548969 ticks
scrypt high vol Ndiff16( ~64mb), 2420 msec
scrypt high vol Ndiff17( ~64mb), 1088475429 ticks
scrypt high vol Ndiff17( ~64mb), 2490 msec
scrypt high volume     ( ~16mb), 250259029 ticks
scrypt high volume     ( ~16mb), 570 msec
scrypt high volume     ( ~32mb), 503541783 ticks
scrypt high volume     ( ~32mb), 1150 msec
scrypt high volume     ( ~64mb), 1006616034 ticks
scrypt high volume     ( ~64mb), 2310 msec
scrypt interactive     (~128mb), 2015825882 ticks
scrypt interactive     (~128mb), 4610 msec
scrypt non-interactive (~256mb), 4039522253 ticks
scrypt non-interactive (~256mb), 9240 msec
scrypt non-interactive (~512mb), 8080144273 ticks
scrypt non-interactive (~512mb), 18500 msec


speed test for scrypt[Skein-512,ChaCha20/8,SSSE3]
scrypt high vol Ndiff16( ~64mb), 547142719 ticks
scrypt high vol Ndiff16( ~64mb), 1280 msec
scrypt high vol Ndiff17( ~64mb), 566089181 ticks
scrypt high vol Ndiff17( ~64mb), 1290 msec
scrypt high volume     ( ~16mb), 133012296 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 267813706 ticks
scrypt high volume     ( ~32mb), 610 msec
scrypt high volume     ( ~64mb), 537836037 ticks
scrypt high volume     ( ~64mb), 1230 msec
scrypt interactive     (~128mb), 1080166944 ticks
scrypt interactive     (~128mb), 2480 msec
scrypt non-interactive (~256mb), 2179161005 ticks
scrypt non-interactive (~256mb), 5020 msec
scrypt non-interactive (~512mb), 4374005410 ticks
scrypt non-interactive (~512mb), 10060 msec
speed test for scrypt[Skein-512,ChaCha20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 648788593 ticks
scrypt high vol Ndiff16( ~64mb), 1480 msec
scrypt high vol Ndiff17( ~64mb), 667894223 ticks
scrypt high vol Ndiff17( ~64mb), 1530 msec
scrypt high volume     ( ~16mb), 158634650 ticks
scrypt high volume     ( ~16mb), 360 msec
scrypt high volume     ( ~32mb), 318790998 ticks
scrypt high volume     ( ~32mb), 730 msec
scrypt high volume     ( ~64mb), 639424910 ticks
scrypt high volume     ( ~64mb), 1460 msec
scrypt interactive     (~128mb), 1284137781 ticks
scrypt interactive     (~128mb), 2940 msec
scrypt non-interactive (~256mb), 2585092750 ticks
scrypt non-interactive (~256mb), 5920 msec
scrypt non-interactive (~512mb), 5185330065 ticks
scrypt non-interactive (~512mb), 11870 msec
speed test for scrypt[Skein-512,ChaCha20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 997085174 ticks
scrypt high vol Ndiff16( ~64mb), 2280 msec
scrypt high vol Ndiff17( ~64mb), 1030249282 ticks
scrypt high vol Ndiff17( ~64mb), 2360 msec
scrypt high volume     ( ~16mb), 236394790 ticks
scrypt high volume     ( ~16mb), 540 msec
scrypt high volume     ( ~32mb), 474219781 ticks
scrypt high volume     ( ~32mb), 1080 msec
scrypt high volume     ( ~64mb), 948948411 ticks
scrypt high volume     ( ~64mb), 2170 msec
scrypt interactive     (~128mb), 1897821083 ticks
scrypt interactive     (~128mb), 4350 msec
scrypt non-interactive (~256mb), 3800871039 ticks
scrypt non-interactive (~256mb), 8690 msec
scrypt non-interactive (~512mb), 7603443275 ticks
scrypt non-interactive (~512mb), 17400 msec


speed test for scrypt[Keccak-256,Salsa20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 560896426 ticks
scrypt high vol Ndiff16( ~64mb), 1290 msec
scrypt high vol Ndiff17( ~64mb), 580306717 ticks
scrypt high vol Ndiff17( ~64mb), 1330 msec
scrypt high volume     ( ~16mb), 137741592 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 277015986 ticks
scrypt high volume     ( ~32mb), 640 msec
scrypt high volume     ( ~64mb), 555998189 ticks
scrypt high volume     ( ~64mb), 1270 msec
scrypt interactive     (~128mb), 1116871319 ticks
scrypt interactive     (~128mb), 2570 msec
scrypt non-interactive (~256mb), 2253701597 ticks
scrypt non-interactive (~256mb), 5190 msec
scrypt non-interactive (~512mb), 4523172664 ticks
scrypt non-interactive (~512mb), 10410 msec
speed test for scrypt[Keccak-256,Salsa20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1063927900 ticks
scrypt high vol Ndiff16( ~64mb), 2430 msec
scrypt high vol Ndiff17( ~64mb), 1085048470 ticks
scrypt high vol Ndiff17( ~64mb), 2490 msec
scrypt high volume     ( ~16mb), 251055479 ticks
scrypt high volume     ( ~16mb), 570 msec
scrypt high volume     ( ~32mb), 503776932 ticks
scrypt high volume     ( ~32mb), 1160 msec
scrypt high volume     ( ~64mb), 1008382629 ticks
scrypt high volume     ( ~64mb), 2310 msec
scrypt interactive     (~128mb), 2023554686 ticks
scrypt interactive     (~128mb), 4620 msec
scrypt non-interactive (~256mb), 4044975158 ticks
scrypt non-interactive (~256mb), 9270 msec
scrypt non-interactive (~512mb), 8095246716 ticks
scrypt non-interactive (~512mb), 18520 msec


speed test for scrypt[Keccak-256,ChaCha20/8,SSSE3]
scrypt high vol Ndiff16( ~64mb), 546705996 ticks
scrypt high vol Ndiff16( ~64mb), 1270 msec
scrypt high vol Ndiff17( ~64mb), 565448207 ticks
scrypt high vol Ndiff17( ~64mb), 1290 msec
scrypt high volume     ( ~16mb), 134518762 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 270798717 ticks
scrypt high volume     ( ~32mb), 620 msec
scrypt high volume     ( ~64mb), 543454979 ticks
scrypt high volume     ( ~64mb), 1250 msec
scrypt interactive     (~128mb), 1092673099 ticks
scrypt interactive     (~128mb), 2500 msec
scrypt non-interactive (~256mb), 2202171017 ticks
scrypt non-interactive (~256mb), 5080 msec
scrypt non-interactive (~512mb), 4464247659 ticks
scrypt non-interactive (~512mb), 10170 msec
speed test for scrypt[Keccak-256,ChaCha20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 647850628 ticks
scrypt high vol Ndiff16( ~64mb), 1480 msec
scrypt high vol Ndiff17( ~64mb), 665574566 ticks
scrypt high vol Ndiff17( ~64mb), 1520 msec
scrypt high volume     ( ~16mb), 159869934 ticks
scrypt high volume     ( ~16mb), 370 msec
scrypt high volume     ( ~32mb), 321485821 ticks
scrypt high volume     ( ~32mb), 740 msec
scrypt high volume     ( ~64mb), 644816090 ticks
scrypt high volume     ( ~64mb), 1480 msec
scrypt interactive     (~128mb), 1294986629 ticks
scrypt interactive     (~128mb), 2960 msec
scrypt non-interactive (~256mb), 2606887068 ticks
scrypt non-interactive (~256mb), 5970 msec
scrypt non-interactive (~512mb), 5244980085 ticks
scrypt non-interactive (~512mb), 12000 msec
speed test for scrypt[Keccak-256,ChaCha20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1032600672 ticks
scrypt high vol Ndiff16( ~64mb), 2360 msec
scrypt high vol Ndiff17( ~64mb), 1068436686 ticks
scrypt high vol Ndiff17( ~64mb), 2450 msec
scrypt high volume     ( ~16mb), 244325403 ticks
scrypt high volume     ( ~16mb), 560 msec
scrypt high volume     ( ~32mb), 489727411 ticks
scrypt high volume     ( ~32mb), 1110 msec
scrypt high volume     ( ~64mb), 971850222 ticks
scrypt high volume     ( ~64mb), 2220 msec
scrypt interactive     (~128mb), 1942089535 ticks
scrypt interactive     (~128mb), 4450 msec
scrypt non-interactive (~256mb), 3804970140 ticks
scrypt non-interactive (~256mb), 8820 msec
scrypt non-interactive (~512mb), 7612427623 ticks
scrypt non-interactive (~512mb), 17420 msec


speed test for scrypt[Keccak-512,Salsa20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 559018996 ticks
scrypt high vol Ndiff16( ~64mb), 1290 msec
scrypt high vol Ndiff17( ~64mb), 579292360 ticks
scrypt high vol Ndiff17( ~64mb), 1330 msec
scrypt high volume     ( ~16mb), 136677705 ticks
scrypt high volume     ( ~16mb), 310 msec
scrypt high volume     ( ~32mb), 274654019 ticks
scrypt high volume     ( ~32mb), 630 msec
scrypt high volume     ( ~64mb), 551735210 ticks
scrypt high volume     ( ~64mb), 1270 msec
scrypt interactive     (~128mb), 1108857870 ticks
scrypt interactive     (~128mb), 2550 msec
scrypt non-interactive (~256mb), 2238381614 ticks
scrypt non-interactive (~256mb), 5150 msec
scrypt non-interactive (~512mb), 4490109683 ticks
scrypt non-interactive (~512mb), 10330 msec
speed test for scrypt[Keccak-512,Salsa20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 1059170781 ticks
scrypt high vol Ndiff16( ~64mb), 2420 msec
scrypt high vol Ndiff17( ~64mb), 1084106511 ticks
scrypt high vol Ndiff17( ~64mb), 2480 msec
scrypt high volume     ( ~16mb), 249679431 ticks
scrypt high volume     ( ~16mb), 580 msec
scrypt high volume     ( ~32mb), 500808902 ticks
scrypt high volume     ( ~32mb), 1140 msec
scrypt high volume     ( ~64mb), 1002081574 ticks
scrypt high volume     ( ~64mb), 2300 msec
scrypt interactive     (~128mb), 2006630783 ticks
scrypt interactive     (~128mb), 4590 msec
scrypt non-interactive (~256mb), 4021134758 ticks
scrypt non-interactive (~256mb), 9200 msec
scrypt non-interactive (~512mb), 8073286864 ticks
scrypt non-interactive (~512mb), 18450 msec


speed test for scrypt[Keccak-512,ChaCha20/8,SSSE3]
scrypt high vol Ndiff16( ~64mb), 547177320 ticks
scrypt high vol Ndiff16( ~64mb), 1270 msec
scrypt high vol Ndiff17( ~64mb), 566315960 ticks
scrypt high vol Ndiff17( ~64mb), 1310 msec
scrypt high volume     ( ~16mb), 133588119 ticks
scrypt high volume     ( ~16mb), 300 msec
scrypt high volume     ( ~32mb), 268968194 ticks
scrypt high volume     ( ~32mb), 620 msec
scrypt high volume     ( ~64mb), 539363923 ticks
scrypt high volume     ( ~64mb), 1230 msec
scrypt interactive     (~128mb), 1083654135 ticks
scrypt interactive     (~128mb), 2500 msec
scrypt non-interactive (~256mb), 2188129258 ticks
scrypt non-interactive (~256mb), 5030 msec
scrypt non-interactive (~512mb), 4389777989 ticks
scrypt non-interactive (~512mb), 10100 msec
speed test for scrypt[Keccak-512,ChaCha20/8,SSE2]
scrypt high vol Ndiff16( ~64mb), 648061963 ticks
scrypt high vol Ndiff16( ~64mb), 1480 msec
scrypt high vol Ndiff17( ~64mb), 665611875 ticks
scrypt high vol Ndiff17( ~64mb), 1530 msec
scrypt high volume     ( ~16mb), 158970054 ticks
scrypt high volume     ( ~16mb), 360 msec
scrypt high volume     ( ~32mb), 319707023 ticks
scrypt high volume     ( ~32mb), 730 msec
scrypt high volume     ( ~64mb), 641003940 ticks
scrypt high volume     ( ~64mb), 1470 msec
scrypt interactive     (~128mb), 1286841560 ticks
scrypt interactive     (~128mb), 2940 msec
scrypt non-interactive (~256mb), 2594605282 ticks
scrypt non-interactive (~256mb), 5940 msec
scrypt non-interactive (~512mb), 5208949707 ticks
scrypt non-interactive (~512mb), 11910 msec
speed test for scrypt[Keccak-512,ChaCha20/8,Basic]
scrypt high vol Ndiff16( ~64mb), 993188119 ticks
scrypt high vol Ndiff16( ~64mb), 2280 msec
scrypt high vol Ndiff17( ~64mb), 1026564521 ticks
scrypt high vol Ndiff17( ~64mb), 2350 msec
scrypt high volume     ( ~16mb), 235569674 ticks
scrypt high volume     ( ~16mb), 540 msec
scrypt high volume     ( ~32mb), 472572895 ticks
scrypt high volume     ( ~32mb), 1080 msec
scrypt high volume     ( ~64mb), 959917494 ticks
scrypt high volume     ( ~64mb), 2170 msec
scrypt interactive     (~128mb), 1896980394 ticks
scrypt interactive     (~128mb), 4340 msec
scrypt non-interactive (~256mb), 3797152484 ticks
scrypt non-interactive (~256mb), 8690 msec
scrypt non-interactive (~512mb), 7593845342 ticks
scrypt non-interactive (~512mb), 17370 msec

scrypt high vol Ndiff16( ~64mb) and scrypt high vol Ndiff16( ~64mb) refers to the use of N to enhance memory difficulty, with r = 4 or 8.  It doesn't really matter which we use, so for simplicity's sake I will use r in the protocol.  This is on a 2600k with 16GB of DDR3 memory using only one thread.

We can gleam from this that memory consumption is the major factor in hash speed, that ChaCha20 is faster than Salsa20, and that crypt hashes don't really affect this rate all that much.

So I propose the following scheme for encryption:
Scrypt with
1. ChaCha20 for mix algorithm, because it's a little faster than Salsa20.
2. SHA256 followed by BLAKE256 followed by keccak256 (SHA3-256) for the crypt algorithm, to enhance circuit size in ASICs without strongly affecting hash speed.  This should make memcoin more ASIC unfriendly.

We will start memcoin with r = 128, p = 1, and N = 1024, yielding 16MB buffers which I would expect a GPU to be able to hash at 10 times the rate of a CPU.  This will still cause saturation of the GPU's memory, as 16 MB will be required for each shader core (for a 7970 with 2048 shader cores, that's 32,768 MB of memory.  The 7970 only has 3,000 MB of memory).

A donation address has been added, and I will list all donations as they appear with a date and received from address.

Code:
XMR: 44GBHzv6ZyQdJkjqZje6KLZ3xSyN1hBSFAnLP6EAqJtCRVzMzZmeXTC2AHKDS9aEDTRKmo6a6o9r9j86pYfhCWDkKjbtcns
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!