Everquest & CPU Affinity for Boxing

Discussion in 'Player Support' started by wolfcaller, May 31, 2019.

  1. wolfcaller New Member

    Everquest & CPU Affinity for Boxing

    As MS Windows 10 becomes more of a service then an OS, what with the Windows Super-user overwriting changes we make. here is something helpful for boxers.
    'k in Windows 10 it does not allow you to set an affinity for CPU's ( task manager, services not saving & being overwritten by Super-user as well as the eqclient.ini file)

    in order to do this you need to create some BAT files, These MUST be placed in your Everquest folder
    the syntax is simple:
    start /affinity CPUHEX launchpad.exe
    in order for windows to understand what CPU you want to use it must be written in Hexadecimal, & your first CPU is CPU 0 not 1 as you would think.
    the CPUHEX being as follows:
    I have done the work for you for CPU 0 through 7 here:

    processor 0: 0x1

    processor 1: 0x2

    processor 2: 0x4

    processor 3: 0x8

    processor 4: 0x16

    processor 5: 0x32

    processor 6: 0x64

    processor 7: 0x128

    so to make a Batch file that starts EQ in CPU 1 (your 2nd CPU the batch file would read:
    start /affinity 0x2 launchpad.exe

    the reason the BAT files need to be in the Everquest directory is the shortcut will tell it yo run in that directory, so it will work correctly
    then you click the BAT file, select copy, & Paste Shortcut, on your desktop.
    this insures that Windows 10 starts that instance of Everquest using the correct CPU, As I only have 5 instances of Everquest running at a time I have 5 Bat files & five shortcuts Labeled EQ-Box 1-5, I used the icon from launchpad to make the shortcuts standout as different from the Everquest shortcut.

    I hope this helps some of you, if you do not know how to make a BAT file, then contact me & I will explain that to you but if your boxing EQ you should know how to use this information.

    Larul Wolfcaller
    Shamaness 110
    The Silent Minority
    The Rathe
    aka TheWolfcaller
    Larul Wolfcaller
    Shamaness 110

    Rabbits InTheHat
    Mage 110

    Talia Legerdmaine
    Enchanter 110

    Iroll NoMoss
    Ranger 110

    The Silent Minority
    The Rathe Server
  2. Nifty Slacker Augur

    I thought "a certain program that I use" handled this during the team setup wizard. Am I mistaken?

    Oops. Guess I got censored.
  3. svann Augur

    Ive always had EQ affinity set to use all cpu's. Does it really make a difference to put different boxes on separate cpu's? I mean in theory it seems like it might, but can you really tell a difference?
  4. NameAlreadyInUse #CactusGate

    I noticed a big difference in earlier versions of Windows. But in modern Windows 10 and with modern processors, letting the OS manage processor assignments has provided the best performance for me. For reference, I am using Win 10 with Intel i7 (3770) and i5 (3570k) processors.

    You can check the status of your system's cores by opening Resource Monitor (which you can open via the link at the bottom of Task Manager>>Performance tab). The CPU tab of Resource Monitor will show you the CPU usage for each of your separate cores. It's easy to launch an EQ client and note the usage, and then launch another client and watch what changes.

    I have CPU Affinity set to -1 in my eqclient.ini file (to use all cores). As expected, all 8 reported cores (quad core i7 with hyperthreading) are being used. With 6 clients logged in (at banker in bazaar, FV server), I'm hovering between 50%-60% total CPU usage (all cores). I show ~65% on the highest core and ~40% on the lowest core, with the rest pretty evenly distributed between.
  5. wolfcaller New Member

    ok as of August MS Windows 10 Update THIS IS NO LONGER AVAILABLE.
    Windows Super-user as disabled the ability to run the BAT files.
  6. I_Love_My_Bandwidth Mercslayer

    It is no longer needed. Windows 10 has the ability to allocate CPU resources at the hardware level thanks to Windows 10's ability to dynamically allocate processor time if the application generating the CPU interrupt is not capable of using the SetThreadAffinityMask (EverQuest is not). This is not as efficient as the application itself allocating resources, but is much more effective than strapping a particular application to a specific CPU core(s).

    tl;dr Assigning cores for multiboxing is not only no longer needed, it also sacrifices efficiency.
  7. NameAlreadyInUse #CactusGate

    I_Love_My_Bandwidth likes this.