CPU-GPU FLOP Rate
<p>I need to calculate how many flops per transferred value a code should provide so that running the code on GPU will be worth enough to increase the performance.</p>

<p><strong>Here are the flop rates and assumptions:</strong></p>

<p><strong>1</strong>. PCIe 16x v3.0 bus is able to transfer data from CPU to GPU at a rate of 15.75 GB/s.</p>

<p><strong>2</strong>. GPU is able to perform 8 single precision TFLOPs/second.</p>

<p><strong>3</strong>. CPU is able to perform 400 single precision GFLOPs/second.</p>

<p><strong>4</strong>. Single precision floating point number is 4 bytes.</p>

<p><strong>5</strong>. Calculation can overlap with data transfers.</p>

<p><strong>6</strong>. Data is originally placed in the CPU.</p>

<p>How would a problem like this be solved step by step?</p>