#perf_prof_branch

1 messages · Page 16 of 1

light cargo
#

im asking if any changes made in this branch have recently made it to stable or none of it had made it to stable?

restive pilot
#

How recent are you talking about? (a year, a month, since vXX, etc)

knotty wraith
#

I have one dream - to make the ability to automatically translate the chat in the game taking into account the localization of the client...

indigo anvil
knotty wraith
#

it would open the borders...

indigo anvil
knotty wraith
#

you know how to inspire

knotty wraith
#

the whole point is probably how to install a Google translator - and how to send a message and how to get it back is achievable.

leaden relic
hybrid cradle
#

Yeah it'd be pretty easy

indigo anvil
leaden relic
#

That can be done in a mission

knotty wraith
knotty wraith
hybrid cradle
#

It would however only work in global on dedicated servers

#

So eh

leaden relic
chilly geyser
#

I was send you couple reports with crashdumps on v16 with all active features aprox week ago.

light cargo
patent dome
#

Since this branch was created? Quite a few

hybrid cradle
#

(when dedmen remembers to merge them)

restive pilot
#

I don't remember anything specific from the last stable update tho. Did you notice a bug or something?

light cargo
#

ah, it feels unclear what from this branch actually went to stable, at least a lot of things did and did not with 2.18?

#

are MT feats going to be in 2.20 or not yet?

analog acorn
light cargo
#

thanks

hybrid cradle
#

using google and reading the changelogs isnt particularly difficult

heavy vortex
#

I think simpleVM made it to stable in 2.18?

whole cloud
#

Currently the perf changes are (most) flagged in a way where they wouldn't go to stable.
But that will probably change before the release

light cargo
#

gotcha

light cargo
peak hollow
#

https://forums.bohemia.net/forums/topic/140837-development-branch-changelog/?do=findComment&comment=3535941
Added: Replaced Real Virtuality multithreading system with Enfusion's version

Is this change now marged into main branch (2.18.152405)?

hybrid cradle
#

no, else it would be in stable changelog

#

it is not difficult to read the stable changelog

#

same with the performance changelog

peak hollow
#

@hybrid cradle Changing builds do not result in perfomance increase. After testing main, dev and perfomance profilling they produce same CPU load pattern. If anything changed it already in the main build. CPU Ryzen 7 5800x3D, 1800h in game

hybrid cradle
#

ok

#

not sure what you're expecting

#

use YAAB

hybrid cradle
#

Looks about what is expected, wait for Dedmen to chime in

peak hollow
#

@ancient bane Ryzen 7 5800x3D 4.6Hz Rx 6600 OC core 2766 mem 1900 ( setting in game to low for CPU test ) 32 Gb 3600 ( Just tested main and get the same perf as on perf.prof)

hybrid cradle
#

send rpt for launch parameters too

#

but thats still showing clear differences lol

peak hollow
#

@hybrid cradle -cpuCount=8 -exThreads=7 -enableHT

hybrid cradle
#

get rid of all of those

#

game determines it automatically

peak hollow
#

@hybrid cradle Same result (GPU is not bottlenecking CPU)

hybrid cradle
#

yeah

#

still about what i would expect

naive osprey
# peak hollow <@451847101798678550> Main: https://cdn.discordapp.com/attachments/446769577872...

That amount of performance change is expected. You can see the better 1% lows and frame time changes, along with better general FPS.
YAAB is mainly for AI and engine calculations, but does not include all the multithreading that Dedmen has blessed us with.
Afaik, nothing was changed (for performance) in terms of GPU calculations, and this is exactly the point with Arma. It's always been a CPU bound game. Giving us more leg room with CPU cycles makes anyone who actually cares about the game absolutely ecstatic.

Ryzen 5800X3D
Non-Profiling
https://i.imgur.com/RQHjc5P.png

Profiling - (Profiling exe, not Performance exe)
https://i.imgur.com/EtCB9HV.png

I have a server I develop for, and will always recommend profiling build as long as it doesn't cause crashes, as for our server it generates at least 30 FPS difference on clients, even more in some cases. The server itself is also a LOT more stable in terms of cycles with it.

hybrid cradle
#

graph is much more important than the number when looking at benchmarks

#

it's not faster, it's just smoother

woven loom
#

Use capframeX to see more detailed metrics like 1% low framerates and frame times... and anyway even if you're just looking at the fps number, run it at least 3 times otherwise the result you'll get won't be correct

rose lily
#

Hi,

Going to switch over to the profiling build to get access to multi threading and the other performance benefits.

Is there a performance guide somewhere that goes step by step to optimize the game now on the current version of the profiling build?

#

Or, is it just as easy as switching to the profiling build and it all comes optimized out of the box?

void badger
#

Switch to profiling build, disable all the parameter changes you make in the launcher

inland dew
#

just switch

rose lily
#

Sweet thanks!

light cargo
#

people really need to stop using the specific cpu parameters that disable auto detection......

real creek
#

There's lots of "optimization guides" that are just snake oil (or simply outdated)

rose lily
#

Ok, so I guess I should uncheck everything under advanced parameters such as “hyper threading” “memory allocator” “extra threads” etc?

ashen helm
#

on perf? yes

#

if you have more than 32gb of ram you can try switching to goldjohnking's mimalloc, otherwise leave this stuff on default and let the game itself adjust whatever it needs

rose lily
#

Sweet thanks!

woven loom
tawdry gazelle
#

I did a test on Arma 3's mimalloc, finding v207 performances better than v217 in YAAB. Anyone has the same results?

harsh grotto
inland dew
#

because if it was 1-2 runs per malloc, then one can't make any conclusions

#

1st run is loading textures, so fps is different from other runs

  • ai actions randomness, thus different fps from run to run
#

so one should do like 6 runs per malloc, always discarding the 1st run, thus avg of 5 runs, avg of min fps and avg of avg fps

tawdry gazelle
#

I can constantly reproduce 5 fps differences between v210 and v212, even in the first run. Started from v212, mimalloc does not provide performance gain than default TBB. meowhuh

inland dew
#

what's your cpu

tawdry gazelle
#

12700KF

inland dew
#

other people have reported slightly higher fps on 2.14 vs. 2.12

inland dew
tawdry gazelle
#

2.10 is 5 fps higher than 2.12. And 2.12 does no difference between default TBB.

inland dew
#

maybe 2.12 not as good

#

and 2.09 problematic

harsh grotto
#

according to my tests, 212 has almost the worst performance

tawdry gazelle
#

2.14 and 2.17 are also 5 fps lower than 2.10, 2.09 and 2.07...

harsh grotto
#

and 209 best

tawdry gazelle
inland dew
#

currently have no time to compare on my 14900ks

void badger
#

Is it time to rollback GJK?

inland dew
#

2.09 should be avoided, as some people were complaining, some time ago
although i haven't experienced any problems using 2.09

tawdry gazelle
#

maybe we should choose v207 as a both stable and performant option for now? 😅

inland dew
#

will test all of them, later

glacial olive
#

If we wanted to test the new performance profiling branch for MT on the SERVER side, how would you recommend going about it? I.e. which .exe would you recommend installing and on which branch?

void badger
#

Grab latest perf binary from drive and backup stable exe

glacial olive
#

Gotcha. Has anybody done any testing on serverside benefits / impacts?

void badger
#

Just read through this channel's history and you'll see various reports lol

#

I think I rolledback to stable on my Linux box because I got two consecutive segfaults on latest version

tawdry gazelle
fast hornet
#

will you release a "fixed" version of 2.1.7? 🙂

tawdry gazelle
inland dew
empty goblet
tawdry gazelle
inland dew
tawdry gazelle
tawdry gazelle
light cargo
#

huh, should i update mimalloc?

inland dew
#

read the chat

tawdry gazelle
# inland dew no lock pages

I removed it, because it does not help improve performance at all, other than allocating pages but never use them.

light cargo
#

i am reading but i feel uncertain

#

sorry about that, groove_c

inland dew
light cargo
tawdry gazelle
light cargo
#

too large of pages is painful for performance

#

like, it decreases performance because it has to go through such a large chunk of data

tawdry gazelle
inland dew
#

so only use the dll and no lock pages for windows user

cloud sky
#

I'm confused. Doesn't the lock pages privilege also utilize large pages and thus also single translation buffer that makes the performance increase?

light cargo
#

it becomes a significant performance issue when you're on hdd or sata ssd

#

i think?

#

sorry for being wrong if that's the case

inland dew
light cargo
#

its fine as long as its in physical ram, once it starts to need to page those large chunks, performance is doomed

cloud sky
light cargo
#

and it does impact fps a lot when it has to put memory in disk

#

will it cause an oom crash if it cant put the pages in ram?

cloud sky
tawdry gazelle
light cargo
#

thank gosh, because 1gb is too much

#

related offtopic: minecraft has performance issues when gc'ing large amounts of ram with a larger max mem

cloud sky
tawdry gazelle
light cargo
#

i see

inland dew
#

so now it's 4kb?

light cargo
#

2 or 4mib

tawdry gazelle
cloud sky
inland dew
#

so large don't need lock on user then?

light cargo
#

when i have heavy use on the hdd it gets pretty bad to the point the whole console i/o freezes completely when its paging like hell and its hitting the display subsystem

