@klaus said in Stupid computer question:
@horace said in Stupid computer question:
@klaus said in Stupid computer question:
They don't automatically speed things up, though. Things get faster by adding cores if you run different applications in parallel, or if you have applications that have been programmed to make use of multiple cores (which isn't an easy thing to do).
Unless parallel operations are built into the language. Then it's pretty easy.
Try to program a parallel sorting procedure that is faster than a good sequential algorithm. Not easy, regardless of language support.
Or here’s another one that is most likely impossible: write a simulator for a single core that uses multiple cores, such that doubling the number of cores would approximately double the performance of the simulation (it can be 100x slower on 8 cores, say, that’s not the point, only the speed up matters). If you can do that, I’ll promise that you’ll win every prize computer science has to offer and likely become a billionaire. In CS circles, this is known as the “NC=P” problem (not to be confused with the better known but completely different “P=NP” problem).
There’s much more to parallel programming than “parallel for loops”.
The claim I was responding to was that using multiple cores wasn’t easy. I don’t disagree with your new claim that some problems are difficult to parallelize.