|
|||||||
![]() |
|
|
Thread Tools |
|
|
#1 |
|
Just another nobody
Join Date: Jun 2001
Location: Oxford
Posts: 2,671
![]() |
Gabe Newell talks dual core
|
|
|
|
|
|
#2 |
|
Ultramodder
Join Date: Feb 2005
Location: Glen Cove, NY
Posts: 1,215
![]() |
Since I do not know nothing about coding I can only say that either they want to have a good reason to charge 80$-$100 for a game or it is actually much much harder.
|
|
|
|
| Cheap Mod Wannabe |
| View Public Profile |
| Find More Posts by Cheap Mod Wannabe |
|
|
#3 |
|
Officious Bystander
Join Date: May 2003
Location: Nodnol
Posts: 1,595
![]() |
I can see his point to an extent. However, surely without too much work they can write engines to take at least some advantage of dual/multi-core. I mean, I guess things like AI, physics, sound etc. are already fairly compartmentalised in the code. If there could be a division of labour such that, for example, one processor handled AI and networking while the other took care of physics and sound, that would yield a boost in performance.
The cynical side of me can only guess that he's playing down the importance of multicore for games because his lot have only recently finished Source, and they don't want it to be outmoded before it's been pimped around as many games as possible. I think we're all going to see something pretty special when the new Unreal engine starts being shown on A64 X2. My guess is AMD won't be able to justify keeping FX59 off the dual core process once we've seen some numbers from Ubisoft's new baby.
__________________
Demand Naked DSL in the UK! |
|
|
|
|
|
#4 |
|
Supermodder
Join Date: Apr 2002
Location: Ottawa, Canada
Posts: 380
![]() |
It's true to some extent. Programming in a multi-threaded fashion is quite difficult, (maybe a 5 on that scale) but it can easily go up to a 10 if you don't plan ahead. There's a reason that every computer-science major has taken at least 1 class about multi-threading, or distributed computing. As long as you're careful about thread crossover points, everything should be only slightly harder than things are currently. Besides, with a dual core you could easily run AI on one core, and sound and graphics on the other core, seeing as how those are pretty much totally separate entities. I should know, I'm actually at work right now working on a system that has 7 (or so) processors of which there are 3 different kinds. It's only hard if you don't plan ahead.
__________________
If you made a Venn diagram, there would be two non-overlapping circles, one of which was labeled, “Times when I am truly happy” and the other of which was labeled, “Times when I am logged in as root, holding a cable, and have the case open.” |
|
|
|
|
|
#5 |
|
Hypermodder
Join Date: Feb 2005
Location: UK
Posts: 750
![]() |
Reaper is correct, but of course, this will probably mean more bugs, and worse still, bugs that are harder to find, due to the complex nature of multi-threading.
__________________
Nobody thinks about the family of a Henchman
|
|
|
|
|
|
#6 |
|
Brett Thomas
Join Date: Aug 2004
Location: Cleveland, OH USA
Posts: 3,906
![]() |
Reaper is dead-on. Multithread is not all that bad. If you plan ahead, and don't think in an incredibly linear fashion, that is. Hell, threaded code is actually EASIER in some respects. When it comes to bug tracing, if you properly compartmentalize your code, you can see which thread failed and immediately have your error pinned down to a small amount of code.
All it is is a shift in thinking. This is what brought mac up ahead of the game for a while...companies that programmed for them were learning to write dual-threaded and multi-threaded apps for some time. For some reason, though, despite Hyperthreading, it just never caught on in the windows world. Lazy, I guess. I do agree with him about the industry's take on consumers, though...and I applaud him for at least saying it.
__________________
"Frankly that seems overkill. iluvtrees2 arguing with spec is the intellectual equivalent of a bunny rabbit taking on a pissed-off lion." - Nexxo |
|
|
|
|
|
#7 | |
|
Richard Swinburne
bit-tech Staff
Join Date: Mar 2001
Location: Omnipwntent
Posts: 28,226
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Quote:
|
|
|
|
|
|
|
#8 |
|
Why not? I own a domain to match.
Join Date: Feb 2004
Location: An hour north of Boston
Posts: 12,576
![]() ![]() ![]() |
I bet what the really hard part is would be keeping in mind that 95% of people are still on single core. So you have to basically double the code. Do a check for the number of cores/procs. If one, send it all there. If two, physics to one, everything else to the other. If three, physics, AI and everything else. Or something to that extent. I totally understand why it's so tricky.
__________________
hire me @ eric-stern.com - web developer and php ninja
pics @ my smugmug :: Twitter @firehed :: blog @ firehed.net 40D|580EXII|285HV|AB800|70-200f/4LIS|17-50f/2.8|150f/2.8Macro|50f/1.8 MacPro @ 8x2.8GHz, 10GB FBDDR2, 3TB HD :: MBP @ 2x2.2GHz, 4GB DDR2, 320GB HD |
|
|
|
|
|
#9 | |
|
Supermodder
Join Date: Apr 2002
Location: Ottawa, Canada
Posts: 380
![]() |
Quote:
__________________
If you made a Venn diagram, there would be two non-overlapping circles, one of which was labeled, “Times when I am truly happy” and the other of which was labeled, “Times when I am logged in as root, holding a cable, and have the case open.” |
|
|
|
|
|
|
#10 |
|
Heathen
Join Date: Mar 2002
Location: Nottingham, England
Posts: 442
![]() |
Hell, I have enough trouble writing code for the Motorola MC68HC11 MCU running at 2MHz let alone anything like these hehe
__________________
Lo there do I see my Father. Lo there do I see my Mother, and my Sisters and my Brothers. Lo there do I see the line of my people, back to the beginning. Lo they do call to me. They bid me take my place among them, in the halls of Valhalla where the brave may live forever. |
|
|
|
| Almightyrastus |
| View Public Profile |
| Find More Posts by Almightyrastus |
|
|
#11 | |
|
What's a Dremel?
Join Date: Aug 2005
Location: USA
Posts: 1
![]() |
Quote:
Coding multiple threads into your program is just one problem brought along by the likes of the PS3 and the Xbox. The lack of any branch prediction, cache sizes, out of order instruction execution...basically the whole thread-level-parallelism that has driven innovation up to this point, will mean that you end up with multiple rather slow running threads. The Xbox's single-threaded capacity is very slim, as is the PS3's last I read, so the thought of off-loading things like AI (very branch heavy) and physics (likes fast math from its threads) is both hard to program, and yields (by my guess) very little advantage in the overall speed POTENTIAL of a program. Such a multi-threaded program could potentially run just as fast on a "single-threaded" FX-57 as it could on the hobbled multiple cores of an Xbox360, but I have no way of testing this theory very quickly. The difference between running said program on an FX-57 and an Xbox360/PS3 is that is HAS to be multi-threaded to get the performance out of the latter group, and yet it still might run at the same speed (and I think this is what Gabe Newell is frustrated with). The complexity of writing multi-threaded programs also comes not just from spinning out the code, but from balancing between such bad single-threaded performance in a performance-critical app. Our good friend Reaper probably isn't trying to extract the greatest performance possible from his 7 processors either, which probably just happen to be light-years beyond a single core from the Xbox360/PS3. The fresh new dual-core CPUs offer almost as much single-threaded capacity, but in order for games to extract any greater speed from the processor, they also HAVE to be multi-threaded. Still, by most accounts, the days of speeding up single threads in hardware are pretty much over, so games will have to take the leap at some point. |
|
|
|
|
|
|
#12 |
|
Minimodder
Join Date: May 2005
Location: Vic. Australia
Posts: 36
![]() |
Has anyone heard of 'Oblivion'? 'The Elder Scrolls IV'? Bethesda Softworks? Their up and comeing game, 'TESIV: Oblivion', sequel to 'Morrowind' is going to be multithreaded. They have stated that it will make very good use of dual core processors. They haven't reported any major dificulties in writing multithreaded code as far as I am aware. I rather got the impression that Mr Newell was haveing a bit of a whinge.
|
|
|
|
![]() |
| Thread Tools | |
|
|