Multi-Core CPUs working in il2 with all the cores
#1

Hello,

I have c2d E6750 @ 3600mhz fsb 450, 4gb ddr2 900mhz
gtx280 @ 702mhz , 1404mhz shaders and 2204 mhz memory

At least it works with nvidia and core2duo cpu
Reply
#2

BTW,
I use winxp prof sp3
nvidia display driver 190.62
Reply
#3

[quote="peybolman"]Hello,

I have c2d E6750 @ 3600mhz fsb 450, 4gb ddr2 900mhz
gtx280 @ 702mhz , 1404mhz shaders and 2204 mhz memory

At least it works with nvidia and core2duo cpu
Reply
#4

possible to do thsi with 4 cores? by changing conf.ini?
Reply
#5

peybolman Wrote:Also in conf.ini change the RTS process affinities:
...
[rts]
ProcessAffinityMask=0
ProcessAffinityMask=1
ProcessAffinityMask=2
ProcessAffinityMask=3
...
What? You have four masks set at once?
Doesn't make sense. Why not just the last one, =3, which means "use cores 0 and 1"?
Or just the first one, =0, which means "use all cores"?
Reply
#6

I also have a question, just checked my conf.ini and the ProcessAffinityMask=1. I assume that I am using only 1 core. I do have a 4 core processer. In order for all 4 cores to be used then I would change to ProcessAffinityMask=0, so would get increase proformance? Thanks :o
Reply
#7

In the nvidia control panel set the "threaded optimization" option to on (options are auto, on and off)

I suppose it will work with quads but may be you need to add more processaffinitymask=0-15

Next table gives an explication on which cores will be used so that A= active core and X= non active core

ProcessAffinityMask CPU-Usage
0 A A X X ....................(cores 0+1 used)
1 A X X X ....................(core 0 used)
2 X A X X....................(core 1 used)
3 A A X X....................(cores 0+1 used)
4 X X A X
5 A X A X....................(cores 2+4 used)
6 X A A X
7 A A A X
8 X X X A
9 A X X A
10 X A X A
11 A A X A
12 X X A A
13 A X A A
14 X A A A....................(cores 1+2+3 used)
15 A A A A .................(cores 0+1+2+3 used)

For core quads I would test:

processaffinitymask=1
processaffinitymask=2
processaffinitymask=4
processaffinitymask=8
processaffinitymask=15



Let me know
Reply
#8

I have an i7 Processor with evga 260 gtx.
i havent really played this game since i made this new comp..but i did tested with the tracks in it ( kamekaze02.trak )

after putting everything on high.. it seems that my system slows down when i get the plane ( camera ) close to the flak barrage of the carrier. i am guessing its the effects. i was wondering why would it slow down if this game is OLD? i haven't put the 1.1 mod yet so its all vanilla.

i also noticed when i played on mission.. i do a time skip from waypoint to waypoint it seems that it still takes a while to go from 1:00 to 10:00 mins...almost as the same speed as my old computer which it almost looked like 1 second = 20 seconds to 40 seconds.

i was wondering if anyone else has the same setup as mine on a Vista 64bit, i7 Processor, evga 260gtx 896mb, 6gm ram
Reply
#9

[quote="peybolman"]Hello,

I have c2d E6750 @ 3600mhz fsb 450, 4gb ddr2 900mhz
gtx280 @ 702mhz , 1404mhz shaders and 2204 mhz memory

At least it works with nvidia and core2duo cpu
Reply
#10

Okay, well I tried the settings in the original post with no discernable difference. The game still runs the same as it did before.
Reply
#11

I can't believe I have to cover this again.......
But here goes...

I posted a big segment on this a few months back.

This is the way the ProcessAffinityMask value works in IL2.

If it is commented out the OS will decide which cores to use. ie All cores.
"IL-2 is not a ,multithread application." True
IL-2 only uses 1 core" False.
so PAF....

=1 - core 0
=2 - core 1
=3 - core 0+1
=4 - core 2
=5 - core 0+2
=6 - core 1+2
=7 - core 0+1+2
=8 - core 3
=9 - core 0 + 3
=10 - core 1 + 3
=11 - core 0 + 2 + 3
=12 - core 2 + 3
=13 - core 0 + 2 + 3
=14 - core 1 + 2 + 3
=15 - core 0 + 1 + 2 + 3

