Recent content by Nick

  1. N

    Is everything on one die a good idea?

    Yes, 6 GHz data rate. Exactly. Even though future DDR4 will eventually catch up with today's low-end GDDR5, GPUs would end up having much higher clocked memory interfaces if they don't change strategies. Even though HMC can hit these ridiculously high speeds, you need to stick with more modest...
  2. N

    Is everything on one die a good idea?

    Note that sebbbi was talking about doing it manually, and thus statically. Anyway, yes in theory the same code can be recompiled multiple times. But that's not novel either. In fact proponents of JIT compilation keep bringing it up as a reason why JIT compiled languages should be faster than...
  3. N

    Is everything on one die a good idea?

    "dependent arithmetic instruction latencies have been significantly reduced" "scheduler still has the flexibility to dual-issue" Kepler couldn't actually dual-issue 4-operand instructions, due to register port conflicts. Also, whether or not you can dual-issue depends on the instruction...
  4. N

    Is everything on one die a good idea?

    I don't think that's entirely the case. There's a constant, a scalar and a quadratic component to it, and while that makes it O(n²), the constant + scalar component actually dominates as long as you stay within the design space of the process. In fact as you can see from the image for most part...
  5. N

    Is everything on one die a good idea?

    Wrong. Just adding more parallelism will run you into the Bandwidth Wall. The GeForce 8800 GTX could do 518 GFLOPS and had 86.4 GB/s of bandwidth, while a 680 GTX can do 3090 GFLOPS with 192.25 GB/s. That's six times the computing power but just twice the bandwidth to feed it. That’s only...
  6. N

    Is everything on one die a good idea?

    Indeed out-of-order execution in and of itself doesn't result in optimal scheduling. But out-of-order execution doesn't mean you can no longer statically schedule. Out-of-order execution will further improve on any static schedule whenever latencies are not as predicted. In addition, register...
  7. N

    Is everything on one die a good idea?

    The same results can be obtained with profile-guided optimization. The only advantage of doing it at run-time is that it can optimize legacy binaries for newer architectures. That's very helpful, and I mentioned it as one of the advantages of out-of-order execution as well, but it just can't...
  8. N

    Is everything on one die a good idea?

    Except GPUs don't normally stall and clock gate. They swap threads and thus push data the previous thread was using, out of the nearest most power efficient storage. People are often horrified by the ~5% of cases where speculation is a loss, but forget about the ~95% of time it works perfectly...
  9. N

    Is everything on one die a good idea?

    That's not what I meant. I didn't word it very well, but it should have been clear from the context: keldor314 was leaving branch prediction out of the discussion about the benefits of out-of-order execution, while I think it's very much part of it. It can schedule instructions from before and...
  10. N

    Is everything on one die a good idea?

    Optimal scheduling is NP-hard, so no optimizer wastes time trying to achieve it. Especially in JIT compilers. Of course GPUs avoid the issue by making all arithmetic operations have equal latency, but that’s throwing out the baby with the bath water. Also, CPUs do frequently change their...
  11. N

    Is everything on one die a good idea?

    Instead of increasing the Hyper-Threading, which could harm data locality and causes more synchronization overhead, we could have AVX-1024 instructions which are issued on 512-bit units in two cycles. This way a single thread can keep the SIMD cluster very busy while only occupying half of the...
  12. N

    Is everything on one die a good idea?

    AVX-512 is rumored to be supported by Skylake, scheduled for release next year. Not in 10 or 7 years from now! So you have to compare that quad-core with today's or next year's integrated graphics, and then you'll realize that it is indeed a big deal to have that amount of processing power in an...
  13. N

    Is everything on one die a good idea?

    I'm not talking about currently. I'm talking about 10 years from now. The analogy with pixel and vertex processing unification is just to illustrate that it doesn't create winners or losers. It offers the best of both worlds, and additional advantages on top. We still need more convergence...
  14. N

    Is everything on one die a good idea?

    First of all die area does not determine the winner. Secondly, there are no winners or losers in unification. Did pixel processing win against vertex processing when the GPU cores unified? No, they both gained new capabilities and we got additional pipeline stages and compute. Likewise the...
  15. N

    Is everything on one die a good idea?

    Don't hold your breath. Even for a production ready language it takes decades to build up an ecosystem and gain a share among legacy languages. Especially for single-language code the amount of work involved is phenomenal. A better bet is something like Reactor: it only uses standard C++, but it...
Back
Top