[citation][nom]DRosencraft[/nom]I technically agree with you, but I think your note about power v. hardware is splitting hairs. Additionally, I expect that streaming video and playing games on your phone, while not identical in stress, will becomparable in the amount of power they will pull. Multi-core/multi-threading, is about accomplishing tasks - getting a group of people to build a house rather than one. The amount of total efffort needed is supposed to be similar, but with multi-core/threading its dispursed to a number of individuals. When you're talking about streaming, it's a slightly different beast, because it operates partially on a set time, not simply as fast as it can go. You want to load an app, you want it to just be fast as possible. You watch a movie, you want it to just run smooth. So yes, a single or dual-core CPU can perform the same tasks as a quad-core, but if the task is optimized properly, the quad-core should be able to finish it faster. This becomes less evident if all you're doing is streaming content, beacause a 90-minute movie is still a 90-minute movie. Here it becomes a matter of whether or not the rest of the hardware (the graphics) can handle the vidoe at the resolution level. This is just further proof that hardware is outstripping software particularly badly at the moment. Just take a look at the regularity at which new CPUs and GPUs are released. Hardware is advancing at a phenomenal rate. However, software makers are much slower in developing towards the capabilities of some of these newer hardawre capacities. We're pushing the eight-core boundary in personal desktops, and you've got 16-cores in server processors. If we assume that hardware advancement is not just about hollow bragging-rights, then software still being developed at the single-threaded or even dual-threaded level is a serious bottleneck on the advancement of computing. Or we can just assume that there really is no need for all these multi-core processors.[/citation]
Applications have the be written to use multiple cores period, they don't just come that way just because they are installed on a machine that has multiple cores. When you talking about a 90 minute movie, it is still a 90 minute movie. Having faster hardware does not change that or more cores does not make a 90 minute move playback faster. However the encoding software used to create the movie will finish faster as those applications are written to be multi-threaded and they can spread the work around as you mentioned. Resolution processing will occur on the core designated for use with a single threaded application. That is why if you look at the task manager you will see allot of tops uneven distribution of utilization across all cores in the system. If you have a Video applications running, you will see one core with higher utilization and the other cores sitting at almost idle.
I used to do allot with firewall performance testing where we did some tweaking of the applications affinity to the cores manually because of the way it distributed processing as flows went through the system. Properly configured we could do a 140Gbs of Firewall performance with 1500 byte packets with 10,000 new connections per second. Without the tweaks we where getting some 3 getting loaded up to 100% utilization while the other 9 cores where sitting at 50% or less.
Hardware advancements are not just about bragging rights. There is a market for the higher end parts, and servers and pro workstations regularly use applications that leverage the extra cores. But we are not talking about Pro Workstations or Servers, we are talking about Phones. A little different. Even the Games that we play on our computers are really just starting to take advantage of quad core processors. Supreme Commander was one of the first although it did a crappy job of it unless you used the Core balancer application.