UNCHARTED™: Legacy of Thieves Collection

UNCHARTED™: Legacy of Thieves Collection

View Stats:
drakkar123 Oct 25, 2022 @ 3:23am
The Dev can remove the AVX2 requirement with the flip of a switch, literally
I've seen a lot of people who don't really understand what AVX actually is, how it's used or implemented. So, just to clarify, the decision to use AVX2 was a completely arbitrary one, and the developer did not slave away in some dank dark coding dungeon for years, to write AVX2 optimized code. And no, it wouldn't take months of slaving away on a fix either, to "provide support for old CPUs", as I've seen some speculate. Unless they used handwritten x86_64 assembly for the game, which is highly unlikely, then it almost certainly would have just been a compiler flag, and can literally be removed by just removing the flag for it. That's it.

As an example, to compile with AVX2 using gcc or clang, this is all that's needed:
-march= core-avx2

To remove AVX2, using the above example, you just remove the flag, and SSE 4.2 is used in its place instead, by default. That's it. There is no more to it than that. There is no 1000s of hours of development time required to implement it, remove it, or fix it.

I don't really use Microsoft's compiler, but it's done in a similar way there as well using a switch; /arch:AVX2. It can likewise be removed just as easily, by just removing the switch. Again, that's it. No magic required.

I think it's important for people to understand just how easily this issue can be revolved, because this should never have even been an issue in the first place. There's no technical reason for the game to require AVX2, especially on a 6 year old game.

There would likely be no noticeable difference in performance by removing the AVX2 requirement either, and if there were any measurable difference, at all, the difference would be very small, at best. There are only certain operations that are even able to make use of AVX extensions in the first place, and there's no difference at all to the vast majority of remaining instructions being run. The kinds of operations that benefit the most from AVX/AVX2, are instead mostly running on the GPU in games. SSE 4.2 can be used in nearly all of the remaining cases that are able to make use of AVX, and is available on ALL 64-bit CPUs from both Intel and AMD, which is why SSE is the default option used by virtually every other game, except this one.

Even if they reverted from AVX2 to AVX, it would still greatly reduce the number of CPUs impacted, while still offering any negligible benefit that might exist. Though, there's little reason to force an AVX requirement at all in the first place. The few games that have done it, it's been a mistake, as a sloppy developer oversight, and was quickly resolved. Though, that may very well be the case here. That would at least explain why there's no mention at all of AVX2 on the Steam store page, in the additional notes section of the system requirements.
< >
Showing 1-15 of 94 comments
Originally posted by drakkar123:
There would likely be no noticeable difference in performance by removing the AVX2 requirement either, and if there were any measurable difference, at all, the difference would be very small, at best.

Can you please show empirical evidence or metrics?

PS Emulators, which I wont mention by name here, get huge boosts from AVX instructions, with AVX-512 giving a 30% performance uplift in ideal situations.
Last edited by Dorris the Lunch Lady; Oct 25, 2022 @ 3:50am
drakkar123 Oct 25, 2022 @ 6:03am 
Originally posted by Dorris the Lunch Lady:
Originally posted by drakkar123:
There would likely be no noticeable difference in performance by removing the AVX2 requirement either, and if there were any measurable difference, at all, the difference would be very small, at best.

Can you please show empirical evidence or metrics?

PS Emulators, which I wont mention by name here, get huge boosts from AVX instructions, with AVX-512 giving a 30% performance uplift in ideal situations.

If you want metrics, benchmark all you can now, and if the developer releases a fix, then you can compare your results and get all the metrics you desire. The only person who can give you metrics right now, would be the developer, because they are the only one with access to the build.

I will point out though, that this game isn't a PS emulator, which is a very different kind of application. I didn't say there weren't ever any situations that benefit from AVX. If you continue reading the same paragraph you are quoting, I explained that. Software rendering on the CPU, like what might be used in an emulator, would benefit greatly from AVX, for example. As might emulation in general, depending on the hardware being emulated and the implementation. That's very different than a game like this though, it's apples and oranges.
My response was because you said there would be likely no impact, or very small at best. And i was asking how you know this.

What I believe, but again like yourself, with no actual evidence and not being a developer on the game, this game was created with more proprietary tools than say later games, so AVX2 helped a lot more. Spiderman released 2 years after Uncharted, and I feel the toolset may have become more robust, maybe even mature enough to forsee easier porting in future.

