PCSX2 Linux Development
#1
Hey all, I am a newcomer to the community and I am interested in contributing to development of the Linux version of PCSX2. If there are any Linux developers reading this, what would be the most helpful thing I can work on, i.e. what is the biggest stumbling block to linux performance?
"I know now why you cry... but it is something I can never do."
-Emotion Engine
Reply

Sponsored links

#2
(02-05-2014, 11:38 PM)krysto Wrote: Hey all, I am a newcomer to the community and I am interested in contributing to development of the Linux version of PCSX2. If there are any Linux developers reading this, what would be the most helpful thing I can work on, i.e. what is the biggest stumbling block to linux performance?

Talk to Gregory

forums.pcsx2.net/User-gregory

He's the only Linux coder I think.
Lenovo Y50-70 Gaming Laptop
Intel Core i7-4720HQ @ 2.6Ghz - 3.6Ghz Quad Core
Nvidia GTX 960M 4GB
8GB DDR3 Ram
15.6'' Full HD 1920 x 1080 IPS
Windows 10 64 Bit
---
Intel Core i5 4670 @ 3.4Ghz
Gigabyte H81M
Gigabyte Radeon R9 280X 3GB
8GB DDR 3 Ram
1TB WD Black
Windows 10 64 Bit
Phillips 23.6" 1920x1080 IPS
Reply
#3
Hello. There is a lots to do Wink Which distribution do you use and which GPU/drivers.

Most of the issues are on the GS plugin. But lots of place could be improved.

Anyway, if we want to begin a good start will be to replace threading in GSdx by std::thread. Code is much slower on Lnx than on windows for GSdx SW renderer.

Edit: plugins/GSdx/GSThread.* files Wink
Reply
#4
All right, will do.
"I know now why you cry... but it is something I can never do."
-Emotion Engine
Reply
#5
(02-05-2014, 11:42 PM)gregory Wrote: Hello. There is a lots to do Wink Which distribution do you use and which GPU/drivers.

Most of the issues are on the GS plugin. But lots of place could be improved.

Anyway, if we want to begin a good start will be to replace threading in GSdx by std::thread. Code is much slower on Lnx than on windows for GSdx SW renderer.

Edit: plugins/GSdx/GSThread.* files Wink

Hey Gregory, nice to meet you. These are my current specs:

OS: Arch 64
CPU: Intel Xeon E3-1230 V2 Ivy Bridge 3.3GHz (3.7GHz Turbo)
GPU: Radeon HD 7950
RAM: 16GB DDR3

I am running the open source driver right now, I may have to get catalyst, right? Though I'm not sure if it is compatible with the current kernel, I may have to downgrade or wait for the next release.
"I know now why you cry... but it is something I can never do."
-Emotion Engine
Reply
#6
For the moment you can keep the open source version. SW renderer mostly use the CPU. GPU just draw 1 texture by frame. However your CPU will be handy to test multithread.

First of all you need to understand how to use GSdx without PCSX2. You can create dump with ctrl/shift/f8 (look in your snap directory). Then you can replay the dump with a command like that:
Code:
pcsx2_GSReplayLoader /tmp/obj-i486-linux-gnu/plugins/GSdx/libGSdx-0.1.16.so  gsdx_20140205133931.gs ~/.config/pcsx2/inis/
Reply
#7
I read the arch compiling guide, but still ran into some problems. I am trying to get a deeper understanding of how the build process works. When you run build.sh, does it automatically place binaries into usr/bin?
"I know now why you cry... but it is something I can never do."
-Emotion Engine
Reply
#8
full details when I come back to home. Basically the build script will call cmake, make and finally make install. By default everything will go in ./bin. There are severals variables to tune cmake (see google code wiki) so the build could be more friendly to distribution (i.e. /usr/bin)
Reply
#9
No, it just places the total installed playable pcsx2 into the /bin subdirectory. What I do is move the /bin somewhere else after compilation is done and re-name it to something like PCSX2-Linux-r????.

Lol, I was too slow. Smile
OS: Linux Mint 17.2 64 bit (occasional Antergos/Arch user)
(I am no longer a Windows user)
CPU: Intel Pentium G3258
GPU: Nvidia GTX 650 Ti



Reply
#10
OK, thanks. I will check my dependencies and attempt to compile again when I get home. In the meantime, I am trying to understand the GSdx code. Currently it contains a class GSThread which is a wrapper for pthread, correct? And we want to make the switch over to std::thread in the hopes that it will be more stable across platforms?
"I know now why you cry... but it is something I can never do."
-Emotion Engine
Reply




Users browsing this thread: 1 Guest(s)