commented out - all cores

If a core is enabled, it does NOT mean that core will be performing 100% while the other cores that are not enabled do nothing.
The enabled core needs an active thread to perform,
The disabled cores will be assigned tasks by the OS if needed.
There is only one way to switch off cores - the power switch - meaning all or nothing lol.

There was an long thread at SimHQ some time back exploring this(end 2005/beginning of 2006).

a '1' bit will enable the core, a '0' bit disables it.
Actual activity of cores can be checked through TaskManager. Keep in mind in general Windows OS runs hundreds of threads at the same time IL-2 runs.

A substantial part of IL-2 is written in Java which can use in excess of 100 threads. (source: Sun Microsystems) Shift-Tab opens the Java console in-game Yep that's where all those white messages come from.

Bitmask: 00000000000000000000000000000000 = Decimal 0
Processor affinity is off, and the load is distributed across all available processors.

Bitmask: 00000000000000000000000000000001 = Decimal 1
Processor 1 selected. The process will only run on processor 1.

Bitmask: 00000000000000000000000000000010 = Decimal 2
Processor 2 selected. The process will only run on processor 2.

Bitmask: 00000000000000000000000000000011 = Decimal 3
Processors 1 & 2 selected. The load is distributed across both processors, effectively the same as setting 0 above for Dual cores.

Because 0 puts the load across all processors and 3 puts the load on processor 1 and 2, they are essentially the same thing for Dual core CPUs.

For Quad core CPUs you can use more values:

Bitmask: 00000000000000000000000000000100 = Decimal 4
Processor 3 selected. The process will only run on processor 3.

Bitmask: 00000000000000000000000000001000 = Decimal 8
Processor 4 selected. The process will only run on processor 4.

And any combo between 0 and 15, for example:

Bitmask: 00000000000000000000000000000101 = Decimal 5
Processor 1 and 3 selected. The load is distributed across processor 1 and 3.

Bitmask: 00000000000000000000000000001111 = Decimal 15
Processor 1, 2, 3, and 4 selected. The load is distributed across all processors, 1, 2, 3, and 4.

Get the picture?



Basically, using a multi core processor in IL-2 has no real performance gain when you're talking about just the game, but........
If you use a multicore processor and assign different programs to each core, you get incredible results.

ie. I use an AMD Phenom 9850 quad core with the following settings.

IL-2 is running on Core 4
TS is running on Core 3
HL is running on Core 2
Windows uses Core 1

This is what processor affinity will do for you. Take the load off of the core that you're using for the game by assigning the game to use a core that isn't normally used. Windows, by default, will always try to use the first core (Core 0).

Hope this helps a bit.


One last thing, Multithreading for Nvidia Control Panel has almost nothing to do with the CPU. It's for the GPU processing and mainly comes into play when using 2 or more GPU's. ie. SLI or using one as a GPU and the other as the Physics chip.

Though I fly through the valley of death, I will fear no evil.....
For I am the meanest SOB in the valley!

[Image: JollySignature.jpg]
Reply
#12

Complementary:

http://gozr.net/iocl/viewtopic.php?f=2&t=537

http://il2ultrapack.net46.net/index.php ... &topic=2.0
Reply
#13

Hey {HVY-E}Jinxx,
I would like to setup my system to use the same settings.

IL-2 is running on Core 4
TS is running on Core 3
HL is running on Core 2
Windows uses Core 1

What do I have to type and where? Do I put this in my config file for the game? or is there another way. If you could post your settings for the section in your config file I would be grateful. Thanks ahead.... :wink:
Reply
#14

someone should do a benchmark. The rest doesn`t matter.
Reply
#15

Can someone help me how to put this settings in my conf.ini . I have next configuration: CPU-AMD Duo Core 6000 MHz ; VGA: Nvidia 7950GT 512 mb DD3; MemoryBig GrinDR2 2gb 800 MHz. Use Windows XP sp3
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)