Results 1 to 4 of 4

Thread: dual processor game

  1. #1
    Junior Member
    Join Date
    Nov 2001
    Posts
    27

    dual processor game

    I had an idea, the descent 2 source code was released a while ago, and I was thinking I'd start looking through it, see what I could make of it, I have two major hopes for that game.

    give it the graphical capabnilities of Quake 3
    make it ofcourse dual processor compatible, I'm not sure if it's possible to direct processor threads to a specific chip,(cpu0 or cpu1) but I'd like to have one processor control the AI of the game and the other run the engine and the other whatevers the game runs outside of the GPU.

    It's written largely in C++, is my idea even possible, if so, whatelse should I do to it while I'm at it?

    Thanks for the advice - me

  2. #2
    Senior Member
    Join Date
    Jun 2002
    Posts
    394
    what you seem to be describing would be a Multiple Instruction Single Data (MISD) stream which is a sequence of data sent to a set of processors each of which executes a different instruction sequence, but this doesn't exist.
    the whole point of SMP (symmetric multiprocessing) is that the software is unaware that there is more than one processor. it doesn't matter which one it uses, it just uses whatever one is available when it has to. infact the process could be run over them both and still be non the wiser.

    best of luck.
    Hmm...theres something a little peculiar here. Oh i see what it is! the sentence is talking about itself! do you see that? what do you mean? sentences can\'t talk! No, but they REFER to things, and this one refers directly-unambigeously-unmistakably-to the very sentence which it is!

  3. #3
    Junior Member
    Join Date
    Nov 2001
    Posts
    27
    hmmm....ok, that I'm willing to go with......are there "include" libraries I would need to compile it correctly? Or will the OS the game runs under control how the game interacts with the hardware?

  4. #4
    Senior Member
    Join Date
    Jun 2002
    Posts
    394
    as far as i know it pretty much comes down to the OS. but i think that you may have two options. allow me to briefly explain the parallel processing architecture and its divisions. the main branches use either a single instruction multiple data stream (SIMD) or multiple instruction multiple data stream (MIMD - a set of processors simultaneously execute different instruction sequences on different data sets) MIMD branches into two subsets classified as Distributed Memory (or in other words each processor has its own memory, ie, a box by itself, this is known as clustering, or Shared Memory. SMP falls under the latter heading, BUT the other option would be to use the master/slave architecture, whereby the OS kernel always runs on one processor and perhaps only user programs execute on the other. the main disadvantage with this is that the master may cause a performance bottleneck. and of course if the master goes down, there goes the system.
    alternatively i know that when programming in C on linux only (windows craps itself) you can fork processes(linux makes a clone of the process and its attributes and memory space and everything), but i don't know (yet!) how to specify where it goes to get executed.

    again, best of luck.
    Hmm...theres something a little peculiar here. Oh i see what it is! the sentence is talking about itself! do you see that? what do you mean? sentences can\'t talk! No, but they REFER to things, and this one refers directly-unambigeously-unmistakably-to the very sentence which it is!

Posting Permissions

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