CUDA cores (or shader cores in general) have long been used to compute graphics. A very often used operation in computer graphics are matrix multiplications, just like in deep learning. Back in the days (AlexNet) NNs were computed using shader cores, but now have completely moved to be computed on Tensor cores. My question are:
-
Why have these workloads been seperated? (Yes obviously the tensor cores are more specialized and leave out a bunch of unnecessary operations, but how and why not integrate it into the CUDA cores to boost MM operations for computer graphics?)
-
Why isn’t the workload offloaded to the other cores when the mathematical operations are the same
-
What makes tensor cores so much more efficient and faster?
The bus widths and on module memory sizes are configured differently depending on your workload. It’s been a while since I looked at this stuff but Google Tensor cores for ex are really optimized for big matrix computations.