CPU Performance Patch (Up to 30% faster physics, up to 60% more FPS)

Other CPU Performance Patch (Up to 30% faster physics, up to 60% more FPS)

alright folks, tell me if you experience less stutters now and how much FPS you lose compared to v12. It's a beta version because sometimes I see bugs in VR and I'm not sure if they were in vanilla VaM
The beta seems to crash every time with VaM produce 69:

Before it gets to the song selection screen, it will crash with an error of
Screenshot 2024-02-24 140036.png

This occurs in both VR and desktop mode.

I reverted back to v12 and there are no crashes.
As a side note, this is on a 13900K + 4090 + 64 GB ram machine.
 
alright folks, tell me if you experience less stutters now and how much FPS you lose compared to v12. It's a beta version because sometimes I see bugs in VR and I'm not sure if they were in vanilla VaM
For the sake of additional info when testing, could you mention what those bugs were? Plus, maybe I or someone else can remember seeing those bugs before the patch. Also, thanks for the update!
 
AMD Ryzen 5600x with 3060 ti.
Getting no difference in performance. I assume this means my GPU is bottle-necking?

computeColliders=6
skinmeshPart=6
skinmeshPartMaxPerChar=6
applyMorphs=6
applyMorphMaxPerChar=6
affinity=1,3,5,7,9,11
 
The beta seems to crash every time with VaM produce 69:

Before it gets to the song selection screen, it will crash with an error of
View attachment 338874
This occurs in both VR and desktop mode.

I reverted back to v12 and there are no crashes.
As a side note, this is on a 13900K + 4090 + 64 GB ram machine.
I have the exact same build as you, so I tried the same thing and it's loading fine for me. I played one of the songs to get past the song selection screen, and no problems occurred. Could it be some tweak in your boot.config file? I got along really well with kretos' additional recommended tweaks on patch 12, but for testing patch 13b, I'm sticking only with:

wait-for-native-debugger=0
gfx-enable-gfx-jobs=1
gfx-enable-native-gfx-jobs=1
 
Hmm my boot config is the exact same as yours; the only thing I can think of is that I changed the beta's SkinMeshPartDLL.ini from all 6 threads to all 8 threads.

I'll investigate it a bit more and see what could be the issue.

Edit: The beta's still crashing for me, and I haven't touched the config file.
I noticed that during the loading screen after language selection (before song selection), RAM usage goes up to 99% (~50GBs usage) and it crashes. With v12 memory usage is around 50-60% (~25 GBs). My virtual memory is set between 20-65 GBs, so I'm not quite sure why it would crash even if I run out of ram.
 
Last edited:
Hmm my boot config is the exact same as yours; the only thing I can think of is that I changed the beta's SkinMeshPartDLL.ini from all 6 threads to all 8 threads.

I'll investigate it a bit more and see what could be the issue.

Edit: The beta's still crashing for me, and I haven't touched the config file.
I noticed that during the loading screen after language selection (before song selection), RAM usage goes up to 99% (~50GBs usage) and it crashes. With v12 memory usage is around 50-60% (~25 GBs). My virtual memory is set between 20-65 GBs, so I'm not quite sure why it would crash even if I run out of ram.
Some additional info on how my system is running, to help compare:

- On latest Nvidia driver (551.61)

- Virtual memory on automatic

- Downloaded latest dependencies for VAM Produce 69 before loading it

- 201 gigs of free storage space on C:

- Intel XMP enabled in BIOS, RAM at 3600MHz (it's rated for that, but runs at 2133MHz without XMP)

- No fancy overclocks on 13900K or RTX 4090

- Process Lasso active with "Induce Performance Mode" enabled for VaM.exe process (but none of the more advanced affinity tweaks, and hyperthreading is on for now)

- Using SkinMeshPartDLL.ini exactly as provided, no tweaks made to it at present

(I haven't shared any info on patch 13b yet to avoid placebo-prone first impressions, but no issues so far)
 
Thanks for providing the info. They don't look too different from mine, though I'm using DDR5 ram. My system is very stable and I also don't run any over clocks. From VaM Produce I've noticed that v13 beta is taking up way more ram than v12 (I've repeated the test several times and that's always been the case), though I'm not sure if it's something particular to my system.
 
It works for me, no stutter happened in baseline3, one or two times in patch12
fastest cores: 5, 3
p13 master.png

INI:
[threads]
computeColliders=6
skinmeshPart=6
applyMorphs=6
skinmeshPartMaxPerChar=6
applyMorphMaxPerChar=6
affinity=1,2,3,4,5,6
#engineAffinity=3,5

[threadsVR]
computeColliders=6
skinmeshPart=6
applyMorphs=6
skinmeshPartMaxPerChar=6
applyMorphMaxPerChar=6
affinity=1,2,3,4,5,6
#engineAffinity=3,5

[profiler]
enabled=1
P13.png

patch12
Benchmark-20240213-081302.png
 
Last edited:
It works for me, no stutter happened in baseline3, one or two times in patch12
fastest cores: 5, 3
View attachment 338959
INI:
[threads]
computeColliders=6
skinmeshPart=6
applyMorphs=6
skinmeshPartMaxPerChar=6
applyMorphMaxPerChar=6
affinity=1,2,3,4,5,6
engineAffinity=3,5

[threadsVR]
computeColliders=6
skinmeshPart=6
applyMorphs=6
skinmeshPartMaxPerChar=6
applyMorphMaxPerChar=6
affinity=1,2,3,4,5,6
engineAffinity=3,5

[profiler]
enabled=1
View attachment 338960
patch12
View attachment 338961
你把超线程关了吗?
 
You're definitely using up less ram in VaM Produce than I am.
Here's what mine looks like with v13 beta:
v13Beta.jpg


And here's what it looks like with v12:

v12.jpg


I'd run the test from a clean restart, but currently I'm doing some work and can't turn off my PC.
 
Beta patch works as u have described. I have way less (or no) stutter in my scene. Its very noticable change in VR.

7800x3d
4090
64 GB Ram

computeColliders=8
skinmeshPart=8
skinmeshPartMaxPerChar=8
applyMorphs=8
applyMorphMaxPerChar=8
affinity=1,3,5,7,9,11
 
I'm in a weird spot for the new engineAffinity feature.

What should I do as a Ryzen user (7900X3D), if my two fastest Cores are actually 1 in the X3D CCD, and 1 in the non-X3D CCD; numbered 04, and 09 respectively. If I'm not mistaken (do correct me if I'm wrong) I want to use the X3D cores exclusively (for the X3D benefits of course), which means Cores listed as 01 to 06 in Ryzen Master (CCD0). But 07 to 012 are non-X3D (CCD1).

I guess that my question should be this: Does the unity engine benefits from the X3D more, or less than the Patch's threads?
 
I'm in a weird spot for the new engineAffinity feature.

What should I do as a Ryzen user (7900X3D), if my two fastest Cores are actually 1 in the X3D CCD, and 1 in the non-X3D CCD; numbered 04, and 09 respectively. If I'm not mistaken (do correct me if I'm wrong) I want to use the X3D cores exclusively (for the X3D benefits of course), which means Cores listed as 01 to 06 in Ryzen Master (CCD0). But 07 to 012 are non-X3D (CCD1).

I guess that my question should be this: Does the unity engine benefits from the X3D more, or less than the Patch's threads?
1) only put a core in engineAffinity that is also in your affinity
2) you can also just put 1 core in engineAffinity
3) reduce all the other counts by the amount of cores that are in engineAffinity
4) ALWAYS prefer the X3D CCD

e.g. for a 7900X3D, if the first CCD is your X3D CCD and core04 is the fastest, it would look like this:

[threads]
affinity=1,3,5,7,9,11
# 7 is the fourth physical core in the first CCD
engineAffinity=7
# you now have 5 cores left for everything else
computeColliders=5
skinmeshPart=5
skinmeshPartMaxPerChar=5
applyMorphs=5
applyMorphMaxPerChar=5

[threadsVR]
# same values for VR

and then use processlasso to put all other processes except vam into your second CCD, core12-23 since processLasso counts from 0 to 23

@turtlebackgoofy
I've noticed in plotThreadProfile.py that file "ThreadProfile.csv" is read. What is this file?
read the resource description, its for users who want to know what is bottlenecking their vam using
[profiler]
enabled=1

after enabling the profiler, it will write the timings into the ThreadProfile.csv for usage in the plotThreadProfile.py
 
@turtlebackgoofy
When you get a chance, can you give setting examples for a Ryzen 9 7950x (Not 3D) for desktop and VR.
With this last patch, with essentially the default settings and following the visual guide, on many scenes I am seeing an increase in the 20-40% range. But, maybe it can be even better.

Thanks for you help and amazing patch!
 
in new ini there is line:
engineAffinity=1,3

but its not in your overview for 79503D amd cpu. How should it be set up?
 
in new ini there is line:
engineAffinity=1,3

but its not in your overview for 79503D amd cpu. How should it be set up?
Cores listed there will not be used by the patch's threads, so that the unity engine can use those exclusively. You want to put your two fastest cores in there, AMD users can use Ryzen Master to find them

3) reduce all the other counts by the amount of cores that are in engineAffinity
4) ALWAYS prefer the X3D CCD
 
Back
Top Bottom