tawdry gazelle
light cargo
#

and this is why i stay away from SSDs

inland dew
#

thus no lock on user and even 16 gb ram is fine then

tawdry gazelle
tawdry gazelle
light cargo
#

oof

inland dew
light cargo
#

sorry ezcoo, i forgot to hit reply to your message right above

light cargo
light cargo
inland dew
cloud sky
tawdry gazelle
#

Large-page support enables server applications to establish large-page memory regions, which is particularly useful on 64-bit Windows.

Retrieves the minimum size of a large page.

Reserves, commits, or changes the state of a region of pages in the virtual address space of the calling process. (VirtualAlloc)

inland dew
#

so few weeks before it's whitelisted by be

light cargo
inland dew
#

you don't use mimalloc lock pages if you don't have 32 gb or more

#

if you do - your problem

light cargo
#

same with a3's -hugepages param?

cloud sky
light cargo
cloud sky
light cargo
#

which is why they're a bit smaller than the claimed capacity

cloud sky
light cargo
#

yeah, sorry

#

i think its kind of over by now honestly

#

thanks for the responses

cloud sky
inland dew
#

just don't do mimalloc with 16 gb ram or less

light cargo
#

i have 16gb but much less ram free because of applications running. so i should be fine using scheduled mimalloc, 8gb of ram could benefit too, no?

#

its fine to not use huge pages

#

regardless of the allocator it does feel like a3 just leaks ram even with the mem cap parameter

hybrid cradle
#

please shut up oh my god

#

how many times do we have to tell you

tawdry gazelle
#

From my test I am sure about several things:

  1. Using Large Pages (>=2MB) on Windows requires Lock Pages Privilege.
  2. Large Pages (>=2MB) actually helps reducing caching table size, which reduces CPU cache miss.
  3. mimalloc‘s does not actually lock pages in memory (because it is not calling VirtualLock). Instead, it commits and reserves.
  4. Reserved memory in mimalloc is for special use. Without specific implementation, they does nothing at all.
empty goblet
tawdry gazelle
tawdry gazelle
empty goblet
#

also i don't recommend using that mimalloc with 8GB lock pages on systems with less than 16GB ram (more like 24 to 32)

#

mileage may vary based on OS, CPU, memory speeds etc. you can gain some % performance

#

also if you run multiple clients/ servers/hcs ... take in mind thats minus 8 per process plus other memory needed so you run out of memory fast

cloud sky
empty goblet
#

it's simple run the non lock pages variant to get baseline performance (benchmark or w/e tests you deem needed) then do the lock pages and if there is no difference for you then forget about lock pages

empty goblet
tawdry gazelle
cloud sky
#

Even the regular one? (Edit. the malloc I mean)

heavy vortex
#

I think 2MB+ pages are always locked. Windows simply won't page them out.

tawdry gazelle
tawdry gazelle
smoky prawn
#

Howdy! Years ago I did a “performance” settings guide. Haven’t touched the settings since then. Do you recommend any new ingame settings with the current profiling branch or do I have to test my way there?

heavy vortex
#

hmm, maybe modern windows will page out large pages if the disk is fast enough.

#

Like they never said "we will never page out large pages". That's just how it used to work.

#

But anyway, that doesn't really matter. Locking was the means to the end (large pages -> reduced TLB spam) rather than vice versa.

#

So the question is what combination of settings is required to make Arma use large pages.

tawdry gazelle
cloud sky
heavy vortex
#

Probably still better than having to load new objects off disk from scratch.

#

Don't over-contend memory and windows won't do anything daft, anyway.

#

If you don't have enough memory for what you're trying to keep in memory then you have issues regardless.

tawdry gazelle
cloud sky
#

Would be fun to know how Windows determines what data to page out and what not. AFAIK those algorithms are very sophisticated nowadays

tawdry gazelle
light cargo
smoky prawn
light cargo
empty goblet
plain trout
#

any chance you can make hugepages version for the people that do have powerful enough systems..?

light cargo
plain trout
#

I did and I understand your point. Some people here "might" be running a top-end system and like to see what these things can bring out of the game tough.

light cargo
#

at the cost of no performance gains?

plain trout
#

how about you care about your business

fast hornet
#

just ignore him.. he's running Win7 and is confused in other ways as well.

inland dew
#

nobody cares. stop spamming here

fast hornet
#

wow, congrats for not actively being a threat for other people anymore.. until you boot back to your beloved ancient Win7

fast hornet
#

@tawdry gazelle the server seems to run fine with the new release btw. - client has to wait for the BE whitelist 😉

heavy galleon
#

Or disable BE weSmart

#

If it's not a public server, BE really serves next to no purpose

fast hornet
#

the server doesn't need the whitelisting even with BE enabled, only the client has the restrictions on what dll it is allowed to load with BE.
And yes ofc. it's a public server 🙂

heavy galleon
light cargo
autumn timber
#

BE really serves next to no purpose
Using BE serves the purpose of BE whitelisting the extension/allocator sooner so that you can use it with BE 😉
||Circular reasoning works because circular reasoning works because circular...||

heavy galleon
empty goblet
#

but then you don't need run public server at all no need to waste cycles on public query

indigo anvil
heavy galleon
fast hornet
#

we have 2987 active bans atm, most of them for cheating. So yeah.. the trust thing doesn't really work on a public server kekw

woven loom
#

Would suggest testing with that combination (I am unable to test for the time being)

tawdry gazelle
tawdry gazelle
#

Nope. It is not needed at all, because it is always locked.

heavy vortex
#

how often does Arma allocate blocks larger than 16MB?

tawdry gazelle
#

Not sure, trying to figure it out now.

tawdry gazelle
#

memory is magic meowsweats

tawdry gazelle
tawdry gazelle
verbal remnant
#

How do I use perf prof branch to increase performance??

worldly badge
#

Steam > Arma 3 > Property > Beta > Profiling Branch, but you won't magically improve FPS by 60

verbal remnant
#

Yeah ik

analog acorn
#

Keep in mind that perf/prof is an experimental branch with frequent updates. Sometimes things can go wrong. If you're going to use it, make sure you keep track of this channel and the changelogs for the latest information.

candid crag
#

how long until this branch is merged with the master

analog acorn
#

Unknown but likely not for a couple of months at least

tawdry gazelle
mental crescent
#

I don't know if this is actually an issue or not since this is all I've done so far:

stable/v5->v6(+v16) performance binaries, CPU utilization seems to reduce from 100% on core 0 to ~90% and FPS is reduced from 247->230 (93%) in a static test looking over Kavala

plain trout
feral harness
spiral thicket
#

Hey everyone, just checking -- the memory allocator I should currently be using is Gold's 2.1.7 above?

#

I also previously had to go through some shenanigans to enable lock_pages on windows home version, recently reinstalled windows. Do you think its worth reenabling locked pages? YAAB is at like 96 fps baseline performance branch right now on Intel allocator.

spiral thicket
autumn siren
#

How accurate is that Benchmark and what is it for?

#

SP missions with AI, MP missions with AI, or pure MP missions?

#

I assume SP with AI

analog acorn
#

It runs an SP scenario with AI. It can't really test MP because y'know, it's only running on your PC.

light cargo
#

yaab is sp with ai, there's a separate headless client benchmark mission that is "essentially yaab" on servers/hc

autumn siren
light cargo
#

what

#

its a thing

light cargo
autumn siren
#

Thanks

whole cloud
woven loom
inland dew
#

yeah, lower gpu load in % = higher cpu/ram perf bottleneck

mental crescent
mental crescent
woven loom
# mental crescent I'm not sure how that would make a difference when testing the same game with th...

Difference is that CPU utilisation changes are more or less meaningless because of how much other stuff is going on in the background. Either you have a profiler or you might as well be looking at high level randomness in the game, OS and hardware schedulers, it probably isn't telling you much.

It's different from you writing your own simple program with and without multithreading and seeing a performance regression when all cores are loaded vs not. There's just too much happening in the middle in this case, so CPU utilisation changes may not mean much or what we think they mean. It's probably not replicable on someone else's system either without a lot of control on both ends.

GPU utilisation or GPU Busy (available from Intel Perfmon and programs that use it like capframeX) are far better indicators of what's going on.

#

Ultimately the whole goal of multithreading is to offload the "primary thread" so that the GPU can render faster without waiting on the CPU, so the GPU should spend a larger fraction of the frame time working. Which also means that on average GPU utilisation is higher and FPS higher. Hopefully it also means that frame times are smoother overall, because there is less waiting on the CPU at random times, but there's driver behaviour in the middle too.

#

So that's what's worth measuring on our end imo since that's the end goal for any of this: higher performance under various loads

#

I've spent many years logging CPU utilisation and it didn't tell me much apart from the fact that a single thread is loaded more than others... But exact percentages have changed over the years and were different for different CPUs, with sometimes little actual difference to Arma's performance characteristics

#

The only thing that varies wildly and consistently from scene to scene depending on how much load there is, is GPU utilisation and proportionally, FPS

inland dew
#

guess it's out of this chat scope

woven loom
#

Yeah sorry I just wanted to reply properly

#

Back to perf chat 😄

mental crescent
#

