Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 11 of 11
  1. #1
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts

    The free lunch is over

    An interesting article about the future of computing, The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software by Herb Sutter is a good read that points out something that I've talked about here before. Concurrency is the future, non-concurrent programs will not benefit from future hardware improvements, and this requires a change in programming paradigm similar to the object orientation paradigm shift.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #2
    Senior Coder Mhtml's Avatar
    Join Date
    Jun 2002
    Location
    Sydney, Australia
    Posts
    3,531
    Thanks
    0
    Thanked 1 Time in 1 Post
    Well as interesting as it is, it's also something that was predicted many times. I for one can't wait. A change to the general programming paradigm will mean structural change, micro economic reform. Resources will have to be reallocated for retraining, losses in revenue will temporarily occur. Leaving the few who jumped on this in advance to move in and replace those with antiquidated skills, these people will be highly sought after.
    Omnis mico antequam dominus Spookster!

  • #3
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    Hmm, I wonder how the gaming industry will change the next couple of years. Games are typical single-process single-thread types of applications, and they have traditionally always been using as much computing power as they could.

    They'll certainly feel the pressure if 4GHz turns out to be the end point of the processor speed race.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #4
    Regular Coder
    Join Date
    Dec 2003
    Posts
    367
    Thanks
    0
    Thanked 0 Times in 0 Posts
    The gaming industry will amongst the first to embrace the change. It has no other choice if you look at the hardware for the next gen consoles.

    And there is plenty of potential for parallelism in games. The graphics pipeline can (and has been seens the advent of GPUs) be performed in parallel, but there is also AI, physics, sound, streaming in data (no more loading times between levels), networking, etc. that can all be performed each in it's different thread.

    shmoove

  • #5
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    Well, I was more thinking about current games. HL2, Doom3 and that pack of games. Aren't they single threaded? They're already toying around with speed requirements that means they have already reached the limit. The problem for the games industry is really that when the roof is hit, it's hit. A game released three years ago today has had sufficient of a speedup that it runs smooth on any non-ancient machine. A game released today will not have had especially much speedup at all in three years, unless it's already written for concurrency. And that's the problem. It won't stop the gains for those that adapt for concurrency today. It will affect those that have released games that have not been written for concurrency today and last year.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #6
    Senior Coder gsnedders's Avatar
    Join Date
    Jan 2004
    Posts
    2,340
    Thanks
    1
    Thanked 7 Times in 7 Posts
    Are the current games like HL2 and Doom 3 using Dual Processors if they have them available?

  • #7
    Regular Coder
    Join Date
    Aug 2004
    Location
    codegoboom@yahoo.com
    Posts
    999
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Trends, paradigm shifts, sea changes, and all else that buzzes overhead in the name of progress disturb my simple being.

    Oops I forgot to read another article... no, actually, it's all terribly interesting (that's the problem)!
    Last edited by codegoboom; 02-27-2005 at 06:19 AM. Reason: tense
    *this message will self destruct in n-seconds*

  • #8
    Regular Coder
    Join Date
    Dec 2003
    Posts
    367
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Quote Originally Posted by liorean
    Well, I was more thinking about current games. HL2, Doom3 and that pack of games. Aren't they single threaded?
    Oh, OK. I was thinking about new games that would be designed from the get-go with multithreading in mind.

    shmoove

  • #9
    Senior Coder Mhtml's Avatar
    Join Date
    Jun 2002
    Location
    Sydney, Australia
    Posts
    3,531
    Thanks
    0
    Thanked 1 Time in 1 Post
    Well you'd expect them to work just as a single thread and not show much speed increase as say the same game that had been multi-threaded.

    But I have no idea, something I'd like to read up on though.

    But just imagine how great it would be to be making a multithreaded game (I know I need a life). The modularity of it. It'd take object oriented designs to another level entirely. Perhaps we could see room for an even more object oriented language to take center stage. Perhaps even D might see increased use. I plan to port my game engine to D once it reaches the first release version.
    Last edited by Mhtml; 03-02-2005 at 02:13 AM.
    Omnis mico antequam dominus Spookster!

  • #10
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    Well, the tendency we've seen for inherently concurrent languages so far is rather the opposite - APL, K, J, Linda are not object oriented at all. However, SmallTalk, C-Linda, Java, threaded C/C++ and other not inherently concurrent but strongly threaded languages have proven quite good at it lately. But then you must remember that threading has less to do with the language and more with the operative system.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #11
    Senior Coder Mhtml's Avatar
    Join Date
    Jun 2002
    Location
    Sydney, Australia
    Posts
    3,531
    Thanks
    0
    Thanked 1 Time in 1 Post
    True, but I'm talking more of the actual design to the program. When it is multithreaded it creates a more modular view of the program, well at least to me it does. You may not have much control over the actual threading (although you could if you wanted I'm sure) but you will have to create the processes at some stage at the very least.
    Omnis mico antequam dominus Spookster!


  •  

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •