Follow along with the video below to see how to install our site as a web app on your home screen.
Note: this_feature_currently_requires_accessing_site_using_safari
I'd say it's Havok that worked the multi-cpu code... their website says that they've made updates to support multi-cpu's for physics calculations. I'm assuming Valve have just used the updated code for Ep2.
And yes I do have a dual-core CPU![]()
Nope. Valve added their own multi-core solution to the Source engine, which will not only apply to physics, but also particle effects and AI. Which you would know if you read tech articles.![]()
Why would you do the physics calculations on the GPU? Surely the CPU (especially multi-cored ones) are a much better option.
I do read tech articles thanks. And why would Valve go out of their way to add multicore support to the Havok engine (which they use), when Havok already have???
I'm not talking about the AI in this article my friend.. I'm sure they've made the Source engine support multicore CPU's, however they use an outside vendor for physics.. much like every other game developer..
It would be a harder job to take multithreaded Havok, rip it's low-level multithreaded guts out, fix all the high-level things you broke by doing so, then get it to work with the Source engine's multithreading model than it would be to adapt the Source engine's current physics (modified single-threaded Havok) to the Source's multithreading model. Especially since the coders will be doing the same thing to many other of Source's current components.
Also, AI was only mentioned as something else they were parallelizing. They're giving most of the major subsystems of the engine this big overhaul, so it's reasonable to mention. If they were keeping the rest of Source single-threaded and just parallelizing the physics system then, yes, it would probably be easier to use Havok's upgrade. However, since they're multithreading most of the engine (and doing the scheduling themselves), it makes sense to do it themselves to give them maximum flexability to ensure that all the systems "play nice" together.
It's likely that Havok is maintaining a single-core codepath in addition to it's new multicore version, since thread scheduling creates unwanted overhead on a single-core system. If this is the case, it's also likely that the high-level abstractions of physics objects are the same in the single- and multi-core versions, so if Valve wanted to get the shiny new features of Havok's current version, they probably could. About as easily as they got old physics to work with the system and updated for multi-core, anyways.
Why would you want to "rip it's low-level multithreaded guts out" anyway?
I'm pretty sure that Havok has written their code with synchronizing it with developers code in mind. Otherwise, if it is as you said, it would be useless and every developer would need to "rip it out"..
And as far as Valve keeping a "single core" version of their code... I doubt it.. the single core systems can run the multi-threaded code fine, they'll just take a (very marginal) performance hit... a fair trade off for increased performance on multi-core systems.
Why would you want to "rip it's low-level multithreaded guts out" anyway?
I'm pretty sure that Havok has written their code with synchronizing it with developers code in mind. Otherwise, if it is as you said, it would be useless and every developer would need to "rip it out"..
And as far as Valve keeping a "single core" version of their code... I doubt it.. the single core systems can run the multi-threaded code fine, they'll just take a (very marginal) performance hit... a fair trade off for increased performance on multi-core systems.
i think i must be typing something wrong or something stupid. but is there hyper threading support or not!!!!?????