Maybe I'm just not understanding your point so thanks for the reply 😅

inland dew
weary sun
#

Also having this on a linux box, will get version number in a jiffy

#

Two crashes, last sunday and today, if a server has people connected to it for more than 20? Minutes the crash will occur, with our regular modlist, checking to see if it occurs with vanilla

void badger
#

What mods you running? Mine seemed to coincide with WebKnight mods

languid snow
#

Is it possible that the AI group leaders have a bug where they spam target orders on targets they can't even see?

heavy vortex
#

It's Arma AI. It's bugs all the way down.

#

You mean a new bug in prof?

crude sedge
#

They're like 'Attacking!' or 'Engaging!' like, 25x in a row like it's been getting stored in a buffer and then they just dump it into chat

#

I don't mean to change the subject but someone in general chat suggested I post this here:

Is anyone else having trouble with getting their PCML/Titan to fire top-down? I'm using the Perf branch for MT improvements and wonder if that could be it? I can switch back and test again if I need to...
Also mainly playing SP campaigns (East Wind again) : )
Forgot to mention, it just does direct fire even if top-down mode is selected
I thought it might be a range thing, so I tested on Resurgent West (tank battle at the end) and no matter what, they just go straight even towards the furthest target.

analog acorn
quaint flame
#
12:46:16 Warning: Cannot evaluate 'DIK_ENTER'
12:46:16  ➥ Context: chat.chat <- bin\config.bin/CfgDefaultKeysPresets/ArmaReforger.Mappings
->Last modified by: A3_Ui_F

This one seems new. Also I haven't seen the reference to Reforger before. Is that related to the change where additional function keys are supported now?

#

Also these (not sure if related)

12:47:10 Warning: Cannot evaluate 'IDC_CONFIG_IDCLBHISTORY'
12:47:10  ➥ Context:     [] L1 ()

12:47:10 Warning: Cannot evaluate 'DIK_ENTER'
12:47:10  ➥ Context:     [] L1 ()
whole cloud
#

We have a reforger keyboard layout, and that was bugged

void canyon
#

Can you use the multi core patch on king of the hills servers? I'm mostly interested in flying small transport and rescue helicopters

worldly badge
#

Performance branch is MP compatible with public branch

#

If that's what you mean

craggy idol
#

this doesnt seem to do anything

#

am i missing something?

opal hound
#

What doesn't?

craggy idol
#

the new performance thingy here, i have seen some videos of it working well

whole cloud
#

Its not magic. It improves some situations.

opal hound
#

wtf dedmen give me +100 fps

#

multithread all the things

craggy idol
#

but maybe overall its better

#

ig gotta do more testing

whole cloud
#

check in main menu, bottom right the game version number, should be 520 at end

craggy idol
#

yes it is

whole cloud
#

🤷

craggy idol
#

idk, its the same or even worse, not sure why

#

the YAAB benchmark

heavy galleon
craggy idol
whole cloud
#

how many fps are you getting in YAAB?

craggy idol
#

54 without launcher, 57 with parameters

#

got 59 without this exe with lockpages allocator

whole cloud
#

maybe gpu or memory limited. So the cpu improvements wouldn't help 🤷
Maybe #hardware_vs_arma has more ideas

craggy idol
#

seems kinda strange, my pc kinda beefy but idk, i feel like CPU is holding back may be

#

12400f is still kinda like not that bad

#

ill go in that channel

heavy vortex
#

Not actually sure what to expect with a 12400F. The only Intel results I see are for high-end stuff.

craggy idol
#

my video card is 7900GRE and iam starting to think that its just more powerful CPU-s fix the optimization itself tbh

heavy vortex
#

Hmm. If you have a 6C/12T CPU, does it use 6 or 12 threads by default?

whole cloud
#

6

craggy idol
# whole cloud 6

and to fix that you have to enable the thread thingy in parameters right?=

whole cloud
#

enable hyperthreading would change it.
But why "fix", why is that a problem that needs a fix?
In my tests, hyperthreading enabled had worse results

craggy idol
#

damn, this thing is confusing af xd

#

so in an ideal world with that new perf exe. i shouldnt run any parameters?

heavy vortex
#

It's possible that reducing -cpucount further would help.

craggy idol
#

i disabled hyperthread and will try now, after ill try reducing cpu count

#

im almost fully convinced now its a cpu limitation

#

sadge

heavy vortex
#

Potential problem is that almost everything Arma does is memory/cache limited. In those situations some threading can help (CPU can at least do something while waiting for a cache miss) but every thread you add increases the contention.

#

Those are fancy-ass CPUs though. They should really have some threading benefit for any workload.

craggy idol
#

every like good fps benchmark i have seen is some x3d chip or high end intel one

#

so yea, i shouldnt expect more than 59 tbh

#

i was just hoping that maybe

heavy vortex
#

Well, the cache architecture on a 12400 is basically the same as a 12900k, except with fewer cores fighting for it. So in theory it should be good with six threads.

heavy vortex
#

You do get a lower power budget though. Maybe that's an issue.

#

Modern CPUs don't tend to have a cliff edge like that though.

inland dew
#

low frequency and cache 12400f + low frequency and high timings ram says it all

#

no miracles for such hardware

heavy vortex
#

This isn't miracles. It's about getting any improvement at all out of multithreading some extra parts of the engine.

minor geode
#

God bless us dedicated Arma players... we scrape and pray to squeeze 3 or 4 extra FPS out of a decade old game... and we love it.

rare finch
#

@raix to identify what you are seeing with v6 multithreading, you should record both your CPU usage and GPU usage during the tests. If your CPU is pinned (multicore), then you do not have any additional CPU headroom and will not see better results. Noting that even in multi-threaded cases, the primary thread generally requires the most power. So if one core is pinned, then it is unlikely that you will get more performance. Then if your GPU is pinned, then you are unlikely to see a frame rate increase as you are using all you have.Now if you have room on your GPU and only one core of your cpu is pinned (or spiky), that is the usual case where multi-threading will help.

#

As for hyper-threading on Intel processors, it is generally advised to turn off (or not use) hyperthreading in gaming scenarios as the cpu power/frequency cap is lowered (overall) when using it. While when not using it, the CPU has a bit more top clockspeed and voltage.

craggy idol
#

i cannot send pictures here though for some reason

#

prob blocked here

plush dune
#

I think the results are gonna very a lot. On my fairly high end system I got no difference at 1440p with the ultra preset

#

79.2 FPS in dev branch vs 80.1 FPS in the normal stable

craggy idol
#

it seems that the cpu just matters tbh

#

im pretty sure a 7800x3d with a 3060 beats my 12400f RX 7900GRE easily

#

even though video card diff is high

plush dune
#

I have a 7800X3D, with 32GB DDR5 6000 CL28 using buildzoid's timings, and a Sapphire Nitro+ 7800 XT.

real creek
craggy idol
#

it also depends what settings are you running

#

duh

#

xd

heavy vortex
#

4k 16x FSAA might turn in favour of the 7900GRE, yes :P

inland dew
plush dune
#

Okay, I just tested things in a real mission and with capframex

craggy idol
#

for me i lose fps with the prof branch at least in yaab benchmark

#

sad to see

plush dune
#

ran the steelhead 1944 mission 3, made sure everything was the exact same from stable to dev branch, my average FPS went from 59 to 80.3, with 1% lows going down from 40.8 to 34.9.

craggy idol
#

i did high settings (reduced) and shadows disabled

#

without the branch 69.6 (nice) fps and without it its 68.3, maybe margin of error

minor geode
#

I thought the full multithreading update wasn't really going to be up until the 2.20 version, or is that only for "live" and the current 2.18 perf/prof versions have all the main multithreading fixes in place?

plush dune
#

Yet another arma benchmark won't show any difference at all really sadly, you gotta run a real simulation to take advantage of the new system

plush dune
hybrid cradle
#

Perf branch has multithreading changes

#

Simply, you're not getting more FPS. You're getting a more stable game

craggy idol
hybrid cradle
#

Do not launch with any """performance"""" parameters either

plush dune
#

Yeah, i cleared the launcher, only used skip intro videos

minor geode
# hybrid cradle Perf branch has multithreading changes

was going to say, the multithreaded updates are around physx and AI stuff, shouldn't increase FPS really, unless it can offload the AI to other cores or something, which can be an issue with too many AI in missions etc. but the biggest hit to FPS currently is draw distance.

plush dune
#

They said they replaced the entire multithreaded system with the enfusion version, so its a pretty big change

#

So it's not just what is being multi-threaded, they aren't using their old virtual reality system anymore in the dev branch

craggy idol
#

i lose alot of fps when i have some not enabled

minor geode
plush dune
# minor geode Where is the actual change or proposed change for the full multithreading update...
#

November 6th is where the big changes came in

#
ENGINE

Added: Replaced Real Virtuality multithreading system with Enfusion's version
Added: Asynchronous JIP queue processing
Added: Multithreaded JIP queue processing
Added: Multithreaded lights collection
Added: More multithreading into rendering
Added: Asynchronous AI and sound simulation
Added: Partially multithreaded AI simulation
Added: Multithreaded AI visibility calculations
Tweaked: Improved PhysX simulation performance, if many PhysX objects are in close proximity
#

