You are not logged in.

#1 2024-09-17 18:56:27

tdtooke
Member
Registered: 2023-04-11
Posts: 245

[ANSWERED] Question about split lock mitigation

After a recent update I noticed SF6 was running at about half speed while playing against a CPU controlled character.  After much googling I discovered that split lock mitigation was the culprit.  I have multiple options for disabling it during play so that's not the problem.  After reading about what a split lock even is I have a question.  Looks like a split lock happens when a thread has misaligned memory access.  That thread sleeps for 10 milliseconds and gets synced with other split-locked threads slowing everything down.  I think I more or less kinda get that.  The thing is, if you're playing live against another human this isn't a problem.  Why?

Last edited by tdtooke (2024-09-17 22:47:11)

Offline

#2 2024-09-17 21:35:03

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,146

Re: [ANSWERED] Question about split lock mitigation

Likely network roundtrips/increased latency giving just enough leeway for the locks to not hit each other... but FWIW I can't say I've noticed any of the sort, but my last update is a few days old.

Offline

#3 2024-09-17 22:46:44

tdtooke
Member
Registered: 2023-04-11
Posts: 245

Re: [ANSWERED] Question about split lock mitigation

That's logical.  I don't know if it's from a system update or a steam update.  I hadn't played it in a while and just started back.

Offline

#4 2024-09-18 12:35:44

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,146

Re: [ANSWERED] Question about split lock mitigation

split lock issues should be kernel space in relation to games actively using split locks, but FWIW I can't recall SF6 ever being problematic. If you get delayed due to split locks you should see a message for those in dmesg, do you? Which kernel are you using?

Offline

#5 2024-09-18 12:57:19

cryptearth
Member
Registered: 2024-02-03
Posts: 2,104

Re: [ANSWERED] Question about split lock mitigation

had to look up what's meant by SF6 - as google just gave me sulfur-hexafluoride as a fire suppresion gas in electrical stuff

and as the stuff Adam Savage inhaled as "anti-Helium": as Helium is about 1/6 as dense as air and causes a higher pitched voice - SF6 is about 6x as dense as air and causes a lower pitched voice - or as he said it: "because it's science"

Offline

#6 2024-09-18 15:42:49

tdtooke
Member
Registered: 2023-04-11
Posts: 245

Re: [ANSWERED] Question about split lock mitigation

@V1del: It never did have problems in the past.  I'll have to get back with you when I get home for the kernel.  Unless it updated within the last few days it'll be the current one.  Based on what I read at protondb I'm going to guess this happened about 2 months ago.  Hard to tell since everybody keeps saying 'gamemoderun %command' and if you use the example ini from github for gamemode it'll disable split lock mitigation anyway so you'd never know you had that issue. 

@cryptearth: I'm going to have to try that just to sing bass.

Edit:

My kernel is 6.10.10 and SF6 is definitely split-locking

[ 1269.495944] x86/split lock detection: #AC: StreetFighter6./22762 took a split_lock trap at address: 0x157f334aa
[ 1269.558528] umip_printk: 25 callbacks suppressed
[ 1269.558531] umip: StreetFighter6.[22762] ip:166cdbd30 sp:417190: SGDT instruction cannot be used by applications.
[ 1269.558533] umip: StreetFighter6.[22762] ip:166cdbd30 sp:417190: For now, expensive software emulation returns the result.
[ 1269.628068] umip: StreetFighter6.[22762] ip:1640ecadc sp:41f928: SGDT instruction cannot be used by applications.
[ 1269.628073] umip: StreetFighter6.[22762] ip:1640ecadc sp:41f928: For now, expensive software emulation returns the result.
[ 1270.341963] umip: StreetFighter6.[22762] ip:15a024b2c sp:410880: SGDT instruction cannot be used by applications.
[ 1272.982604] x86/split lock detection: #AC: StreetFighter6./22806 took a split_lock trap at address: 0x162acc4f9
[ 1273.146460] x86/split lock detection: #AC: StreetFighter6./22910 took a split_lock trap at address: 0x15a953dfe
[ 1273.278695] x86/split lock detection: #AC: StreetFighter6./22892 took a split_lock trap at address: 0x158a4f138
[ 1273.502597] x86/split lock detection: #AC: StreetFighter6./22900 took a split_lock trap at address: 0x162acc4f9
[ 1273.541881] x86/split lock detection: #AC: StreetFighter6./22899 took a split_lock trap at address: 0x162acc4f9
[ 1273.588189] x86/split lock detection: #AC: StreetFighter6./22895 took a split_lock trap at address: 0x15995f51b
[ 1273.609065] x86/split lock detection: #AC: StreetFighter6./22894 took a split_lock trap at address: 0x16649c91d
[ 1273.630557] x86/split lock detection: #AC: StreetFighter6./22896 took a split_lock trap at address: 0x162acc4f9
[ 1273.663038] x86/split lock detection: #AC: StreetFighter6./22893 took a split_lock trap at address: 0x15995f51b
[ 1276.351784] split_lock_warn: 2 callbacks suppressed
[ 1276.351787] x86/split lock detection: #AC: StreetFighter6./22891 took a split_lock trap at address: 0x15ea6d773
[ 1285.463221] x86/split lock detection: #AC: StreetFighter6./22912 took a split_lock trap at address: 0x15db26f7f
[ 1287.068898] x86/split lock detection: #AC: StreetFighter6./22901 took a split_lock trap at address: 0x159e355b3
[ 1288.242567] x86/split lock detection: #AC: StreetFighter6./22911 took a split_lock trap at address: 0x155d54d8b
[ 1298.766949] x86/split lock detection: #AC: StreetFighter6./22886 took a split_lock trap at address: 0x15d78b585

Last edited by tdtooke (2024-09-19 02:37:06)

Offline

Board footer

Powered by FluxBB