4 ms·
This is almost axiomatic of modern processors, because the truth is there is no market for truly general-purpose processors. Chip designers produce heavily opti
by sliverstorm 12y ago
This is almost axiomatic of modern processors, because the truth is there is no market for truly general-purpose processors. Chip designers produce heavily optimized & targeted silicon to squeeze out significantly more performance in real-life workloads at the expense of code that might- but doesn't- exist, and given the choice between a slow GP-PU and a fast modern CPU, you'd take the latter 99 times out of 100.
Belief in a truly GP-PU probably would lead to some very bad design decisions- either in software or hardware- but I don't think many people actually believe in it beyond the theory, the model. Just as hardware engineers adapt their ideal model to the "real software", software engineers adapt their software to "real hardware".
Because processors optimized for these cases have been the cheapest processing elements that consumers can buy, many algorithms have been coerced into exhibiting some of these properties.
I would additionally argue that aside from cost, because of the speed exhibited by such processors, many algorithms that do not naturally fit in the current model are in fact faster on the modern CPU than the hypothetical GP-PU anyway. Caches, for example, are such a tremendous lever on performance that a low-performance but cacheable version of algorithm X running on an i7 will almost certainly be dramatically faster than a high-performance but noncacheable version running on our hypothetical GP-PU...
If there is a low-level OS whiz around, they might be able to figure out how to set the noncacheable flag on your program's memory space, and you could prove to yourself just how much speed the cache is worth... unfortunately I am not that wizard.
- cbsmith 12y ago> I would additionally argue that aside from cost, because of the speed exhibited by such processors, many algorithms that do not naturally fit in the current model are in fact faster on the modern CPU than the hypothetical GP-PU anyway. Yup. I think the article's initial assumption of what a general purpose processor looks like ignores history. We've tried to build those kinds of processors... and what we've converged on is processors that are good at these particular specialized operations, because that actually tends to work better for most jobs. Not that there aren't exceptions... you can look at FPGA's to get an idea of what they are, and the fact that FPGA's are only used in a bunch of very specialized areas suggest that modern CPU's aren't THAT far off on being reasonable optimal for a truly varied set of tasks.
- im3w1l 12y agoMy take is that due to the exponential speed increase we have had in processors, general purpose of year n+2 has run faster than special purpose of year n. Thus, there was little point in building special purpose processors. But those times are coming to an end now.
- deleted 12y ago[deleted]