18

Where do I see the current, exact DAG size? Is it being tracked on a website somewhere, or is it something I can check on my miner?

8

If you need DAG size tracker you can visit investoon.com/tools/dag_size there you can see current DAG size and important epochs.

7

The DAG size is actually calculated by a fixed formula. You can find more details here. The function that does the calculation is:

def get_full_size(block_number):
    sz = DATASET_BYTES_INIT + DATASET_BYTES_GROWTH * (block_number // EPOCH_LENGTH)
    sz -= MIX_BYTES
    while not isprime(sz / MIX_BYTES):
        sz -= 2 * MIX_BYTES
    return sz

To make it easier, look for current block number (eg. 121,000), divide it by 30,000 (so it's 4) and look up the size indexed 4 in the data_sizes array at the end of the link. In our example, it should be 1107293056 bytes.

This size is the DAG size. However if you meant size of the current DAG file, it should have extra 8 bytes (magic number at the beginning of the file which is 8 bytes, documented here). So the DAG file is 1107293056 + 8 = 1107293064 bytes.

@Richard's answer is actually the DAG file size.

6

You can check it yourself on your miner:

$ ls -l ~/.ethash/
total 1048584
-rw-rw-r-- 1 richard richard 1073739912 Mar 10 20:36 full-R23-0000000000000000
......

(If you're running a standalone miner, then the file is generated locally, not downloaded from somewhere.)

  • Thanks! I've been running the miner for a while and noticed that .ethash directory keeps filling up with other full-R23-* files. If the DAG is the all '000' file, what are the others? I see that every 4-5 days or so, there's a new full-R23-* file that gets generated at 1.9G in size. – JCor1 Mar 12 '17 at 19:22
  • They're all DAG files, though only the one with the most recent timestamp is used. The DAG changes every epoch, which is currently 30,000 blocks (~100 hours). You can safely remove the older ones. – Richard Horrocks Mar 12 '17 at 19:36
  • Richard, thanks a bunch for the explanation. Sounds like I need to adjust my cron job to remove all but the latest file for maintenance. – JCor1 Mar 12 '17 at 19:47
  • No problem - glad to be of help. – Richard Horrocks Mar 12 '17 at 19:55
  • @RichardHorrocks, often the most recent timestamp is used, not always. There is a case that ethash generate new DAG file to do smooth transition even though it's not gonna be used right away. – vutran Mar 12 '17 at 20:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.