DX12 Support in PCSX2
#71
(12-30-2015, 10:38 AM)Depressed Osaka Wrote: you have already proof about its advantages in Dolphin

I don't see where the comparison between pcsx2 & Dolphin can be relevant ?
Why not comparing PS2 & GC's Hardware, just to make sure we're in a full nonsense ?
CPU : AMD Ryzen 7 3800X
Mobo : Asus PRIME B450-PLUS
GPU : NVIDIA GeForce RTX 3070
RAM : 16 Go
Reply

Sponsored links

#72
If a CPU heavy emulator gets improvements, why not a CPU heavier emulator?

Right now the only subject for comparision we have is Dolphin, so it is the only example we can use. Where's the nonsense?
Reply
#73
(12-30-2015, 11:47 AM)Depressed Osaka Wrote: If a CPU heavy emulator gets improvements, why not a CPU heavier emulator?

Right now the only subject for comparision we have is Dolphin, so it is the only example we can use. Where's the nonsense?

1st, Doplhin isn't CPU heavy, since it makes a better use of GPU than pcsx2 (which isn't very surprising)
2nd, the comparison is irrelevant due to the huge differences between original hardwares, and their similarities with actual PC's hardware. As you already know, PS2's architecture is alien compared to PCs' architecture->cpu heavy emulation, while GC's hardware has some similarities->resources requirements handled more efficiently by both CPU & GPU

And Dx12/Vulkan won't change any of those statements. (Even if i'd love to see pcsx2 benefit from it, definitely...)
CPU : AMD Ryzen 7 3800X
Mobo : Asus PRIME B450-PLUS
GPU : NVIDIA GeForce RTX 3070
RAM : 16 Go
Reply
#74
(12-30-2015, 02:22 AM)frantisekz Wrote: Broken on Intel (both OpenGL SW and HW).
I'm not surprised. Someone need to contact Mesa to ask them to only issue a warning when using reserved bit in the context flags. I guess Mesa trigger an error because an unexpected flags is set.

(12-30-2015, 10:38 AM)Depressed Osaka Wrote: I was praising you for not closing yourself to AMD's fault yadda yadda BS. I guess i was wrong.
Believe it or not, it is a fact. And openGL speed is the worst.

(12-30-2015, 10:38 AM)Depressed Osaka Wrote: Well, leaving hardware vendors wars aside. You got me totally wrong. I'm not complaining about Saint Seiya running slow as if it were API's or PCSX2's fault, i was using it merely as a comparative example since it's pretty surprising to have a game such as LoI running full speed and an arena fighter like SSH chugging like crazy.
Yes but surprising or not, it is surely not related to the high number draw call (albeit it could be it). All snow engine games are slower than SW renderer due to slow GPU transfer/synchronization. Tri ace games (such as Valkyrie Profile 2) got a speed boost of 6x (yes 500% !!!) when you disable some effects, again due to poor texture management. I can give you a long list of game that suffer of various issue but draw call limitation.

(12-30-2015, 10:38 AM)Depressed Osaka Wrote: Anyways, you seem to be pretty vehement about not implementing DX12 to an emulator that is so heavily CPU based, when DX12 actually benefits the CPU side. You're making no sense for me and again, you have already proof about its advantages in Dolphin (Ishiiruka has absorbed the DX12 branch recently)
Dolphin isn't as the same stage that us. Their HW renderer is more accurate than us. It makes sense for them to optimize the speed now. On our side, the facts are
* EE is slow (so you need speed hack and mtvu) => greatly reduce the number of draw call to draw.
* Most of GSdx CPU time is spend in the frontend emulation.
* Threaded optimization in driver allow to have a dedicated core for the driver. Yes a full core.
* In 1 year, DX12 will be replaced by Vulkan. Dolphin will be the first to trash everything.
* GS emulation isn't accurate, more renderer, will just postpone the required fixes for issues such as mipmapping/lighting effect/shadows effect/depth effect/...

We have limited resources, so spending time on a 64 bits port or fixing GS rendering issue is a better idea than to play with a new toy. And trust me they are lots of GS effects that can be fixed with current API.
Reply
#75
PCSX2 will abandon dx 9, DX10, retaining only dx 11, OpenGL ?
DX9 obsolete
Then, think of the DX12, Vulkan
Reply
#76
Quote:* In 1 year, DX12 will be replaced by Vulkan. Dolphin will be the first to trash everything.

Sorry, i'll see if i can answer the rest later, but about this you see... dolphin hasn't oficially adopted anything so there's nothing to trash, the Dolphin team is waiting for Vulkan to take over and has already refused to implement DX12.

However, the experimental DX12 branch and the Ishiiruka branch that has recently adopted it are proof of how DX12 can benefit emulation.
Reply
#77
DX9 is maybe obsolete but it is still used. So far it doesn't cost too much (because it is very close of the DX10 renderer). DX11 doesn't really exists, it is DX10 actually.

And I hope we will only do a vulkan port instead of DX12/Metal/Vulkan (+ legacy) for marketing reason. Low level API means that API doesn't impact the perf so I don't see why we need one API by OS (may I remind that below the API there are the same GPU)
Reply
#78
(12-30-2015, 01:31 PM)Depressed Osaka Wrote: Sorry, i'll see if i can answer the rest later, but about this you see... dolphin hasn't oficially adopted anything so there's nothing to trash, the Dolphin team is waiting for Vulkan to take over and has already refused to implement DX12.

However, the experimental DX12 branch and the Ishiiruka branch that has recently adopted it are proof of how DX12 can benefit emulation.

(don't follow D here), so it is only a proof of concept that will be trashed soon. So Dolphin said that they won't use DX12, so why people keep asking when PCSX2 will make a DX12 port ? Or was it only to extrapolate (debate) on the speed gain based on nothing, I best it could be a hint that potentially it could improve emulation nothings more.
Reply
#79
(12-30-2015, 02:22 AM)frantisekz Wrote: Broken on Intel (both OpenGL SW and HW).

The issue is inside the Xserver Sad The function __glXDisp_CreateContextAttribsARB checks the flag bit validity. Each times a new extension uses a new bit, the code must be updated. So I can't use the extension on linux until someone fix the Xserver (I didn't found anything for Mesa but potentially they have a similar check too)

Code:
#define ALL_VALID_FLAGS \
   (GLX_CONTEXT_DEBUG_BIT_ARB | GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB \
    | GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB)

Code:
   if ((flags & ~ALL_VALID_FLAGS) != 0)
       return BadValue;
Reply
#80
(12-30-2015, 01:41 PM)gregory Wrote: so why people keep asking when PCSX2 will make a DX12 port ? Or was it only to extrapolate (debate) on the speed gain based on nothing

People ask for a DX12 backend for PCSX2 because we have proof that it actually works. Based on nothing? You're being dismissive here, taking in account that we actually have something here, and we won't see its effects over PCSX2 performance if there isn't a chance to try, don't you think? So i would say that actually you are the one who's rejecting the idea of implementing DX12 based on... nothing, because we have more proof that it would work than the opposite.

Also, nothing on Ishiiruka is just proof of concept and more than a few things has been already implemented on the main branch.
Reply




Users browsing this thread: 1 Guest(s)