They added a lot more too

minor geode
#

I meant more like was there a roadmap or anything posted for the future updates, not what was already done, sorry.

plush dune
#

Latest stuff is always gonna be posted in that thread. I think only one guy is working on this atm, and its experimental what he is doing

minor geode
#

yeah it's dedmen 😄

opal hound
#

Has someone made a video on the branch or something? Everyone seems to be calling it the multithreading branch

plush dune
#

some youtuber did a video on it that was a bit misleading, but nothing super solid

whole cloud
whole cloud
whole cloud
opal hound
#

Lovely

plush dune
#

Gains are real, nearly 20% more fps in actual missions, but the real gains are improved frametimes across the board

#

i can't post capframex captures here though since media uploading isn't allowed

whole cloud
#

did a couple more things since then, don't have a more current one

craggy idol
#

without it i instantly lose 7 fps on average

#

maybe its the allocator, ill test it now

#

maybe the lockpages allocator is like the reason or whatever lemme see

whole cloud
#

mimalloc gives +10 or more fps for some (on the >80fps range)

craggy idol
#

other parameters do nothing

#

only with allocator i get more fps

#

otherwise all the parameters kinda the same

plush dune
#

does the allocator change when running stable vs dev? I didn't set any parameters, I cleared them all when running my tests and went from 59 to 80.3 FPS.

opal hound
#

Only if you change it
It should just be your system allocator otherwise

rugged robin
#

Does this branch have the multi threading update applied?

#

Interested in trying it out with some friends if so

plush dune
#

in the dev branch, not sure how well it works in multiplayer. you have to run your own server for it

rugged robin
whole cloud
whole cloud
rugged robin
hybrid cradle
plush dune
#

the dev version is 2.19, usually you can't join regular 2.18 version because of version mismatch

hybrid cradle
#

Please use your eyes and read. Thank you 🙂

plush dune
#

You CANNOT join and play on servers running the stable version...

inland dew
#

leave this chat, please

plush dune
#

You have to join a dev server, same version as the dev client. I just now tried, it doesn't allow you to join any

inland dew
#

you just joined today and spamming nonsense

plush dune
#

I have the game open right now, in dev branch, and cannot join any 2.18 stable servers because of version mismatch

hybrid cradle
#

a) they did not ask about dev branch
b) this chat has nothing to do with Dev branch
c) this branch has the multithreading changes
d) please go buy some prescription glasses or enable a screen reader

plush dune
#

there are 4 dev servers, with 6 people playing, that I can join.

hybrid cradle
#

The amount of relevance Dev branch has here is the same amount you have here

#

Use your eyes, read the chat, realise you're wrong, leave. Please.

plain trout
rain moth
opal hound
#

me when I spread misinformation on the internet

rain moth
#

Thanks to the CPU multi-thread support, big battles will no longer make your high-end PC drop below 60FPS

#

that's a fact now I guess

plain trout
#

the magic number

plush dune
#

oh thanks guys, the dev branch was hidden under arma 3 branches by default in the server, didn't see it

hybrid cradle
#

this is either the worlds best ragebait or you genuinely need help reading

plush dune
#

I came here from the reddit post a month ago, that said the dev branch was required. ill try the performance branch now as well

hybrid cradle
#

this is hurting my brain

plush dune
void badger
inland dew
knotty wraith
#

Personally, I myself observed that you can't see it closer, but if you move further away, you can see it.

frozen gulch
#

interesting time stamp lol

vale shoal
vast siren
#

are you using ACE view distance? it's a longshot, but could be caused by the way that mod changes object loading?

ashen helm
knotty wraith
#

rhs+cup+ace

random isle
#

its probbly HC shenanigans, just like trying to ram AI soldier that is local to HC sends your heavy tank to full stop, some times to the moon

#

its like there is massive lag between the 2

inland dew
#

hc is crap. stopped using it long time ago and server fps is very high still

#

no regrets

verbal remnant
#

How do I enable multi threading

opal hound
#

If you can't figure out how to enable it, do you really want to be running a bleeding edge branch?

random isle
inland dew
#

no hc - no problems

random isle
opal hound
#

Dev branch has the multithreading tweaks yes, but it's not compatible with stable servers. Profiling is

verbal remnant
#

But does profiling have the tweaks?

vast siren
#
  1. all you need is to have the profiling build enabled. (to my understanding)
  2. first impressions are important. "I love warcrimes" gives weird vibes. at the very least leave our flag out of it brother 🍁
inland dew
#

offtopic

verbal remnant
inland dew
#

keep your nonsense spam out of here

#

now, because of some "influencer" post about "magic" multi-threading, all kind of people come to spam here

vast siren
#

one would think the discord is the place to find information about the changes to the build

#

perhaps, educate us, rather than gatekeeping?

inland dew
#

clickbate title and text and despite hiding fps, one can clearly see it's nowhere near 60 fps real time, while him talking about not dipping below 60 fps ever

vast siren
#

what are you talking about?

verbal remnant
#

Can someone tell me how to get it

#

Instead of being annoying

random isle
#

run pref branch

verbal remnant
vast siren
random isle
#

so then you have it its enable by default

verbal remnant
#

Do you know where to enable if it’s T enabled

#

Isn’t

vast siren
#

there is no option

#

the changes are part of the new update

random isle
#

start up params

#

search this channel

opal hound
#

The only params are for disabling the tweaks

hybrid cradle
#

YES, PERFORMANCE BRANCH HAS THE MULTITHREADING TWEAKS

YES, DEVELOPMENT BRANCH HAS THE MULTITHREADING TWEAKS

YES, PERFORMANCE BRANCH WORKS ON REGULAR SERVERS

NO, DEVELOPMENT BRANCH DOES NOT WORK ON REGULAR SERVERS

#

PLEASE

frozen gulch
restive turtle
#

Click bait god

sullen elk
#

I'm curious if I'm doing something wrong, cause testing the dev and profiling branches today I saw no meaningful difference in performance in YAAB compared to vanilla

worldly badge
#

"Meaningful" in this context is not meaningful. Your exact results are

inland dew
#

definition of meaningful

spiral pond
#

can someone ask Sams to make a "no AI" option for YAAB?
while it would make parts quite basic, yet would be better to see the MT improvements

spiral pond
#

alternatively a DS version (bonus: multiple slots for "shared perf testing" sessions)

#

in a2/oa, we had made a suite of different test scenarios for more diverse verification using autotest to run them in one go unattended
in a3 should be easier to do with more sqf commands. the most annoying part is the camera work tho

tribal pasture
#

Looks like all remote vehicles report 0 velocity on latest perf build

whole cloud
#

since v7, we return physx velocity for physx vehicles. That could be it? but thats not just since latest build

tribal pasture
#

Only looked at it on latest build, no idea about others

whole cloud
#

@feral harness :harold:

tribal pasture
#

helicopterrtd too

#

yeah, looks to be all physx entities

#

productVersion => ["Arma 3","Arma3",218,152520,"Stable",false,"Windows","x64"]

heavy galleon
#

SFRAME is available in perf binary, right?

whole cloud
#

SFRAME, profiling a frame.. is not available in binaries that don't have profiling

#

2.18.152550 new PROFILING branch with PERFORMANCE binaries, v17, server and client, windows 64-bit, linux server 64-bit
- Tweaked: UGV follow range is now in increments of 10s instead of 100s
- Tweaked: Follow unit menu now has a cancel option to unfollow
- Fixed: uiSleep did not serialize properly
- Fixed: Snakes would open doors when entering houses - https://feedback.bistudio.com/T59444
- Fixed: Helicopter would not respond to a change of helipad during landing
- Fixed: Some of the player-emitted sounds were not audible in multiplayer - https://feedback.bistudio.com/T178500
- Fixed: SimulWeather would not reset on mission change
- Fixed: setSimulWeatherLayers would stop working after layers were set to 0
- Fixed: Countermeasure impact sounds were multiplied in multiplayer
- Fixed: UGV would not follow player from the UAV terminal - https://feedback.bistudio.com/T126283
- Fixed: Switching between UGV and UAV would break UAV gunner view

If you don't want to use the Steam branch, the files are also available for alternative download here:
https://drive.google.com/drive/folders/15p9j7C2nHUt6NoVfChX4YFuqzFXzblJh
🙂‍↔️

heavy galleon
#

will switch to profiling bin then for the weekend

#

Fixed: Snakes would open doors when entering houses

whole cloud
#

Also a crashfix for multithreaded animations, didn't mention that cuz meh (that was all the crash reports I got over christmas)

unborn urchin
#

is the snake fix a fix for agents or something? just wondering because the rats in spearhead do it too

#

well I guess it can't be a data change seeing as its perf 🙃

woven loom
#

omg the snake one is so old 😄

worldly badge
#

Rabbits too

somber plank
#

Poor snakes are gonna get stuck outside in the cold now sadCat

unborn urchin
#

although I dont think the first attempt ever worked

inland dew
#

fix to fix the fix of the fix

silk pewter
#

I thought this was fixed in 2015 or something yeah 😄

whole cloud
#

ugh I forgot FT link for snakes one