For those that do have 10yr old+ cpus, I do hope they create an alternate codepath as long as it doesnt impact those of us with other ancient CPUS (mine is 8 years old)
Xbox Killer Oct 25, 2022 @ 7:03am 
Yes You are right Your a genius buddy, please naughty dogs or iron galaxy studios help us i beg you to remove avx2 requirement or add other cpu instruction set so that we can play the game thank you i appreciate you
Last edited by Xbox Killer; Oct 25, 2022 @ 9:10am
drakkar123 Nov 13, 2022 @ 8:35pm 
2
Originally posted by Dorris the Lunch Lady:
My response was because you said there would be likely no impact, or very small at best. And i was asking how you know this.

What I believe, but again like yourself, with no actual evidence and not being a developer on the game, this game was created with more proprietary tools than say later games, so AVX2 helped a lot more. Spiderman released 2 years after Uncharted, and I feel the toolset may have become more robust, maybe even mature enough to forsee easier porting in future.

For those that do have 10yr old+ cpus, I do hope they create an alternate codepath as long as it doesnt impact those of us with other ancient CPUS (mine is 8 years old)

Whether or not the "tools" are proprietary, has nothing at all to do with AVX2. Every commercial game is proprietary, and that has to do with licensing status. AVX2 are extended CPU instructions that are used primarily for vector operations, floating point operations, and certain kinds of string operations. Your GPU is also very good at vector and floating point operations, by the way. Much much better at it, in fact. But I digress. The bottom line is that only specific operations benefit from AVX/AVX2 and the licensing status has no bearing on it.

And yes, I said "likely" have no impact or very small at best, which should make it clear that I am stating an opinion, and I already gave the basis for that opinion. However, I can also tell you that I've read both Intel's and AMD's architecture programmers reference, covering SIMD instructions, and have used AVX in programming. I understand what AVX is and what kinds of operations it works on, and while I am not claiming to be any kind of AVX expert, I do certainly know more than the average Joe on it, and I'm reasonably certain I probably know more than you do on the subject. However, you should treat it the same as you would with any information you find on the internet. Take it with a grain of salt and verify it for yourself.

If you want evidence though, you already have all the evidence you need. If you have the game, then you already have all of the binaries, with all of the instructions used by the game. Do your own binary analysis. There's nothing stopping you from looking for yourself and seeing which AVX instructions are used, how they're used, or how often. Both Intel and AMD make their architecture documentation freely available, and even if you aren't a programmer, you could still probably learn something from it. Though, I'd probably go with AMD's in that case, since it's slightly friendlier and written more like a book than Intel's, which is written more like a technical reference, because that's what it is. Though, neither are light reading or for the faint of heart.

But, since you asked how I know, if you don't want to bother looking for yourself, then I can save you the trouble and tell you that the only use of AVX that I was able to see, is to copy fp32 data from GPRs to SIMD registers, and back again, which could also be done with SSE. The calculations done on the data are already with SSE instructions. I'm guessing this means very little to you, or to most people, which is one reason why I don't see much purpose going into excruciating explicit detail about it. It will mean something to someone, but those people can just as easily look for themselves if they wanted to know.

You'll be able to test the game without AVX2 for yourself and compare the results soon enough though. They've already stated the next patch for the game will address the issue. So, as I already suggested, if you want to gather comparison data, now is the time to start gathering it. Then you can compare to the post-patch. But my best modestly educated guess is, that you'll see little, to no difference, as I've already stated.

The primary reason I posted about this issue in the first place, was that I have seen a lot of bullying of people posting, who are affected by this issue, by other people who don't even understand what AVX2 is, but are selfishly scared to death that someone else being able to play the game will mean that they might lose 2 fps, when the truth is, they wouldn't even notice. I do understand the basis for the concern, no one wants to lose performance. But the loss here is imaginary, and I've seen much worse comments, and all manner of ridiculous claims, about how it will take months valuable developer time to support old CPUs, to blaming someone with an older CPU, for holding back all of PC gaming, etc. Which is of course ridiculous BS. It still wouldn't justify the bullying, even if it were true though. Anyway, it's not like I get some kind of bonus check in the mail if someone believes me or not. If you don't want to believe me, then don't. I was primarily only hoping to curtail some of the bullying of people, who are posting about a legitimate issue, that the developer can easily remedy (and have already announced plans to do so).
Komarimaru Nov 13, 2022 @ 9:31pm 
That's a whole lot of text to be wrong and factually incorrect.

