The CPU's performance has started matter less and less.
The CPU's performance has started matter less and less.
GPUs are only good at _very_ specific workloads.
The tooling isn't good enough yet, but there is no question in my mind practically everything will run on a GPU like processor in the future. The speedups are just too tremendous.
Intel knows this, which is why they purposely limit PCIe bandwidth.
99% of the apps we use are totally unlike cryptocoin mining. And the style they are written (and more importantly, their function) is even more GPU resistant.
>The tooling isn't good enough yet, but there is no question in my mind practically everything will run on a GPU like processor in the future. The speedups are just too tremendous.
Don't hold your breath. For one, nobody's porting the thousands of apps we already have and depend on everyday to GPU.
You can even implement explicit speculative execution - simply use a warp for each path and choose at the end. It is very wasteful but can often come out ahead.
Let me detail you a completely specific workload citing my own personal experience over objective facts with citations
Oh and let me also take a swipe at Intel again without any verifiable evidence
It took under a year for a GPU miner to come out. Having optimized it for Intel in assembly I was convinced it wasn't possible for a GPU to beat it - and yet it happened.
It turns out even when used inefficiently a thousand cores can brute force its way through anything.
Cool! Please factor this very large prime for me <insert some RSA prime>
That primecoin exists? That it's POW is finding prime numbers? That it has a GPU miner?
http://cryptomining-blog.com/2192-gpu-mining-for-primecoin-x...
This is so fundamentally wrong that your complete lack of understanding the underlying math is obvious. Let us use 1024bit RSA as the key to bruteforce. If we use the entire universe as a computer, i.e. every single atom in the observable universe enumerate 1 possibility every millisecond, it would take ~6 * 10^211 years to go through them all. In comparison, the universe is less than ~14 * 10^9 years old.
And this is for 1024bit, today we use 2048bit or larger.
That is bruteforcing. That faster and better methods exists is irrelavent for a bruteforcing discussion, but I do mention in the very next message in that thread that they exist.
There is some ways to factor a prime that is much faster than bruteforcing, and yes they work on a GPU. But that has nothing to do with bruteforcing, but clever math.
But no, I suppose its more likely I was really saying GPUs aren't bounded by the limits of the universe.
Why do you expect that? Many DBMS operations that are not I/O limited are memory limited, and a GPU does not help you there (on the contrary, you get another bottleneck in data transfers to the small GPU memory). What can help is better data organization, e.g. transposed (columnar) storage.
The more complex the operations performed on the columns (trasnform), the better the GPU database will be - because of the higher ops/bytes ratio
Statistics, sure, that's definitely a good candidate for GPUs. I don't know much about R, but a quick google suggests you can run R code on a GPU, by working with certain object types, like matrices with GPU-accelerated operations.
That doesn't seem like it maps very well to a spreadsheet unless you have one big matrix per cell. I'm guessing (maybe incorrectly) that when people work with matrices in Excel, they're spread across a grid of cells. You probably could detect matrix-like operations and convert them to GPU batch jobs, but it seems very hard and I'm skeptical of how much you'd gain.
So I'm still wondering what kinds of typical Excel tasks are amenable to GPU acceleration in the first place. People use Excel to do a lot of surprising things, sure. But people use C++ and Python and Javascript for a lot of things too, and you can't just blithely move those over to the GPU.
Maybe it's specific expensive operations, like "fit a curve to the data in this huge block of cells"?
Looks like it is indeed identifying large groups of cells with common formulas, and running those calculations on the GPU.
Making very complex tasks run well on a GPU is hard, whereas CPUs are great for dealing with that stuff.
If you have something like a 100,000 row spreadsheet where every row is doing exactly the same calculation on different input data, sure, that starts to make sense. If people are really doing that in Excel, I'm surprised! (but maybe I shouldn't be)
Machine learning may be all the hype right now, but it is still suboptimal for most software demands.