knotty wraith
# tribal pasture Looks like all remote vehicles report 0 velocity on latest perf build
private _vel0    = velocity _veh;
        private _vel1    = _dir1 vectorMultiply (0.75*_velMax);
        private _dur    = _distanceTurn/vectorMagnitude _vel0;

12:07:27 Error in expression <5*_velMax); private _dur = _distanceTurn/vectorMagnitude _vel0; private _time0 => 12:07:27 Error position: </vectorMagnitude _vel0; private _time0 => 12:07:27 Error Zero divisor

worldly badge
#

Literally unplayable meowsweats

restive turtle
#

Dedmen fix!

analog acorn
feral harness
whole cloud
#

yep in v7

feral harness
feral harness
#

What is the classname?

analog acorn
#

What about the vanilla rabbits?

feral harness
#

pretend that they can

#

rats and snakes are small enough to believe that they enter through under the door gap

#

if the same applied to rabbits they juts appear on the other side of the door magically. Unfortunately to stop them from going into houses will requite complete separate behaviour from animals which means massive overhaul with new testing, so not happening

woven loom
#

Animal soldiers in A4 confirmed

unborn urchin
woven loom
feral harness
#

gracias

analog acorn
#

Would it be practical to have a way for animal types to be flagged as "opens doors"/"doesn't open doors" in their config, rather than having to specify every applicable class on your end? Then you wouldn't have to update your list any time a CDLC wants to add millipedes or whatever, and mods could be supported too

feral harness
#

yeah an array with base types perhaps

#

I will test rats but won't add it, instead will add config entry so modders can add it

tribal pasture
feral harness
#

yes please

unborn urchin
restive mural
#

im new to arma 3

#

i cant figure out how to switch to sights/optics mode

#

instead of zooming in

stray python
feral harness
void badger
whole cloud
#

All the people who sent me crashes already know that anyway

void badger
#

I was unlucky in that I couldn't send crashes, so hopefully that does fix my issue

feral harness
tribal pasture
feral harness
#

better wait until the prof

tribal pasture
#

👌

restive pilot
restive pilot
feral harness
#

Yes per class value is probably better

sullen elk
#

the 1 frame highs are notably higher, but again that's also just a single frame

#

turns out reading the rules helps with embeds, my bad

#

Here's the 3 runs on Profiling for completeness, as well as the fps graph from the last profiling run

sage current
#

Figured i'd post my tests here as well incase it helps

Main Branch - 2.18.152405
Performance Branch - 2.18.152550 (PhysX Multi-thread update)
Dev Branch - 2.18.152501 (PhysX Multi-thread update)

CPU: i9-14900K (Latest Bios with fixes & Auto everything)
GPU: GTX 1080Ti 11GB
RAM: 64GB DDR5 @ 6400 MHz - 2 slots

Desktop and Game 1080p 120hz on 4K 165hz (120hz limited) monitor

Options Preset - Branch: FPS

Extreme - Main Branch: 47.9
Extreme - Performance Branch: 54.1
Extreme - Dev Branch: 54

Extreme w/ YAAB Standard - Main Branch: 95.7
Extreme w/ YAAB Standard - Performance Branch: 103.4

Standard - Main Branch: 114.3
Standard - Performance Branch: 120.7

void badger
sullen elk
void badger
sullen elk
#

it's a glorious CPU, just kinda curious why the dev/profiling branches have had little impact

void badger
#

Beats the pants off my 5900x in both branches

sullen elk
#

the big difference I saw on dev/profiling was that the highest frames were noticeably higher. I think it's the scene where you're looking up at the helicopters against an empty sky

#

that jumped from the ~160s to ~200

#

but the rest of the benchmark performs similarily

heavy vortex
#

hmm. ~72fps is really slow for a 9800X3D though. Are you using really high draw distance or something?

sullen elk
#

5000/3000 view/object distance respectively

heavy vortex
#

oh yeah, screenshots

#

still seems kinda slow. The dynamic objects in YAAB are all close anyway.

sullen elk
#

I'm planning on messing around with it a bunch after errands and lunch, don't really have anything else to do today

heavy vortex
#

Well, if you're putting the time in, do some runs at the standard preset. Usually use those for comparison.

#

Curious what you're doing to neutralize the MT enhancements though.

sullen elk
#

yeah same

#

normally I run with a bunch of parameters like exthreads and HT and huge pages, but I didn't use those for the series of runs today

#

part of me is mildly curious if I'm actually GPU limited somehow

sage current
heavy vortex
#

I haven't got around to comparing the current version on any of my hardware yet. Just collecting reports.

sage current
#

hmm, ok

fickle spade
#

Hm. Strange bot's movement on Linux server version 16926528... Some bots aren't moved, some moved with a moon-walk, some moved normally.

#

After rolling back to public branch all looks well

spiral pond
#

its been a while since i last looked into this - important to understand is that only certain parts could get optimized via MT/async

  • for SP (and YAAB counts as such) the rendering (and vision calcs) MT optimizations only help so much, as there is still much else to calculate [AI, general unit+vehicle simulation, sounds, etc] (these usually amount to 50-80% of the frame time)
  • for MP as client/player, the server takes care of most, and thus the rendering MT optimizations are a lot more impactful (especially if you are not a group leader with 10+ AI) [as the rendering accounts now for a lot more % of the total frame time]
  • for DS the PX optimizations removed a big limiting factor [for vehicle intense missions]; besides that the MT for vision calcs also helps
    there might be a few more optimizations with lesser impact I forgot now
#

for further optimization one would need look for potential in low level coding (ie collision checks)

whole cloud
#

for DS the PX optimizations removed a big limiting factor;
I don't think so. In most scenarios physx is not a limit because there usually isn't so much of it (except in your tank heavy scenarios)
SP also has visibility checks multithreaded for AI

A factor on longer running servers is probably the async JIP queue. The fuller the queue the slower the server used to get, not anymore

spiral pond
#

other than that the big chunks have to be done one by one after each other (network, unit+vehicle simulation, AI, sound, scripting) as one can influence the other or within (ie one unit another unit)

heavy galleon
#

I'll do some frame captures on weekend on a larger PvP.
Maybe it will show something. Also a good chance to learn how to read them

#

FPS goes down a lot with the number of clients.
If I open it locally and I am solo in a mission, I have very nice FPS, like 80+, but with other 100 or so clients, it goes down down (even to 30s)

spiral pond
#

ofc if you have very few vehicles, PX wont matter. from our testing 15+ -active- can be relevant (before the MT work)

plush dune
#

Did some more testing using the perf branch, the YAAB results are always 1-2% difference, but the gains in actual missions are anywhere from 10-20 fps improvements

#

YAAB doesn't have enough going on in it to see the differences, I suspect the AI count isn't high like in some missions. I was using the steelhead 1944 campaign to test

quaint flame
#

The Spearhead campaign runs quite a bit smoother with it.

sullen elk
real creek
#

you should exclude the first one and average over the 3-5 next. It's not the most consistant benchmark and has a lot of variance

sullen elk
#

yeah I noticed that

inland dew
late blaze
inner elbow
#

9800x3d v2.18.152550

heavy galleon
#

Is it really time to upgrade?
I am getting like 75fps on 5600x sadge

vast siren
#

75 fps is pretty good imo

restive turtle
#

i get like 170 fps from my 7800X3D

#

:)

inland dew
whole cloud
#

2.18.152563 new PROFILING branch with PERFORMANCE binaries, v18, server and client, windows 64-bit, linux server 64-bit
- Added: Confirmation prompt for serverCommand when used without password
- Fixed: Sometimes unit follow arrows were not drawn correctly
- Fixed: Selected follow unit ranges were not highlighted in the menu
- Fixed: connectToServer did not support using domain names - https://feedback.bistudio.com/T159809

Note: Profiling branch contains experimental changes that can be unstable. Please report issues to developers, and consider switching back to stable / default branch if the issues are too severe.

If you don't want to use the Steam branch, the files are also available for alternative download here:
https://drive.google.com/drive/folders/15p9j7C2nHUt6NoVfChX4YFuqzFXzblJh

whole cloud
#

If the confirmation prompt turns out to be too annoying, please tell.
I assume this applies to only very few people, and that they can deal with the occasional confirmation. If its too much then tell me why and we'll figure something out

silk pewter
#

@fickle dawn stop with the spam already.

knotty wraith
whole cloud
#

A confirmation prompt is a prompt that shows up and which you need to confirm

knotty wraith
whole cloud
#

Its a message box, with a "Yes" and a "No" button

knotty wraith
whole cloud
#

No. As the changelog says, "when used without password"
It does not apply to the with password variant

knotty wraith
#

@whole cloud was this a temporary solution? will it ever be removed?

whole cloud
#

It will be changed once Enfusion fixes the bug in there, when that will be I don't know

knotty wraith
# whole cloud It will be changed once Enfusion fixes the bug in there, when that will be I don...