And it's not bullying to ask people to update their decade old hardware. That's common sense, been that way since the x86 era.
Rod Nov 13, 2022 @ 9:33pm 
Copy paste from his last thread because it died he spammed the same crap again.
Rod Nov 13, 2022 @ 9:38pm 
Note to moderators hes copy pasted the thread created by Xbox Killer the AVX2 spammer. The thread is titled Dear developers please remove AVX2 requirement i request you thank you. OP simply copied the thread...
Rage Nov 13, 2022 @ 9:45pm 
Originally posted by drakkar123:
Originally posted by Dorris the Lunch Lady:
My response was because you said there would be likely no impact, or very small at best. And i was asking how you know this.

What I believe, but again like yourself, with no actual evidence and not being a developer on the game, this game was created with more proprietary tools than say later games, so AVX2 helped a lot more. Spiderman released 2 years after Uncharted, and I feel the toolset may have become more robust, maybe even mature enough to forsee easier porting in future.

For those that do have 10yr old+ cpus, I do hope they create an alternate codepath as long as it doesnt impact those of us with other ancient CPUS (mine is 8 years old)

Whether or not the "tools" are proprietary, has nothing at all to do with AVX2. Every commercial game is proprietary, and that has to do with licensing status. AVX2 are extended CPU instructions that are used primarily for vector operations, floating point operations, and certain kinds of string operations. Your GPU is also very good at vector and floating point operations, by the way. Much much better at it, in fact. But I digress. The bottom line is that only specific operations benefit from AVX/AVX2 and the licensing status has no bearing on it.

And yes, I said "likely" have no impact or very small at best, which should make it clear that I am stating an opinion, and I already gave the basis for that opinion. However, I can also tell you that I've read both Intel's and AMD's architecture programmers reference, covering SIMD instructions, and have used AVX in programming. I understand what AVX is and what kinds of operations it works on, and while I am not claiming to be any kind of AVX expert, I do certainly know more than the average Joe on it, and I'm reasonably certain I probably know more than you do on the subject. However, you should treat it the same as you would with any information you find on the internet. Take it with a grain of salt and verify it for yourself.

If you want evidence though, you already have all the evidence you need. If you have the game, then you already have all of the binaries, with all of the instructions used by the game. Do your own binary analysis. There's nothing stopping you from looking for yourself and seeing which AVX instructions are used, how they're used, or how often. Both Intel and AMD make their architecture documentation freely available, and even if you aren't a programmer, you could still probably learn something from it. Though, I'd probably go with AMD's in that case, since it's slightly friendlier and written more like a book than Intel's, which is written more like a technical reference, because that's what it is. Though, neither are light reading or for the faint of heart.

But, since you asked how I know, if you don't want to bother looking for yourself, then I can save you the trouble and tell you that the only use of AVX that I was able to see, is to copy fp32 data from GPRs to SIMD registers, and back again, which could also be done with SSE. The calculations done on the data are already with SSE instructions. I'm guessing this means very little to you, or to most people, which is one reason why I don't see much purpose going into excruciating explicit detail about it. It will mean something to someone, but those people can just as easily look for themselves if they wanted to know.

You'll be able to test the game without AVX2 for yourself and compare the results soon enough though. They've already stated the next patch for the game will address the issue. So, as I already suggested, if you want to gather comparison data, now is the time to start gathering it. Then you can compare to the post-patch. But my best modestly educated guess is, that you'll see little, to no difference, as I've already stated.

