Page 1 of 9 12345 ... LastLast
Results 1 to 10 of 99

  Click here to go to the first Developer post in this thread.  

Thread: exThreads

Hybrid View

  1. #1

    Post exThreads

    There is a little table at A2CIT that should help understand this new parameter introduced since 70256: Geo and Tex require File to work, this has been explained by Suma somewhere here. File just enables the multithreaded operations on file, that is required by the other two.
    Code:
    +---+---+---+----+
    | N |Geo|Tex|File|
    | 1 | 0 | 0 |  1 |
    | 3 | 0 | 1 |  1 |
    | 5 | 1 | 0 |  1 |
    | 7 | 1 | 1 |  1 |
    +---+---+---+----+
    • Are Geo and Tex additional threads scheduled on different cores outside the main rendering loop?
      This would mean that while rendering in the main threads, a Geo or Tex thread can read or reallocate resources. It's an "offload" from the main loop, which in turn run faster.
      Sometimes you probably see a gray wall, but in the meantime, the Tex thread loads the wall texture.
    • How all this fits in the hybrid approach for multithreaded rendering?
    • How arma2server.exe is affected?
    • What really does File used alone (-exThreads=1)?

  2.   Click here to go to the next Developer post in this thread.   #2
    BI Developer Suma's Avatar
    Join Date
    Jun 27 2001
    Location
    Czech Republic
    Posts
    3,708
    Are Geo and Tex additional threads scheduled on different cores outside the main rendering loop?
    When multiple threads are running at the same time, OS is scheduling them on different cores. As Geo and Tex loading (both done by the same thread) is running at the same time with the main rendering loop, the answer is yes, they are.

    How all this fits in the hybrid approach for multithreaded rendering?
    There is one more thread which is sometimes doing a work now, therefore additional cores get more work to do.

    How arma2server.exe is affected?
    Geo and Tex loading is not done on the dedicated server at all. Dedicated thread for file operations may cause a difference, but the difference can be positive or negative depending on a particular situation.

    What really does File used alone (-exThreads=1)?
    All file operations go though a dedicated thread. This offloads some processing from the main thread, however it adds some overhead at the same time. The reason why threaded file ops were implemented was to serve as a basement for other threads ops. Again, when used alone, there can be a difference, but it can be for good or bad depending on situation.
    Ondrej Spanel, BIS Lead Programmer

  3. #3
    As the server handles a lot of processing like AI and other things for example, a COOP mission against 200 - 250 AI using DAC 3.0 or even conventional means, I would hope some of these excellent client side performance improvements would make there way to the server side eventually someday.
    ViperMaul
    Assistant Team Lead | Advanced Combat Environment
    ShackTac Community Member | www.dslyecxi.com

  4. #4
    Quote Originally Posted by ViperMaul View Post
    As the server handles a lot of processing like AI and other things for example, a COOP mission against 200 - 250 AI using DAC 3.0 or even conventional means, I would hope some of these excellent client side performance improvements would make there way to the server side eventually someday.
    I support this idea very much.... if multi threading could be optimized for Dedicated-Servers too, this would be even more awesome
    Marek Spanel: [...] Every single element is well taught so that it fits together. So this is a significant change, because with ArmA 1 it was just random, really.
    We made some units because we had to. There wasn't much passion from our side with the first ArmA, to be honest. This time it's different. (Videogamer.com Interview

    Please BIS: Arma2 must become a TRUE MASTERPIECE - Not a middle-heavy catastrophe!

  5. #5

    More threading of AI possible?

    Hi

    Could it be possible to thread the AI even more such that each faction (incl. civilian / wildlife) get's it's own 'local' thread that only interacts with the other threads when some interaction between the agents is required.

    I am imagining that clustering of AI like this could be done (down to a single 'agent' (solder/animal/vehichle etc.)) could be distributed onto real physical cpu cores that was idle or underutilized.

    For example when playing the Warfare MP mission in SP mode I have no interaction with the enemy faction untill we clash, which can take a long while if we start far apart.

    Instead both factions are fighting the 'local' village patriots. If I had 4 unused physcial cores, those could be used to 'battle it' out without interfering with other game threads untill AI agent's involved, they get so 'close' as to require 'computation' of actions.

    Maybe this is clustering of AI is already 'happening'

    I have a dual Opteron setup and most of the times I total a maximum of 33 % total CPU time = maxing 2 out of 8 physical cores.

  6. #6
    Guys I am new to all this and wonder.

    I still dont quiet understand how all this works...
    I have a Quadcore and now I have the possibility to put different tasks on different cores instead of one?

    I would love any explanation since I want to understand this...

    Thank you a lot in advance!
    Last edited by Dwarden; Jun 19 2010 at 15:05. Reason: edited wrong post lol

  7.   Click here to go to the next Developer post in this thread.   #7
    Quote Originally Posted by megagoth1702 View Post
    Guys I am new to all this and wonder.

    I still dont quiet understand how all this works...
    I have a Quadcore and now I have the possibility to put different tasks on different cores instead of one?

    I would love any explanation since I want to understand this...

    Thank you a lot in advance!

    You don't need to do anything since last beta build(s)

    when game detect your quadcore it automatically uses -cpuCount=4 and -exThreads=7

    so unless You have some technical issues and want to lower these values there is no point to bother

  8. #8
    Quote Originally Posted by Dwarden View Post
    You don't need to do anything since last beta build(s)

    when game detect your quadcore it automatically uses -cpuCount=4 and -exThreads=7

    so unless You have some technical issues and want to lower these values there is no point to bother
    What about dual core processors?
    Bug Reports: -
    A.I.A.P. - Alpha Infantry Assault Platoon
    A tactical Shooter one time I've tried programming with a small group of users

    www.kimerastudio.it

  9. #9
    Staff Sergeant OrdeaL's Avatar
    Join Date
    Jun 10 2009
    Location
    New Zealand - Auckland
    Posts
    251
    Quote Originally Posted by otreblA_SNAKE_[ITA] View Post
    What about dual core processors?
    Default exThreads=0 and -cpuCount=2 for Duel Cores.
    Intel Core i5-2500K Sandy Bridge CPU 3.60Ghz
    4GB Kingston HyperX DDR3 1600MHz
    Gigabyte nVidia Geforce GTX 560Ti 1GB GDDR5
    nVidia Driver 306.97 WHQL
    Gigabyte P67A-UD4-B3 Motherboard
    Win 7 Prof 64bit

  10. #10
    Thank you very much!

    So it uses exThreads=7 even without having it in the end of the shortcut? Internally?

    I read about setting -cpuCount=4 manually because of detection problems, since then I have it in my shortcut. Can I remove it now? Or can I just let it stay?

Page 1 of 9 12345 ... LastLast

Posting Permissions

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