because server processor with this setting was not enough to work in tandem with the HC...
forced to connect HC from my user PC to help
But my question remains relevant: to fill the processor to 100% I need to run 3 HC on my PC, why can't I make one HC and load it to 100%?
sorry oftop (
I was forced because of 3 HC to write a script for distributing a new group to check FPS and choose who to give the new group to

FFA_HC_ARRAY = (allPlayers select { _x isKindOf "HeadlessClient_F"});
_code = {
      VAR_FPS_HC8 = diag_fps;
    publicvariableserver "VAR_FPS_HC8";  
};
call {
    if (count FFA_HC_ARRAY isEqualTo 0) exitwith 
    {
        FFA_HC = nil;
    };
    if (count FFA_HC_ARRAY isEqualTo 1) exitwith 
    {
        FFA_HC =  (FFA_HC_ARRAY select 0);
    };
    if (count FFA_HC_ARRAY > 1) exitwith 
    {
        _fps_hc= [];
        {
            VAR_FPS_HC8 = 0;
            [_code] remoteExec ["call", owner _x];
            sleep 2;
            _fps_hc pushback VAR_FPS_HC8
        } foreach FFA_HC_ARRAY;
        _max_fps = selectMax _fps_hc;
        _index = _fps_hc findIf {_max_fps isEqualTo _x};
        FFA_HC = FFA_HC_ARRAY select _index;
    };
};    
if (!isnil "FFA_HC") then { FFA_HC};
heavy galleon
#

because it doesn't work this way?

#

filling processor to 100% is not wanted, actually it's pretty unwanted

#

you running 3 HCs just added fuckton of overhead to your system, congrats on slowing it down

knotty wraith
heavy galleon
#

well, experiment or not, this is not the first time that you are "complaining" about not using 100% of the CPU
As I told you before, if you're using 100% of the CPU, the CPU is "overused" and doesn't manage to do all it needs to do. Bigger usage percentage does not necessarily means better performance. Even more at 100%, that will mean worse performance

knotty wraith
heavy galleon
#

Try to go with cpu to 100% (or 99% even) and check the FPS on your HCs, then only use one HC and check the FPS...
Don't use CPU usage as a measurment for anything but to see if you're overloading your system

knotty wraith
#

that's not the point - let's take 2 HC - processor consumption is 50% +- 10
why can't I load 1 HC with 50% CPU consumption?
Is my question clear?

heavy galleon
#

Your question is "why does loading and running two entire instances take more CPU than loading only one".
I'll let you think about it

inland dew
knotty wraith
full nova
#

Which Official server would be best to test the perf_branch?

opal hound
#

Whichever ones you usually play, the performance gains are entirely subjective and you should see how they work for your own use case
Unless you mean testing a feature in which case you'll need to be more specific

full nova
#

i usually just testing performance on Offical Warlords but lately many of the players are using glitch or exploit to put stuff under the texture prolonging the server usual playtime and i bet the server fps already tank by then

inland dew
#

offtopic...

knotty wraith
#

give him discord admin Arma 😄

#

@whole cloud
and my HC stopped working from my PC...

whole cloud
whole cloud
knotty wraith
shell lion
#

Regarding the problem Massive FPS Drop at HC, from 17.11.2024, I have now found the problem that causes it.

Since v9, where I had noticed it, (with v5 and before v5, this problem did not exist yet) until now this problem exists.

Without PERF there is no problem (stable).

I have played through and tested many situations.
Now I can say with certainty that it is due to the affinity setting or if you want to set it (as indicated in the Arma Wiki Dedicated Server). This problem is new.

I sent the rest of the message to Dedmen, because it's a whole essay.

knotty wraith
#

During all the time I used HC I understood one truth - no matter how much you achieve results in increasing the amount of online AI (500?)- there is one big point: each client still needs to work out this amount of AI and if it exceeds the capabilities of his characteristics - then naturally everyone is to blame except him the fact that the fps is low

whole cloud
knotty wraith
#

I didn't see anything significant in the update - just don't shoot me for that)

random isle
#

i think i am 2 version behind ill update my server and hc and test

livid sonnet
silk summit
neat furnace
inland dew
silk summit
neat furnace
#

Oh so amd only?

silk summit
random isle
whole cloud
#

Might be that it works when steam is not running.
But the code looked like it would fill with random garbage in that case and still break blobdoggoshruggoogly

random isle
#

that i cant test its running in docker container 😄

whole cloud
#

Gonna be fixed tomorrow anyway

tacit frost
#

Hi. Today a bug appeared, which at least I see for the first time.
I assume that the problem is in the profiling branch simply because today this version was updated. Both wheels and tracks can with some probability fall into the textures and the vehicle lies on the bottom. With some probability, after some time, it again "stands on wheels" for a few seconds and falls again. I have not yet seen any patterns when exactly this happens.
After about 30 minutes from the start, this became widespread for me.

whole cloud
#

cars with wheels sometimes jumping around is not new, but its quite rare

random isle
heavy vortex
#

The more common one I saw is disabled tracked vehicles jumping between two orientations, about 45 degrees apart.

#

Old bug though.

tacit frost
heavy vortex
#

I believe there's a thing you can do to gain screenshot-pasting permissions, but it doesn't seem to be adequately documented.

runic sigil
#

And accept rules with a reaction in #rules
Nvm, you've probably already done that

tacit frost
inland dew
inland dew
#

so sitting on the belly

#

literally

#

can't be used

tacit frost
heavy vortex
#

What's your setup? Localhost, DS + client or what?

tacit frost
heavy vortex
#

Do all vehicles do this, or just the occasional one?

inland dew
#

he said none of that is observed on stable patch

#

just on perf

#

since he reverted to stable patch and everything's just fine

tacit frost
random isle
inland dew
#

only for this specific modded vehicle? only on latest perf? only in this specific spot of this specific map?
everything fine on stable or older perf? can you reproduce this any time?
happens with other vehicles in other spots of this map or on other map as well?
how about vanilla?

storm flame
#

are you running realistic driving terrains by any chance?

random isle
inland dew
#

cup only, thus modded, ok. vanilla is fine.
even on stable?

random isle
#

i just saw that while playing and some one mention vehicles jump lol

inland dew
#

if it also happens on stable and only with cup, so modded, then it has nothing to do with perf builds changes

random isle
#

and this unit is local to hc, i dont even notice stuff like this any more 😂

lucid turret
#

HOW TO ENABLE Multithreading Support?

whole cloud
gusty viper
#

If you want more multi-threaded things in Arma 3, also choose the perf_prof_branch in Steam.

whole cloud
#

2.18.152567 new PROFILING branch with PERFORMANCE binaries, v19, server and client, windows 64-bit, linux server 64-bit
- Fixed: UGV would continue following dead units
- Fixed: Headless clients could not connect to servers (since v18)
- Fixed: WebBrowser control's A3API did not work (some typo's in the JS code)

Note: Profiling branch contains experimental changes that can be unstable. Please report issues to developers, and consider switching back to stable / default branch if the issues are too severe.

If you don't want to use the Steam branch, the files are also available for alternative download here:
https://drive.google.com/drive/folders/15p9j7C2nHUt6NoVfChX4YFuqzFXzblJh

mighty palm
#

could anyone upload the perf branch exe for ver 2.18.152405?

#

cant find it

opal hound
#

It doesn't look like that was ever released? What do you need that specific version for

glass fossil
tawdry gazelle
#

Hi, anyone tested mimalloc v2.1.7-20250103 against pre-v2.1.0 to see if they performance similarly? blobcloseenjoy

eternal kraken
mint valley
#

to test the multithread, so I use the Development version or the Performance Profiling version?

somber plank
inland dew
#

dev is not compatible for multiplayer

mint valley
#

so there is the new multithreading also in the profiling version?

#

so what is the hype about this new multithreading if its been in game for years?

somber plank
#

The latest improvements are on dev and profiling
...

somber plank
#

some idiot read 1 patch note, took it out of context and made a "news" article

#

then a few other sites do what they do best and copy paste the article

mint valley
#

so its not really big news at all? why are some people reporting major framerate increase? is it a kind of digital placebo effect?

opal hound
#

There are performance improvements, but it's not like "turned on multithreading". Dedmen made a good summary of his work in a reddit comment

inland dew
#

multi-threading was further improved, not just introduced recently

mint valley
#

will have to find this reddit thread

somber plank
mint valley
#

cheers

inland dew
plain trout
#

Still hoping the „world object“ multithreading from v6 makes it back. That was the most impactful version to version change I’ve seen/felt.

knotty wraith
heavy galleon
#

from 75~80 to 65 fps when I went from perf to prof, that is expected? monkaHmm

silk pewter
#

profiling can take perf away (pun intended)

heavy galleon
#

OC my RAM, prof did not crash in yaab, perf crashes monkaHmm

plain trout
#

There is a good chance you made your ram slower while overlocking it. More frequency can lead to less performance. But that’s heavy #hardware_vs_arma territory

heavy galleon
#

rtzW that's what I wanted to test, because when it defaulted to 2400 instead of 3333, it was clear as day something is wrong (at least in Tarkov). Thus why I wanted to test 3400, which seems to crash the game

opal hound
#

try 3200

plain trout
wise sparrow
#

Seems like newest perf/prof got a bug that causes the multiplayer slotting to not work properly, eg. can't disable AI or deselect a role once selected. Tested on DS 2.18.152567 and works normally on stable

runic sigil
#

Yeah, had something similar a couple of nights ago
I could select any role, but had to be in the role to toggle AI
Toggling AI for a role I wasn't didn't work at all
I was local hosting on latest perf, mission was a variant of DRO

