1. #1
    The rig I plan to build next year will use one of the multiprocessor 64 bit designs from AMD or Intel. Will BoB support multiple threads? Will it use 64 bit code? I guess if the OS and graphics drivers support 64 bit, then I can still see a benefit, but it would be nice to have the software take advantage of this feature.

    Out of curiosity, does anyone know if combat flight sims are an application that can take advantage of 64 bit and/or multiple threads? It is my understanding that preliminary tests using 64 bit Linux (database benchmarks mostly) show that 64 bit gives you a big increase in performance.
    Share this post

  2. #2
    <BLOCKQUOTE class="ip-ubbcode-quote"><font size="-1">quote:</font><HR>Originally posted by 249th_Harrier:
    The rig I plan to build next year will use one of the multiprocessor 64 bit designs from AMD or Intel. Will BoB support multiple threads? Will it use 64 bit code? I guess if the OS and graphics drivers support 64 bit, then I can still see a benefit, but it would be nice to have the software take advantage of this feature.

    Out of curiosity, does anyone know if combat flight sims are an application that can take advantage of 64 bit and/or multiple threads? It is my understanding that preliminary tests using 64 bit Linux (database benchmarks mostly) show that 64 bit gives you a big increase in performance. <HR></BLOCKQUOTE>

    249th_Harrier,

    I think it's safe to say that BOB will support 64 if it's released in 2006 ;-) BOB is a high-end simulation so it's very likely Maddox choose that path ;-) Intel and AMD both have 64 processors and XP64 is to be released next month, so that will give them enough time to program ;-)

    There's more than multi threading; big speed improvements have been made using e.q. SSE(2).

    I think il2 is already using multiple threads; just check the program manager in xp.

    I've seen chess programs and mp3 encoder (lame) that work 30% - 50% faster in 64. However, a test with gcc4.0 (heise's CT) with 32 bits programs showed that similar speed improvements were also obtained by using the correct compiler flags...

    Mark
    Share this post

  3. #3
    Hardware threading and software threading are two completely separate topics, software threads reside in the same program, xp program manager doesnt show what these threads are doing, they only show the hardware threads which is what the newer cpu's are handling in better ways now. C++ has always had multithreading capability, its just the way .NET framework handles it that it has become a talked about topic lately.

    with regards 64bit, its simply more and faster memory addressing, where we before could handle up to 4GB Ram, 64bit i read somwhere will allow for thousands of terrabites of ram, MS are limiting theyre servers to 230 terrabytes.
    Share this post

  4. #4
    Do you mean hyperthreading? Hyperthreading is a two fold process where there's hardware that can run multiple CPUs (Sun Workstations) and then there's the software (Sun Solaris or Unix) that utilizes or allows applications to code for the multi-processor environment. For example, I work with Oracle RDBMS which runs on Sun Enterprise Servers working off of Solaris. The combination of these layers allows me to utiliize 24 3.2 Ghrtz CPUs with 40 Gig of Ram in order to optimize I/O in a transaction oriented environment. Software (Oracle) allows a wide range of methods for exploiting all the processors for all their worth. As far as I know, the next Windows OS (after XP) will be 64bit but not hyperthreaded. As a result, a single processor even at 64bit will never be able to come close to workstations running with two, four, eight, etc.. CPUs.
    Share this post

  5. #5
    Stubby, obviously your knowledge in this area exceeds mine. My understanding is that you can see benefit from multiple CPUs if:
    1) You are running multiple simultaneous applications (like IL2 and TS)
    or
    2) The application you are running can split work up into multiple jobs, so that they can be run simultaneously on separate CPUs.

    The reason I ask about the design of BoB is simple. Intel (and AMD) has decided to add 64 bit and multiple processors to their roadmap, since they have hit a wall with processor speed. If BoB can only use a single thread, then it won't really run any faster on next years CPU than on the current ones.
    Share this post

  6. #6
    @Shrike--not that simple. 64 bits also means 64-bit instructions, e.g. instead of 32-bit instruction per CPU cycle one 64-bit instruction per CPU cycle. As a consequence, 64-bit CPU can do a more complicated operation per CPU cycle. That can bring a significant performance gain.

    As for multithreading--as much as I understood from one of the sukhoi.ru threads, Oleg said that Il-2 is using it even now. It would be interesting to have a test of FB/PF on a multiprocessor setup and see if there's gain or not.

    And the answer to the original poster's question is also on sukhoi.ru--as far as I understand, Oleg said that BoB will use all of these possibilities provided that they're mainstream at the time. It would be good if CrazyIvan or anyone else whose Russian is better than mine translate that and post it over here. I'm also interested in PPU use--if it took over all FM calculations it would improve performance immensely (even PF would benefit from that, and we could get the new FM in PF too).
    Share this post

  7. #7
    Heya 249th_Harrier,

    I was mistaken about Windows ability to truly multi-task vs rapid switching between applications running in memory. Thanks for schooling me Traditionally, windows only had the ability to appear to multi-task but with Pentiums new technology, they are actually hyperthreading. The new Pentiums coming out will have two cores on the same chip sharing a single socket. It does appear to share the concept of multiple CPUs on a single motherboard just a slightly different architecture. If 1C believes this technology will be mainstream, they would be crazy not to program mulithreaded technology into their game. One of the things are hoping to see with BoB is really advanced physics. The only way to make the game playable with a high degree of fidelity would be for 1c to fully exploit both cores in a concurrent fashion. If they don't, it's like using 6 cylinder of a 12 cylinder block. It will be interesting how they proceed. Thanks for the info Harrier.
    Share this post

  8. #8
    guys, right now, P4 uses hyperthreading, used by FB/PF... but multithreading (multiple processors) is not used by IL2 and sequels (oleg stated that already)

    hopefully next geenration will be able to do so, it may bring better performance for top end machines...

    as for coupling two cores on a single chip, I've read that AMD are about to do so, not intel... their opteron (socket 940 CPU, multiprocessor capable) "double core" (meaning double 64bit core on single chip) is demonstrated right now with press samples sent around the world... the socket 393 chips (follow ups of todays 64bits chips, should arrive during the second half of this year
    Share this post

  9. #9
    I was inspired to actually look it up. Here is the link to Hyperthreading on the Intel website:
    http://www.intel.com/technology/hyperthread/
    So if I write a two-thread app for a single processor system with hyperthreading, does that mean it can't utilize both processors in a two processor system? Thats too bad. It looks like intel actually is pushing for gaming on multiprocessor:
    http://www.anandtech.com/news/shownews.aspx?i=23939
    Share this post

  10. #10
    An application specifically designed to spread operations across multiple processors is SMP (symmetric multi-processing) enabled and no game that I know of takes advantage of it. An application so coded will get a superior performance boost. The Russians are masters of SMP b/c in the past, their single processors were not as capable as those in the West (generally speaking). I believe Sun has many Russian engineers in their SMP department.

    Multithreading simply means that the main (parent) application has started (spawned) additional processes (chlidren) that run simultaneously with the parent application. Parent and children can pass data back and forth. Any language that can utilize the Windows API can do this. I have used it extensively with VB 6.0. Java and .net have a thread class built in. One example of this is to have a thread doing nothing but watching for data on the network interface and passing it along to the main application (or one of it's children) when it arrives. This way the main application (and/or other children) do not have to worry about watching the network interface.

    Depending on the operating system, an application that is NOT SMP ENABLED my still get a performance boost on a SMP box b/c the operating system can manage some of the tasks across multiple CPUs.

    Although I'm not entirely clear on the subject, it appears to me that hyperthreading is more like 1.5 CPUs than 2, even though it appears to be 2 to the operating system.

    A multi-core CPU is simply two independnet CPUs on the same chip. If the motherbaord supports it, you could run two different operating systems simultaneously on a multi-core chip. Microsoft has already stated that a multi-core CPU will only count as one when it comes to licensing. This means that a standard Windows XP Pro install will support two dual multi-core CPUs for a total of 4 processors. That's a lot of processing power on the desktop.

    AMD will release a 64 but multi-core chip way ahead of Intel. You can already buy quad Opteron boards for around $1500 that support up to 16 gig of RAM. I had my eye on one but decided to see how multi-core goes.

    On a side note, as a mechanical engineer in the U.S., I firmly believe the best engineers in the world are the Russians. They have done so much with so little it's amazing. It's funny to hear people talk about how the Foxbat was such a piece of junk. They don't understand that it was made for only one thing and that was to shoot down B-70s. They would have gotten every one. If you can find Belenko he'll tell you. Also, if you ever get the chance, look up the last time a Russian aircraft was lost due to a compressor stall.

    I sure hope Oleg and crew heavily invest in SMP and/or cluster architecture b/c almost everyone will have one or the other soon.

    -Outlaw.
    Share this post