user72045: 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 ASIC 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).

Calculations: Speaking of flush to zero, GPU's tend to perform better than co-processors with floating point calculations. However, co-processors perform better in logical as well as arithmetic calculations. 

Is floating point calculation more important than logical/arithmetic in bitcoin mining?

Latency:
Since GPUs run in sync, the whole dataset has to be transferred at the beginning and end of each task, but co-processors can move all the data from RAM to Host RAM in a fraction of a second. I'm not sure if this is true of ASIC processors, maybe it's different.

Would the issue of latency ever warrant the use of co-processors for mining, or is latency not a big issue?

Main Question Could there ever be a pure co-processor mining machine? What about a hybrid system using an array of co-processors and GPUs for the best of both worlds? Or would GPUs beat co-processors every time? Why or why not?
You may approach this question from any angle as per the content above. The answer doesn't have to answer all questions, I thought I would just include a few interrelated questions for robustness/comparison purposes.
I want to stipulate some assumptions to make sure the answer is mostly from a theoretical standpoint. I want to make the logistics of it all mostly out of scope.
Assumptions

Power consumption is out of scope
Unit price of GPUs and co-processors is out of scope (obviously
co-processors are ungodly expensive)
Cost of electricity is out of scope


user24764: This and a followup were going around recently.
"Last week I posted on my latest toy, a rig that used eight Xeon Phi 7220 cards in a single 4u-server to achieve a total of roughly 24kH/s for cryptonote coins"

72045: <p>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 ASIC based computation for bitcoin mining, but rather I'm curious about why they outperform co-processors like <a href="https://software.intel.com/en-us/xeon-phi/mic" rel="nofollow noreferrer">this</a> 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:</p>

<p><strong>Parallelism:</strong> 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:</p>

<ul>
<li>Are all mining codes in vectorized languages?</li>
<li>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).</li>
</ul>

<p><strong>Calculations:</strong> Speaking of flush to zero, GPU's tend to perform better than co-processors with floating point calculations. However, co-processors perform better in logical as well as arithmetic calculations. </p>

<ul>
<li>Is floating point calculation more important than logical/arithmetic in bitcoin mining?</li>
</ul>

<p><strong>Latency:</strong></p>

<p>Since GPUs run in sync, the whole dataset has to be transferred at the beginning and end of each task, but co-processors can move all the data from RAM to Host RAM in a fraction of a second. I'm not sure if this is true of ASIC processors, maybe it's different.</p>

<ul>
<li>Would the issue of latency ever warrant the use of co-processors for mining, or is latency not a big issue?</li>
</ul>

<p><strong>Main Question</strong> Could there ever be a pure co-processor mining machine? What about a hybrid system using an array of co-processors and GPUs for the best of both worlds? Or would GPUs beat co-processors every time? Why or why not?</p>

<p>You may approach this question from any angle as per the content above. The answer doesn't have to answer all questions, I thought I would just include a few interrelated questions for robustness/comparison purposes.</p>

<p>I want to stipulate some assumptions to make sure the answer is mostly from a theoretical standpoint. I want to make the logistics of it all mostly out of scope.</p>

<p><strong>Assumptions</strong></p>

<ul>
<li>Power consumption is out of scope</li>
<li>Unit price of GPUs and co-processors is out of scope (obviously
co-processors are ungodly expensive)</li>
<li>Cost of electricity is out of scope</li>
</ul>
 24764: <p><a href="https://lukminer.org/2018/01/01/my-latest-toy-24kh-s-in-a-single-box/" rel="nofollow noreferrer">This</a> and <a href="https://lukminer.org/2018/01/06/more-on-building-phi-7220-mining-rigs/" rel="nofollow noreferrer">a followup</a> were going around recently.</p>

<p>"Last week I posted on my latest toy, a rig that used eight Xeon Phi 7220 cards in a single 4u-server to achieve a total of roughly 24kH/s for cryptonote coins"</p>