#

I didn't think much of it at the time

whole cloud
#

Like you press the button, but nothing happens?

#

How do you deselect a role? Just click on yourself again?

whole cloud
#

Thanks, I'll fix it next week salute

crude sedge
plain trout
#

there were issues with certain hardware

crude sedge
#

Well crap.

plain trout
#

and as I typed, it was v6, if you go on the google drive you can still test it

crude sedge
#

Well...dang, it probably won't have a bunch of the other improvements lately. I'll just keep my hopes up

plain trout
#

you will see a higher CPU utilization that usual, if your hardware is up to it

#

(or what ever the issue is)

orchid void
#

YAAB
Pefo Branch
CPU- 5800x3d CO-30 PBO +200
GPU - 3070 1900Mhz UV
RAM 32GB DDr4 Quad channel 4 sticks tunnned to Max 3800MHz CL18
3440*1440
Standard settings
HT enabled, Memory Allocator CMA_x64, Large page support enabled
game set to run as Admin
102.1
Also tried all the other memory allocators, Mimalloc_v217 came closest with 100 fps

#

Only Second and third run avraged as first is always 2-3 fps slower

#

Even with standard settings, some sections were GPU limited !!! seen using RTSS

orchid void
real creek
heavy vortex
#

He's running 6k/5k view distances.

naive osprey
orchid void
opal hound
#

The profiling exe should be worse (if anything), it has extra profiling code for debugging

real creek
naive osprey
#

Basically only use it if you need to actually use the commands and extra info it gives, the performance exe is better for the general populace

crude sedge
#

I'll just be the one to come out and say it (please don't be mad at me), but every time I see someone ask about which .exe to use and I see the answers, it makes me 2nd-guess my own setup. In Steam I've gone to Properties -> Betas -> and have selected 'profiling - Performance Profiling Build' in the dropdown. There is also another option for 'development - Development Build'. But here now, Mysterypotatoguy says the 'profiling exe should be worse', and so should I go back to using the Development build? Or do I just need to rename an .exe somewhere?

#

I've really been holding off on asking about this because I figured maybe I was the only one being daft, but the answers here have been confusing

opal hound
#

right

#

The profiling BRANCH (also known as perf_prof or performance/profiling) has two .exes, arma3/arma3_x64.exe is a performance build with this branch enabled, arma3profiling_x64.exe is a profiling build which is the same build as performance with some extra code added for profiling functions
tl;dr don't run arma3profiling_x64.exe unless you specifically need to profile functions (probably not most of you)

plain trout
#

If you select the Performance/Profiling branch your arma_x64.exe gets replaced with the performance version. If you want to use the additional profiling features, you will have to replace the exe file or use that to start arma.

Dev branch is something completely different because it also includes changes that aren’t compatible with the current arma 3 version, unlike performance and profiling

opal hound
#

you don't need to replace the exe, there is a separate one

crude sedge
#

Okay, okay. So I leave my steam-beta-dropdown on Profiling - Performance Profiling Build, and then just make sure to continue using arma3_x64.exe for best performance. I see arma3profiling_x64.exe, and that must have been the thing you guys would mention and it would confuse me. I think! : )

naive osprey
#

TL;DR
Dev Branch -
development exe

