Get the Desktop App for Battle.net Now
- All your games in 1 place
- Log in once
- Automatic game updates
For Blizzards sins of making re-read books while I wait for the install to crawl onward, A programming question popped to mind: Why is a multi-core CPU listed as a system requirement? It seems absurdly silly.
I've been doing a great sum of re-study while I waited for the C++11 standard (for among other reasons it's standardization of a threading interface) and GCC 4.6 and 4.7 to roll out. I'm more then passingly familiar with how the hardware and at least the Linux Kernel handle threading. With at least more then a educated guess how the Windows kernel handles it.
Sense just after DOS computers have been multitasking. (To say nothing of the literally hundreds or thousands threads that run, sleep, and wake up under the heading "System Idle Processor".) What's more, there's not sure way to assure a OS -OR- hardware will not deem other CPU cores too busy and handle back a handle to lock all threads to run from a single core.
Hell, I've written a few multi-threaded libraries from scratch. I'm currently taking a brake from (re)designing and writing one.
Why is a dual-core CPU a system a requirement?
Edited by PantheraLeo#1464 on 5/14/2012 11:46 PM PDT
Um, dude .... games have been multi-threaded for a while.
The scheduler in the OS is going to deal with assigning threads to cores. You'll note that most of the time windoze is pretty much idling so there's plenty of time slices available. That being said ... more is better.
Likely for the layman. While I'm sure if you could find a CPU with a single core capable of the same power it would run, it just seems unlikely. I'd imagine it's more of a "you computer should at LEAST be new enough for a dual core to run this properly" than a "Dualcore is a must for x library/reason".
I'm drunk, I hope that made sense.
<-- Java, perl, python, C, C++ and intel asm fluent.
Threats of violence. We take these seriously and will alert the proper authorities.
Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.
Harassing or discriminatory language. This will not be tolerated.