MMM
Results 1 to 13 of 13

Thread: CPU affinity performance gains

Hybrid View

  1. #1
    Xtreme Member
    Join Date
    Nov 2005
    Location
    Argentina
    Posts
    116

    CPU affinity performance gains

    I finish my research on CPU affinity performance for games on dual core or dual CPU systems.

    I use windows w2k3 enterprise because is the only available OS that can run the windows resource manager. http://www.microsoft.com/windowsserv...oads/wsrm.mspx

    To check the process affinity and CPU usage I use sysinternals process explorer
    http://www.sysinternals.com/Utilitie...sExplorer.html


    The windows resource manager allows you to make affinity policies for process and services.

    EJ: you configure WRM to run all the OS on CPU0 and the .exe of your games or other single treaded apps on CPU1.

    The WRM works as a service so if you have the service on manual your OS starts like the average Joe dual system and all of your games and app run on both cores or wherever the OS tread scheduler thinks they should run.

    The WRM do not allow you to manage the OS process, but a quick registry edit cleaning the System Exclusion List you could make one of your cores totally empty and ready for your CPU hungry single treaded apps/games.

    I chose to make CPU1 free because CPU0 is the default for several things



    Performance Gains

    I use PI calculations, Sandra, 3dmark 2003&2005, CPU only benchmarks etc.

    On PI calculations or any other single treaded CPU benchmark if you make it run with the WRM properly configured you get 5% or less gains in performance, but your OS stays totally responsive because the tread of the bench app do not interfere with all the OS and user process. (the score of single treaded is half the score of a dual cpu capable app.)

    3dmark give some 5% or less.

    In games is a totally different story.

    If the game is pretty much VGA limited (like BF2) your gains will be on parts where the CPU became the limit, I get more max FPS number but my average FPS gains in BF2 are 8/10% at the most.

    In BF2 I pass from a max 80FPS to 92FPS, as I said before on games that are seriously VGA limited the gains are limited but they exist.

    On HL2 my x800xl is not too much of a bottleneck so in normal mode (no affinity optimizations) I put Dr freeman steady at 150FPS and when I start the WRM and the HL2 run alone on CPU1 my FPS jump to 182!!!


    using WRM and my X-FI the unused core (cpu0) uses 5/10% cpu, I uninstalled my X-FI and use the onboard sound and configure the bf2 tu use software audio and high quality.

    the unused core went to 15/20 with spikes of 25% of CPU usage!!!! and the audio quality have no inpact on FPS when runing with the WRM.

    this shows that the X-fi really work and the redirection of all OS operatios to CPU0 have clearly advantage for onboard audio users.

    IRQ

    I use a resource kit utility to redirect all IRQ to CPU0 but I was unable to get a tangible performance gain.


    Application Needed


    I change the WRM .msi to run on XP but it fails to install the WRM service.
    The only way to manage OS process affinity in XP is using sysinternals process explorer, but is not automatic.

    I think that a application is needed because it is a pain to set up all the affinities by hand not to mention that there is a IRQ and tread process priority performace gains not deeply explored.

    I found that NCR SMP Utilization Manager very awkward but has some nice features.
    http://www.ncr.com/support/pcfiles/U...S/SMPUT200.EXE


    So far the WRM is the best to manage process affinity.


    WE NEED SOMEONE TO MAKE A APP LIKE THE WRM FOR XP.

    please if you want to recreate this feel free to ask.
    Last edited by RFC Rudel; 11-17-2005 at 10:32 AM.

  2. #2
    Xtreme Member
    Join Date
    Nov 2005
    Location
    Argentina
    Posts
    116
    with 4 cores on the barcelona this is god time to move up the tread
    amd fx-8120 4.5ghz
    Asus Crosshair V Formula
    16G Skill F3-17000CL11
    2 evga gtx 480 sli
    LSI Megariad SAS 9260-8I
    4 SSD ocz summit Raid 0 OS
    4 WD 2T Raid 5 Storage
    lianli 2120 Chasis
    Coolermaster v10 Cooler
    X3 1600 Watts psu (220v at the wall)
    AUS DVD-R
    Dell 24 wide, Dell 17,
    Saitek x52,
    Antec spot cool (love it)
    Windows 8 64bits RTM

  3. #3
    Xtreme Mentor
    Join Date
    Nov 2005
    Location
    Devon
    Posts
    3,437
    Quote Originally Posted by RFC Rudel View Post
    with 4 cores on the barcelona this is god time to move up the tread
    I agree!

    We need some nice little util to manage affinity automatically! Best if similar to VGA profiling for certain games....
    RiG1: Ryzen 7 1700 @4.0GHz 1.39V, Asus X370 Prime, G.Skill RipJaws 2x8GB 3200MHz CL14 Samsung B-die, TuL Vega 56 Stock, Samsung SS805 100GB SLC SDD (OS Drive) + 512GB Evo 850 SSD (2nd OS Drive) + 3TB Seagate + 1TB Seagate, BeQuiet PowerZone 1000W

    RiG2: HTPC AMD A10-7850K APU, 2x8GB Kingstone HyperX 2400C12, AsRock FM2A88M Extreme4+, 128GB SSD + 640GB Samsung 7200, LG Blu-ray Recorder, Thermaltake BACH, Hiper 4M880 880W PSU

    SmartPhone Samsung Galaxy S7 EDGE
    XBONE paired with 55'' Samsung LED 3D TV

  4. #4
    Xtreme Enthusiast
    Join Date
    Feb 2007
    Posts
    508
    I have perhaps found something usefull (not test yet)

    It's suppose to run on w2K up to vista, to set affinity and priority, to define automatic rules and is free....
    http://www.bill2-software.com/proces...download.shtml

  5. #5
    Xtreme Member
    Join Date
    Nov 2005
    Location
    Argentina
    Posts
    116
    Quote Originally Posted by nemrod View Post
    I have perhaps found something usefull (not test yet)

    It's suppose to run on w2K up to vista, to set affinity and priority, to define automatic rules and is free....
    http://www.bill2-software.com/proces...download.shtml
    EXELENT!!!!!!
    amd fx-8120 4.5ghz
    Asus Crosshair V Formula
    16G Skill F3-17000CL11
    2 evga gtx 480 sli
    LSI Megariad SAS 9260-8I
    4 SSD ocz summit Raid 0 OS
    4 WD 2T Raid 5 Storage
    lianli 2120 Chasis
    Coolermaster v10 Cooler
    X3 1600 Watts psu (220v at the wall)
    AUS DVD-R
    Dell 24 wide, Dell 17,
    Saitek x52,
    Antec spot cool (love it)
    Windows 8 64bits RTM

  6. #6
    Xtreme Mentor
    Join Date
    May 2007
    Posts
    2,792
    For AMD chips, there is a software out to control this although its on a different drive that I can't access right now and I don't remember its name.

    Does setting affinity have any impact?
    I can speak about Super Pi 1M, 4M and 32M -> it gives me slower times if I set it to only one core.

  7. #7
    Xtreme Addict
    Join Date
    Mar 2004
    Location
    Toronto, Ontario Canada
    Posts
    1,433
    Most games these days are multi-threaded anyways... I don't see the point of this.

  8. #8
    Xtreme Member
    Join Date
    Nov 2005
    Location
    Argentina
    Posts
    116
    Quote Originally Posted by HKPolice View Post
    Most games these days are multi-threaded anyways... I don't see the point of this.
    if you have many cores send the OS to 1 core and leave the others empty.

    Send your multi-threaded app to those cores and you will have more performance.


    Still I see your point.

    I will retest using multi-threaded Apps when my barcelona rig is ready (january)
    amd fx-8120 4.5ghz
    Asus Crosshair V Formula
    16G Skill F3-17000CL11
    2 evga gtx 480 sli
    LSI Megariad SAS 9260-8I
    4 SSD ocz summit Raid 0 OS
    4 WD 2T Raid 5 Storage
    lianli 2120 Chasis
    Coolermaster v10 Cooler
    X3 1600 Watts psu (220v at the wall)
    AUS DVD-R
    Dell 24 wide, Dell 17,
    Saitek x52,
    Antec spot cool (love it)
    Windows 8 64bits RTM

  9. #9
    I am Xtreme
    Join Date
    Aug 2003
    Posts
    7,825
    Could you please list the steps needed to force all of the OS to core 0? This would be great for super pi
    Phenom II 940 BE / ASUS M4A79 / HD5770 Crossfire
    3770mhz CPU 2600mhz NB | DDR1040 5-5-5-15 | 900/1250

  10. #10
    Xtreme Member
    Join Date
    Nov 2005
    Location
    Argentina
    Posts
    116
    Quote Originally Posted by afireinside View Post
    Could you please list the steps needed to force all of the OS to core 0? This would be great for super pi

    It works with the WRM, you need to edit the service registry.

    Send a PM if you are going that way.
    Last edited by RFC Rudel; 11-25-2007 at 08:08 PM.
    amd fx-8120 4.5ghz
    Asus Crosshair V Formula
    16G Skill F3-17000CL11
    2 evga gtx 480 sli
    LSI Megariad SAS 9260-8I
    4 SSD ocz summit Raid 0 OS
    4 WD 2T Raid 5 Storage
    lianli 2120 Chasis
    Coolermaster v10 Cooler
    X3 1600 Watts psu (220v at the wall)
    AUS DVD-R
    Dell 24 wide, Dell 17,
    Saitek x52,
    Antec spot cool (love it)
    Windows 8 64bits RTM

  11. #11
    Xtreme Mentor
    Join Date
    May 2007
    Posts
    2,792
    afireinside, already tested that. It won't gain anything in SPi 1M to 32M I'm afraid. One core to both cores to processes shared doesn't differ a slight millisecond on my testing.

  12. #12
    Xtreme Cruncher
    Join Date
    Jun 2006
    Posts
    6,215
    There is a program that can permanently set affinity for any app. to the one(and the same) cores in the multicore(or multi CPU) system .It permanently modifies the .exe file and so it must be used with caution and backups are recommended (for the original .exe).
    So you can use it and bind a single threaded game/app. to the say,highest clocked core in your Phenom rig .For multithreaded games there is no point in binding anything(but for single threaded,yes)

    It's called imagecfg.exe and instructions are over here:
    http://www.quandaryland.com/jsp/dispArticle.jsp?filename=/help/Steves_XP_Games_Corner.htm&articleType=Help!+Page& title=Steve's+XP+Games+Corner

  13. #13
    Xtreme Member
    Join Date
    Nov 2005
    Location
    Argentina
    Posts
    116
    Quote Originally Posted by informal View Post
    There is a program that can permanently set affinity for any app. to the one(and the same) cores in the multicore(or multi CPU) system .It permanently modifies the .exe file and so it must be used with caution and backups are recommended (for the original .exe).
    So you can use it and bind a single threaded game/app. to the say,highest clocked core in your Phenom rig .For multithreaded games there is no point in binding anything(but for single threaded,yes)

    It's called imagecfg.exe and instructions are over here:
    http://www.quandaryland.com/jsp/dispArticle.jsp?filename=/help/Steves_XP_Games_Corner.htm&articleType=Help!+Page& title=Steve's+XP+Games+Corner
    Not always work and the games with punkbuster will give you problems
    amd fx-8120 4.5ghz
    Asus Crosshair V Formula
    16G Skill F3-17000CL11
    2 evga gtx 480 sli
    LSI Megariad SAS 9260-8I
    4 SSD ocz summit Raid 0 OS
    4 WD 2T Raid 5 Storage
    lianli 2120 Chasis
    Coolermaster v10 Cooler
    X3 1600 Watts psu (220v at the wall)
    AUS DVD-R
    Dell 24 wide, Dell 17,
    Saitek x52,
    Antec spot cool (love it)
    Windows 8 64bits RTM

Bookmarks

Bookmarks

Posting Permissions

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