Perf/Profiling Branch -
performance exe - (this is default and the one you want, dont do anything after selecting the branch in steam)
profiling exe - (this is for people wanted extra logging and statistics, only use this if you know what you're doing)

naive osprey
#

Thats my bad for bringing up the difference meowsweats

crude sedge
#

You guys are awesome; thank you

inland dew
#

if everbody will start to posts their full pc specs here and yaab results, then it will by like comments sections of yaab on steam
please - don't!

#

there is no need to post yaab results here
devs know the fps difference their game changes result in, because they've already tested it and shared their observations/notes here

no need to multiply that.
they know the results

crystal haven
#

I was testing the WebBrowser Control in the dev branch late last night and noticed that the RequestTexture isn't able to load images, I followed the wiki, even tried loading an image from the mission directory using <img src="test_ca.paa" height="64" width="64"> and no image displayed.

However testing in profiling branch it does work

fair ore
whole cloud
crystal haven
#

@whole cloud Thanks for the response, I didn't see the dev_rc_branch channel, but now I do and I'll keep the webbroswer stuff in there

crystal oasis
#

Where is this new 'Multithreading'? in Dev branch or performance branch?

opal hound
#

Multithreading is not new, just improved
The performance increases are on both dev and profiling branch, only profiling is compatible with stable multiplayer servers

sly epoch
#

hello all. would like to test out the performance branch on my server? how would i go about this? or is the performance profile only needed for clients?

sly epoch
#

ah ok. so its just a simple copy and replace the current arma3server_x64?

heavy galleon
#

Or use the steam beta

regal lichen
#

Whats you guys’s opinion on DXVK?
There was some chatter about it in 2020 providing better performance for arma3
I haven’t tried it yet, will try it later and share benchmarks

solar musk
#

Hello, I have an issue on the server related to placing objects using createVehicle, which is not being called on the server, and createVehicleLocal. As I understand, pre-made compositions loaded in Zeus are placed specifically via createVehicleLocal, and this causes an error: Server: Object 11:149 not found (Type_97 message), which floods the logs in a seemingly endless loop and reappears whenever a new player connects. Could this error lead to server freezing, FPS dropping to 0, or pushing all players to the red chain? For example, when I insert a large pre-made composition through Zeus, this definitely happens.

inland dew
solar musk
analog acorn
#

This channel isn't about performance in general. It's about the Performance/Profiling experimental branch of the game. Sometimes that includes discussion of performance, but really only in relation to changes being made on the perf/prof branch.
If your problem happens on perf/prof branch but not on stable branch, then it could be related to this channel. Otherwise, you might need to try #arma3_troubleshooting or making a ticket on the A3 Feedback Tracker (https://feedback.bistudio.com).

btw, I'm pretty sure composition placement does not use createVehicleLocal because that would result in the composition objects only existing on the machine that placed it. Maybe if the objects had "local only" set in their Editor attributes before saving the composition, but I don't even know if that actually applies when placing in Zeus, and most objects shouldn't have that set anyway.

whole cloud
heavy galleon
#

where is the .trace file created?

fickle geyser
#

appdata, same as logs/crash dumps

heavy galleon
#

Not there 😦

#

I am however triggering freeze dumps this time dogeKek

#

holding ctrl and clicking on copy/copy all, notinhg

#

Fuck, I am getting a freeze for like half a minute, not able to get the trace file to be created.
But do I understand it correctly that Main thread takes 8.5s and file server async 5.5?

#

and again, if I do a "total" capture, it does not trigger... PU_PepeCryHands

#

I'll wait for petdedmen to comment PU_PepeHappyWait

whole cloud
heavy galleon
#

yes

whole cloud
#

Only on logSlowFrame.
If you want it in capture slow frame its ctrl or shift click to copy all button

heavy galleon
#

I did that and did not get created

#

however it was capture of shNew, becasue it did not get triggered on total (again)

whole cloud
#

:bigshrug:

whole cloud
#

looking at Arma allocate memory is so painful.
Every frame it allocates 600kb and frees it again. For the same buffer thats used every frame meowsweats
13gb allocated and thrown away again over a minute

somber plank
#

Just download more ram smh

whole cloud
#

And the phsyx multithreading made it worse because every tiny physx job is a separate allocation
3 seconds, 17 thousand allocations

woven loom
#

enginelimitations.jpg

#

(but seriously wtf 😄 )

silk pewter
#

all fixed next perf right? right??

whole cloud
#

If we delay next perf till next week then yes 😄

fair ore
#

hell yeah!!!!!

heavy galleon
#

If it saves some valuable time shrunk
But doing v++ dogeKek

light cargo
#

hmmmmm, i guess its impossible to fix the "mem leaks"

#

memory never goes down as you play for longer and longer is the problem

indigo anvil
bold raven
#

Unsure if its been noticed by others, but when unloading bodies from vehicles using Ace the seat sometimes can't be entered afterwards. Playing with the profiling branch on dedicated server (client and server)

topaz basin
#

when is the new multi threaded coming to stable?

silk summit
topaz basin
#

yeah but whats the delay for?

#

such a huge impact to the game, id assume devs wana push a release soon as possible

#

so im confused what they are waiting for

void badger
#

They were actually waiting for your confirmation that it was good to go

#

In all honesty, many big servers (I don't recall if they're official ( are already running perf branch anyway so it doesn't really matter if it's in stable branch or not, but the changes made are still recognized as unstable due to additional crashes and other bugs, so it's... NOT STABLE

#

They've got bigger fish to fry- like telling scripts whether Someone is switching a weapon or not, I guess blobcloseenjoy

inland dew
plucky field
inland dew
whole cloud
whole cloud
whole cloud
whole cloud
gritty wasp
gritty wasp
wild crow
whole cloud
#

Crashes

silk pewter
light cargo
light cargo
# silk pewter provide repro

play on any terrain, observe ram for 1h+ after going places
dont leave, also reconnecting might not have much impact. imo it should cull/unload as you leave places alone
windows memory paging moment
oh and unrelated but acre and ts3 on top of that causes freezes as well

silk pewter
light cargo
silk pewter
#

unrelated but acre and ts3 on top of that causes freezes as well
unrelated indeed

silk pewter
light cargo
woven loom
#

But also need to load various assets

light cargo
#

maybe vram is also affected in my case as well

#

but the main concern that makes it unplayable for me is the main memory

woven loom
#

Yes but we've established that your main memory has possible hardware issues from what I remember

#

Unless you've changed things

light cargo
woven loom
#

i.e. it passes memtest?

light cargo
#

im booted to win10

#

more like, behavior in crashes and stuff like that is expected for me and other users (on other games)

woven loom
#

But you had errors in memtest

light cargo
#

it was a really long time ago anyways

silk pewter
#

and what does a fresh memtest say?

light cargo
#

sighs

#

i dont want to reboot so.

woven loom
#

Sorry my dude, it just muddies the waters if your hardware is potentially faulty

light cargo
#

it works stably so others reproducing would help a lot, i take it if others cant reproduce a symptom like this

#

even with -maxmem=2048 or 4096 it just skyrockets

#

so by this logic, vram issues may be faulty gpus in those other cases?

#

not many people have the scenario where the memory meets the requirements but have an hdd and are low on free ram due to other apps causing a ton of paging just for the game

woven loom
#

It could, but VRAM is often easier to fill so it should be more apparent in more games. Main memory address space might not get filled up and so you might not consistently trigger crashes.

But if there was an equivalent test like memtest for VRAM which showed there was a hardware problem, I would get it replaced first before worrying about software causing the crashes.

whole cloud
#

I don't really have the resources for "run the game for 1h+"
There are many reasons for usage increasing that don't need to be leaks.
For example the file cache is always kept full, even if no-one is actually reading the files in there.
Types of objects (from config CfgVehicles/CfgWeapons) always stay loaded after the first load, there is generally no need to clear them, though its possible to do it with a manual flush.

But these increases have an upper bound, after everything was loaded, nothing extra gets added.
Then you have things like scripts that could be filling some endlessly long array.

light cargo
#

i apologize for calling it a memory leak due to its apparent behavior of not unloading things

#

yeah, that upper bound limit is fairly high as far as arma 3 assets go

#

should i play normally with a profiler up to see what is hurting memory so bad?

#

thanks for your time and words, dedmen, i do genuinely appreciate it and im sorry for being a bit of an ass

whole cloud
#

You don't have access to a profiler which could tell you what is actually using memory.
Arma Script Profiler would show it, if it were script fault though

light cargo
#

oh, profiling exe doesn't have the necessary tools for this issue?

whole cloud
#

its for performance profiling, not for memory

light cargo
#

such thing is not on dev either?

#

hmmm, i'll see what i can do, something like drmemory perhaps? im not sure i know of memory profilers out there i can use to investigate this, certainly there're some free options

fair ore
#

Shouldn't you do a memtest first?

whole cloud
#

Dr. Memory will show you memory leaks left behind when the program shuts down. But as I said, most "leaks" are not actually leaks.

Like a script eternally extending some array is bad. But because all script memory is free'd before the game exits, it wouldn't show up in such a leak detector.
I think most of Arma's problems are not leaks at all, but rather "Oh we forgot that we don't need that thing anymore".
At Game exit, everything that is not truly leaked, will be cleaned up, even things that were forgotten earlier.

light cargo
#

yeah, i apologize for misperceiving it as a leak when it really isnt technically a leak

#

but you understand why i perceived it as such, right?

knotty wraith
#

I won't have time to translate enough to understand what you said here... in a nutshell - when is the next patch? 🙂 🤺

leaden relic
#

When it's ready

knotty wraith
knotty wraith
whole cloud
whole cloud
silk pewter
#

wiki says 9,999,999 entries, sometimes 10M (since A3 v1.56)

light cargo
#

huh

silk pewter
#

SQF ones that is - IDK about C++ ones

knotty wraith
# whole cloud I think 9 million entries?

I have a virtual garage script, which I gradually expand its capabilities over time - an object, damage, fuel, weapons, equipment are entered into one array
when will the array break down? considering that the amount of equipment in the garage is unlimited

whole cloud
#

Ugh.
One second, at 32fps

32 thousand allocations total.
14 thousand allocations per second, for drawing water 🙃
6k per second for physx
5k per second for drawing terrain ground

still have some ways to go.
To find leaks, the tool records all allocations that happen. Its not fun when allocations are spammed alot. Gotta have to fix that stuff..

knotty wraith
#

and the key is how can I calculate that I have exceeded the limit?

silk pewter
#

count _myArray

knotty wraith
somber plank
knotty wraith
whole cloud
knotty wraith
#

I will still figure out where the transmission of information breaks down. The main thing is that I heard that there is essentially no array limitation.
Do I understand correctly that each array takes up its own amount of memory?

inland dew
knotty wraith
#

@whole cloud
and the most important!)

  missionProfileNamespace setVariable ["TAG_MyMissionsave", myarrays];
  saveMissionProfileNamespace;
```will it be able to save such an array?)
silk pewter
whole cloud
knotty wraith
whole cloud
#

There is no answer to that

unreal sparrow
sick arrow
#

When using CWR 3 with performance branch sometimes sound procesing job takes up to 3 sec and it lags game until it is done. It should be easy to reproduce. Take M113 go to first person and drive it i have 100% repro on this. I dont know if this is mod issue or branch issue.

whole cloud
#

from profiling data? what's the actual name of the section?

sick arrow
#

I can send you exact info ib about half hour

whole cloud
#

next week is fine too

#

put it in DM and it'll be in my backlog.
Also send me link to the mod thing

sick arrow
#

It is called something like US Engine Main

sick arrow
#

sent you dm 👍

pliant spoke
#

Games still runs poorly on Profiling.

inland dew
#

ok

pliant spoke
#

Yeah, I am not a fan of seeing only 40-45fps.

smoky ridge
inland dew
smoky ridge
plain trout
inland dew
#

perf build is less about more fps.
it's rather more about more stable/smooth experience

pliant spoke
#

And yes, my game is modded.

pliant spoke
inland dew
pliant spoke
#

What?

#

No, I don't follow nanners videos.

#

I go with whatever settings the game gives me.

#

Along with Arma 3 Performance Extension.

somber plank
raven sand
#

Any issues with the performance binary crashing at 1GB of memory usage on the process?

smoky ridge
woven loom
#

But you can lower view distance too

#

The GPU is fine (although idk about 4K)

smoky ridge
woven loom
#

yeah wouldn't be surprised (that's a 1080 Ti though)

smoky ridge
#

even so, its an old card

woven loom
#

my 1660 Ti is usually running at 50% utilization at 1200p because my 5775C holds it back

#

Anyway we don't know what resolution our friend here is playing at

#

But Arma is usually CPU limited before being GPU limited

#

But i do think 41 fps is on the lower end for that spec, because my much 5775C + 1660 Ti + DDR3-2133 system can do 30-40 fps in ultra @ 1200p in YAAB
And while playing normally (multiplayer, mission editor etc) it can be 50-70 or sometimes more

vivid rune
#

Yeah but he is running a mod set and the fps number is not from YAAB. So we haven't something to compare, yet

woven loom
#

yeah true

inland dew
light cargo
#

can we have a option that culls more aggressively during game sessions for low ram users?

whole cloud
#

lower view distance, use the flush/superflush cheatcode

#

I thought about making 32bit automatically do a flush when you open pause menu.
But now that I saved 1GiB/400MiB of memory.. meh.

light cargo
#

oh well, so i need to do flushes often, thanks

#

can input cheat codes in multiplayer or...?

#

-flushonpause mayhaps?

whole cloud
#

Cheats work everywhere

light cargo
#

okay

pliant spoke
pliant spoke
pliant spoke
pliant spoke
#

It'll just run on a single core and thread.

light cargo
light cargo
light cargo
heavy vortex
#

huh, not sure how you do that,

#

I can't get it that high even unlimited.

light cargo
#

idk, its over time that it happens unfortunately, even vanilla

whole cloud
pliant spoke
#

Or any mods in general in this case.

#

As soon as I start the Prologue for example, the game crashes to desktop with no warning.

whole cloud
#

!mute 291916030257790977 2d intentional trolling

solemn tartanBOT
whole cloud
#

Mh, new user and already 3 warnings 🤔

empty plover
#

such courage (jk)

light cargo
#

yea..... infact the minimum arma 3 requirement is dual cpu

light cargo
#

(they left, probs done the same before)

whole cloud
#

I have been informed, that apparently with the Hatchet h-60 helicopter, the waypoint following is broken on prof branch? Haven't heard about that before?
Anyone have experience or more info about that?

heavy vortex
#

Something I've seen with some ground vehicles is that they can brake too fast for a waypoint and fail to reach the completion distance. Not sure if that's possible with helis though. Also not branch-specific, but might be performance dependent.

restive turtle
#

anyone know why when i download arma3server profiling version for v19 i put it in my server etc and i get permission denied when trying to start it

void badger
#

You need to unblock it or enable executable

solar root
#

Will the new milti-threading support benifit multiplayer game modes that don't use AI, such as KotH?

runic sigil
#

Most likely yes, but probably not as much as AI heavy scenarios