The primary reason I posted about this issue in the first place, was that I have seen a lot of bullying of people posting, who are affected by this issue, by other people who don't even understand what AVX2 is, but are selfishly scared to death that someone else being able to play the game will mean that they might lose 2 fps, when the truth is, they wouldn't even notice. I do understand the basis for the concern, no one wants to lose performance. But the loss here is imaginary, and I've seen much worse comments, and all manner of ridiculous claims, about how it will take months valuable developer time to support old CPUs, to blaming someone with an older CPU, for holding back all of PC gaming, etc. Which is of course ridiculous BS. It still wouldn't justify the bullying, even if it were true though. Anyway, it's not like I get some kind of bonus check in the mail if someone believes me or not. If you don't want to believe me, then don't. I was primarily only hoping to curtail some of the bullying of people, who are posting about a legitimate issue, that the developer can easily remedy (and have already announced plans to do so).
Absolutely based and correct, if AVX2 mattered for game performance it would be in a lot more games than just a barely interesting port of some PS4 games.
quiteman.exe Nov 13, 2022 @ 9:55pm 
Originally posted by Rodders:
Copy paste from his last thread because it died he spammed the same crap again.
i think cannot not post for one week when ever post you are against everything no exclusive fullscreen support no chromatic toggle have non avx2 exe and for for the record you dont know much about hardware from what read just angry twitter guys against everything thinking you are cool
Komarimaru Nov 13, 2022 @ 10:00pm 
Originally posted by quiteman.exe:
Originally posted by Rodders:
Copy paste from his last thread because it died he spammed the same crap again.
i think cannot not post for one week when ever post you are against everything no exclusive fullscreen support no chromatic toggle have non avx2 exe and for for the record you dont know much about hardware from what read just angry twitter guys against everything thinking you are cool
Why are you bringing up Fullscreen again when it never existed for DX12? You're saying someone doesn't know about hardware, then spout that on the forums again.

And the person claiming AVX2 is minimal impact in their massive walls of text has no proof. Their retort is test now, and test after removal. We already know what happens due to HZD removing it. Game gets ruined to appease the 1%. Why Death Stranding said no, game was designed to use it, upgrade.
quiteman.exe Nov 13, 2022 @ 10:09pm 
Originally posted by Komarimaru:
Originally posted by quiteman.exe:
i think cannot not post for one week when ever post you are against everything no exclusive fullscreen support no chromatic toggle have non avx2 exe and for for the record you dont know much about hardware from what read just angry twitter guys against everything thinking you are cool
Why are you bringing up Fullscreen again when it never existed for DX12? You're saying someone doesn't know about hardware, then spout that on the forums again.

And the person claiming AVX2 is minimal impact in their massive walls of text has no proof. Their retort is test now, and test after removal. We already know what happens due to HZD removing it. Game gets ruined to appease the 1%. Why Death Stranding said no, game was designed to use it, upgrade.
right now i am playing mw2 ok it has exclusive full screen and runs on dx 12
Last edited by quiteman.exe; Nov 13, 2022 @ 10:09pm
Komarimaru Nov 13, 2022 @ 10:16pm 
Originally posted by quiteman.exe:
Originally posted by Komarimaru:
Why are you bringing up Fullscreen again when it never existed for DX12? You're saying someone doesn't know about hardware, then spout that on the forums again.

And the person claiming AVX2 is minimal impact in their massive walls of text has no proof. Their retort is test now, and test after removal. We already know what happens due to HZD removing it. Game gets ruined to appease the 1%. Why Death Stranding said no, game was designed to use it, upgrade.
right now i am playing mw2 ok it has exclusive full screen and runs on dx 12
No you're not. DX12 does not support exclusive fullscreen, it supports flip model and developers just call it fullscreen to not confuse the ignorant, like you.

And from the looks of it, you are barely playing MW2 lol
drakkar123 Nov 13, 2022 @ 10:20pm 
Originally posted by Rodders:
Copy paste from his last thread because it died he spammed the same crap again.

I don't have a "last thread". This is the one and only thread I've made here. I don't control what other users do.
drakkar123 Nov 13, 2022 @ 10:23pm 
Originally posted by Komarimaru:
Originally posted by quiteman.exe:
i think cannot not post for one week when ever post you are against everything no exclusive fullscreen support no chromatic toggle have non avx2 exe and for for the record you dont know much about hardware from what read just angry twitter guys against everything thinking you are cool
Why are you bringing up Fullscreen again when it never existed for DX12? You're saying someone doesn't know about hardware, then spout that on the forums again.

And the person claiming AVX2 is minimal impact in their massive walls of text has no proof. Their retort is test now, and test after removal. We already know what happens due to HZD removing it. Game gets ruined to appease the 1%. Why Death Stranding said no, game was designed to use it, upgrade.

You already have all the proof you need and you don't understand it, so why are you asking for more? You should spend more time reading walls of text, you might learn something from it.
< >
Showing 1-15 of 94 comments
Per page: 1530 50