When mining for pool, the DAG has to be created. Before starting mining and DAG creation do i need to be synced to blockchain?
No. You don't have to sync to the blockchain if you are mining on a pool.
The pool will provide your miner with the appropriate information for your miner to generate the DAG file required for it's mining computation.
The pool will be running an Ethereum node, normally
geth (see https://www.ethernodes.org/network/1).
Your miner will call the eth_getWork RPC API from the pool proxy address. The pool's proxy will pass on this request to the pool's Ethereum node software and the node software will pass the results back to your miner via the pool's proxy.
The results of the
eth_gethWork APi call sent back to your miner will contain the information required for your miner to generate the appropriate DAG file:
From the documentation linked above, here are the results from
- DATA, 32 Bytes - current block header pow-hash
- DATA, 32 Bytes - the seed hash used for the DAG.
- DATA, 32 Bytes - the boundary condition ("target"), 2^256 / difficulty.