Mining Theory: GPU Computation vs Co-processor Computation
Mining Theory: GPU Computation vs Co-processor Computation I am very new to bitcoin and I am trying to understand a bit about mining theory. I do not dispute the convention of using GPU based computation for bitcoin mining, but rather I'm curious about why they outperform co-processors like this for mining. Maybe a nuanced discussion of a few of the various trade-offs would be the easiest and clearest way to understand things. Let me break it down like this: Parallelism: Co-processors are mostly used for task parallel code (non-vectorized code) whereas GPUs are adept at data parallel (vectorized) code. Two questions come to mind: Are all mining codes in vectorized languages? Can there ever be a benefit to mine in task parallel code? It seems like with bitcoin mining, there is only 1 task: crunching numbers. Am I oversimplifying it though? Perhaps with task parallelism one could run other algorithms to assist with the number crunching (such as compression, flush to zero, ect)....