5 ms·
Paralleling is only going to net so much performance increases, you can't increase cores exponentially and expect performance wins. Better efficiency in single
by joenathan 14y ago
Paralleling is only going to net so much performance increases, you can't increase cores exponentially and expect performance wins. Better efficiency in single threaded performance will have the most effect for most people.
I think much of the performance increases we will see in the near future will come from better coding, for example Windows 8 is supposed to run faster on older hardware compared to Windows 7(also consider the simplicity of the ui of Windows phone and the resulting snappiness and speed on older hardware), combined with the influx of SSDs we may have reached or are nearing the plateau of performance that the average person would ever care for.
- duaneb 14y agoMost users won't get any effect at all unless they're playing top-end video games. Anyway, I thought by now we would have 16-core processors.... I don't understand why the "default" one is still two cores.
- bdonlan 14y agoDesktop applications aren't really ready to take advantage of that many cores yet - parallelism is hard, and the vast majority of desktop users probably can't keep even two cores saturated most of the time. There's also thermal dissipation limitations, plus with that many cores you need to have a lot of bandwidth to memory to keep them saturated. And, of course, the more circuitry you have the lower your yield, so the cost of a $BIGNUM-core CPU would be quite high. So there's no real reason to add tons of cores to a single CPU. Meanwhile, on the server side of things, there's only so far you want to go with multiple cores before it's worth thinking about just buying more than one server. Multiple servers has advantages when it comes to reliability, helps scale out resources other than CPU (eg, memory bandwidth, hard disk bandwidth, or NIC bandwidth), and of course this forces you into an architecture that scales out much further than just adding more sockets to the same machine does. And, of course, using the same basic product lines (modulo clock rating and the like) as desktop chips reduces cost too. It's not really worth adding tons of cores to the same package, when you can always buy multiple CPUs if you really _really_ need tons of cores on one machine.
- CamperBob2 14y agoRunning multiple processes is what multicore CPUs really excel at. When I want to OCR a 500-page .PDF file without hosing other tasks, a quad-core CPU makes a tangible difference.
- reitzensteinm 14y agoActually, there are only a handful of games that can really take advantage of lots of cores. Virtually everything will be faster on a higher clocked dual core than a lower clocked quad (both with HT). There are reasonably priced 16 core AMD chips, and 8 core Intel chips (with HT, they'll actually be faster). I don't think there's much of a market for people who need lots of cores, but are unwilling to build a workstation, since the form factors are the same.
- gaius 14y agoSun was shipping 8-core processors with 8 hardware threads per core in 2005. http://en.wikipedia.org/wiki/Barrel_processor http://en.wikipedia.org/wiki/Barrel_processor
- miahi 14y agoMost users cannot multitask very well. Even if they use 3-4 applications in parallel, many just wait for a CPU intensive task in foreground instead of switching to another task.
- sambeau 14y ago"Most users won't get any effect at all unless they're playing top-end video games." I have 14 browser tabs open. Safari is currently using 17 threads. Webprocess is using 10, Pluginprocess is using 22. I shudder to think what those numbers would be if I wasn't running AdBlock. I believe most users would see the effect of more cores.
- deleted 14y ago[deleted]
- duaneb 14y agoActually, I was talking about the single-threaded performance - I agree wholeheartedly that more cores would be a better experience.
- InclinedPlane 14y agoLaunch chrome. Open up 16 tabs. You are now running 16+ processes.
- duaneb 14y agoPrecisely - so why are we still shipping 2-core processors and focusing on single-threaded performance? I would much rather have 16 mediocre cores than 2 really really fast cores.
- duaneb 14y agoEDIT: (apparently I can't edit anymore on HN?) I meant that most users won't see extra performance for single-threaded improvements; I believe that extra cores WILL give better performance.
- SkyMarshal 14y agoAs a developer I haven't hit the point where I can have too many cores. When I can run three or six VMs (linux server), each allocated 2 cores (hyperthreaded ones are ok) and at least 1GB RAM each, while simultaneously abusing my browser with too many tabs, with cycles to spare for big desktop apps (Gimp, LibreOffice, etc), then I won't care so much about cores anymore. That's possible on high-end machines, but I'm looking forward to mid-level laptops being able to do that too. I do agree that a lot of performance will come from better coding, though. I can see that in my Linksys WRT54GL router, which is 2004 hardware that runs better than most everything else available today, thanks in large part to 8 years of open source software evolution in the firmware. When software has time to evolve and mature on stable hardware, it's really cool to see the performance that can be weened out of even old hardware.
- nuje 14y agoI don't know what you're running on all those VM's but I very rarely have more than one or two cpu's utilized at once even though I have some VM's running. Sure, a lot of cores doesn't hurt, but usually they don't help either.
- SkyMarshal 14y agoYou can locally simulate a multi-server production environment. So dev is your local machine, test/staging are the VMs (web, app, db server, etc) on your machine, prod is in the cloud somewhere. Nice for freelancers who work on the go without a corporate server farm. > but I very rarely have more than one or two cpu's utilized at once CPUs or cores?
- protomyth 14y agoLooking at my Mac's activity monitor, I see about 100 processes running. I am pretty sure that more cores would improve performance nicely. It's about the system, not just one program.
- nuje 14y agoAll but a few of those are sleeping, waiting for some event to wake them up. Your mac laptop would soon run out of battery and the fan would be screaming all the time if there were 100 processes just spinning around all the time.
- protomyth 14y agoConsidering what I was doing at the time I posted, I am pretty sure a good chunk of them were waiting for CPU. I do have it plugged in right now.
- truncate 14y agoAmdahl's Law is an interesting analysis to find maximum expected improvement when using multiple processor. http://en.wikipedia.org/wiki/Amdahls_law http://en.wikipedia.org/wiki/Amdahls_law