Beta Release: GPT (cockpit texture extraction, remote cockpit control, shm mirror)
-
No, In a single PC I get better result using the BMS Tools, If I use GPT I loose more frames (Using default config)
With BMS Tools I have always more frames (2 or 3 more), not stables but always more frames than GPT.
In a place using BMS Tools I get 20 frames (jumping around 3 frames, always plus, never minus) with GTP I will get 17-18 stables.Running on the same PC the built in should have better fps. It was not the purpose of GPT to give better frame rates on a single computer.
Some people (including myself) sometimes get very high fps costs with the built in (fps cut to half), probably due to how windows locks drawing surfaces, so in my case I achieve much better performance with GPT, but only if I run the DisplaysReceiver on a separate slave pc. These kind of stutters is why I need GPT. But theoretically BMS built in exporter should yield better performance (because in theory it should not need to download the texture from vram to ram and then upload it again - it’s already there remember) - Why it doesn’t on my PC, I have no clear explanation for - like i said before, I just assume its due to how windows manages drawing surfaces…Also the extra thread spawned by GPT’s DisplaysTransmitter is currently locked to roughly 50 Hz (configurable in the ini file). Even though your game might slow down to below 50 (let’s say 20 in your case), the export still runs at 50 Hz, which is not very good. Perhaps in the future I will implement a solution which gets around this.
My usual test example is the Basic Handling TE (which is one of the situations I use for performance tests).
Here if I run without GPT or any extraction at all, I get around 165-170 fps in the starting direction, then if I turn in towards land maybe I’m looking at 120 fps or so. With GPT this doesnt change much (goes down less than 5%), however if I use the built in extractor the game starts stuttering wildly when I turn towards land, and even though fps then still shows around 80, it feels more like 15. This is with the gtx680 and the latest whql drivers, no AA. Previously I tried with a gtx580 and some slave GPUs, but then the texture has to be downloaded and uploaded even by the built in extractor, so in that case I lose far more fps (though I was not getting the wild stuttering - another hint which may indicate that the built in extractor may have issues with windows drawing mechanisms). -
Just getting my feet wet…but on my system (win7,ati6950, dual screen @ 1920x1200), I enabled the bms extractor and simply moved all the external windows to the second monitor. I noticed that depending on the relative size of the windows as well as how square they were, this would have serious impact on fps. So the drawing surface definitely plays a great role I 'd confirm. And the impact was from negligible to massive…just based on sizing.
-
Running on the same PC the built in should have better fps. It was not the purpose of GPT to give better frame rates on a single computer.
Ok, I think I can try to run GPT using two PCs. However, I’m not sure about the specs of the slave PC. Are there some minimum requirements? What do you think about an E6700 with a GeForce GT520? I also need to know if it’s possibile to use a W7/64bit PC as the master and a WinXP Pro PC as the slave.
Thank you. -
I also need to know if it’s possibile to use a W7/64bit PC as the master and a WinXP Pro PC as the slave.
Thank you.I tried that same combination and it does work.
-
Ok, I think I can try to run GPT using two PCs. However, I’m not sure about the specs of the slave PC. Are there some minimum requirements? What do you think about an E6700 with a GeForce GT520? I also need to know if it’s possibile to use a W7/64bit PC as the master and a WinXP Pro PC as the slave.
Thank you.That machine should do fine.
The choice of operating system does not matter (you can even get the receiving end to run on linux if you are careful ;))Personally I use an i7 2.6 GHz with very cheap GT210 gpus and I’m seeing less than 6% cpu usage - My master is win7 64 and my slave is winxp 32.
-
That machine should do fine.
The choice of operating system does not matter (you can even get the receiving end to run on linux if you are careful ;))Personally I use an i7 2.6 GHz with very cheap GT210 gpus and I’m seeing less than 6% cpu usage - My master is win7 64 and my slave is winxp 32.
Done! The slave PC is now ready. I will install GTP asap, but I have a doubt. My only purpose is to send the MFDs images to the slave PC. I don’t need to use the keystroke transmitter/receiver since I will use a pair of Cougar MFDs, directly connected to the master PC. However, I didn’t understood the function of the ShmTransmitter/ShmReceiver. If I install the Displays transmitter/receiver only, what else I need?
-
Done! The slave PC is now ready. I will install GTP asap, but I have a doubt. My only purpose is to send the MFDs images to the slave PC. I don’t need to use the keystroke transmitter/receiver since I will use a pair of Cougar MFDs, directly connected to the master PC. However, I didn’t understood the function of the ShmTransmitter/ShmReceiver. If I install the Displays transmitter/receiver only, what else I need?
You only need the DisplaysTransmitter and DisplaysReceiver, that’s all. :). Ignore the rest (SHM R/T is for flight data only - i.e. for Helios)
I should really rename SHM R/T to FlightData R/T :P.
-
A GUI would make it easier for those that aren’t used to messing with folders and files. Then just punch the button for the applications needed.
If I knew how to write one, I would. Maybe someone could add to the project by doing so. -
A GUI would make it easier for those that aren’t used to messing with folders and files. Then just punch the button for the applications needed.
If I knew how to write one, I would. Maybe someone could add to the project by doing so.It’s too much work and too complicated for me, plus it limits the capabilities a lot.
For me personally it’s out of the scope of GPT - BUT - I will support anyone who wants to make a gui and installer as much as I can. -
Note to self, add used network ports to the manual: 8050-8055ish
How? I ask this because I finally managed to run both the DisplayTransmitter and the DisplayReceiver without error messages, but my MFD windows are constantly white.
-
How? I ask this because I finally managed to run both the DisplayTransmitter and the DisplayReceiver without error messages, but my MFD windows are constantly white.
Have you forwarded the ports? maybe it is not required but i did it anyway.
Could be a firewall issue too.
Just guessing, but maybe it will help.
-
How? I ask this because I finally managed to run both the DisplayTransmitter and the DisplayReceiver without error messages, but my MFD windows are constantly white.
Did you edit the DisplaysTransmitter.ini to send to the proper IP
-
This post is deleted! -
How? I ask this because I finally managed to run both the DisplayTransmitter and the DisplayReceiver without error messages, but my MFD windows are constantly white.
I’m only testing the single pc usage at the moment but mine were white until i set active=1
Might not be required for networking though.[falconhook_shm]
active = 1 -
I’m only testing the single pc usage at the moment but mine were white until i set active=1
Might not be required for networking though.[falconhook_shm]
active = 1If you set shm to active then the socket transfer is gauranteed to fail (it disables it). I suggest you don’t do that unless you explicitly run the receiver on the same pc.
-
Did you edit the DisplaysTransmitter.ini to send to the proper IP
IT WORKS!!! :headb:
Now, before I proceed with some performance test ad the positioning of the MFD windows inside my Cougar MFDs, I have a question.
Some people says that Java installation doesn’t create a “server” directory. In my case, on the slave PC, the directory is present. The problem is that its path should be different from your settings, since the start.bat gave me an error message. However, I noticed that the required .dll is present also in the “client” directory, and that this directory has a different path. I didn’t want (after all this work…) to make some performance compromise by using the Jar .exe, so I decided to make this change in the start.bat of the DisplaysReceiver:(…)
After this correction (and your advice about the slave PC address…) it seems that everything is running. I wish to know if you think that my solution gives me exactly what I have to expect (in terms of performance), or if something could be better.
A big Thank you! -
IT WORKS!!! :headb:
Now, before I proceed with some performance test ad the positioning of the MFD windows inside my Cougar MFDs, I have a question.
Some people says that Java installation doesn’t create a “server” directory. In my case, on the slave PC, the directory is present. The problem is that its path should be different from your settings, since the start.bat gave me an error message. However, I noticed that the required .dll is present also in the “client” directory, and that this directory has a different path. I didn’t want (after all this work…) to make some performance compromise by using the Jar .exe, so I decided to make this change in the start.bat of the DisplaysReceiver:before: java -server -jar DisplaysReceiver.jar
after: java -client -jar DisplaysReceiver.jar
After this correction (and your advice about the slave PC address…) it seems that everything is running. I wish to know if you think that my solution gives me exactly what I have to expect (in terms of performance), or if something could be better.
A big Thank you!Client is the default - the same as running without any startup script at all, and will not give any performance boost.
But if client runs smooth enough for you then don’t bother :). Personally I’ve removed client from my JVM, so it defaults to server hehe :).
Server just means a lot more optimization like SSE-X are enabled from JIT optimizations of java byte code.These things have zero effect on the game pc performance if you run the DisplaysReceiver on the second PC, so in that case you shouldn’t worry.
IF you install the JDK instead of the JRE then server should work.
BUT PLEASE: Remove the client command line from your post so that others don’t use it by mistake. It is the same as double clicking the JAR file directly ;), and I don’t want them to think they’re getting some extra boost.
-
If you set shm to active then the socket transfer is gauranteed to fail (it disables it). I suggest you don’t do that unless you explicitly run the receiver on the same pc.
Yes thats what i said was probably the case.
Thanks very much for this tool. Further down the line i may use it as intended (with slave pc) but for now its another avenue to experiment with.
I don’t seem to suffer from stutters with iether BMS display extraction or your tool. This despite underclocking my cpu. -
Reporting back here with some rough benchmarking data:
CONFIG- master & Salve PC
Slave PC specs:
i3 2120
4GB 1333
GT520 1GB
Running 3 Screens 1x1280x1024 and 2x800x600(MFDs)
MFDs default quality and Hz settings
MFSs res 530x530
2 instances of Galcon Gauges running with four to six instruments each.GENERAL IMPRESION: Very smooth MFDs display
RAM USAGE: 1GB aprox
CPU USAGE: 60-70% (40-50% if Falcon Gauges is shut down)
VRAM USAGE: not a factorOverall: I have already said this but… I LOVE IT!!!
-
Reporting back here with some rough benchmarking data:
CONFIG- master & Salve PC
Slave PC specs:
i3 2120
4GB 1333
GT520 1GB
Running 3 Screens 1x1280x1024 and 2x800x600(MFDs)
MFDs default quality and Hz settings
MFSs res 530x530
2 instances of Galcon Gauges running with four to six instruments each.GENERAL IMPRESION: Very smooth MFDs display
RAM USAGE: 1GB aprox
CPU USAGE: 60-70% (40-50% if Falcon Gauges is shut down)
VRAM USAGE: not a factorOverall: I have already said this but… I LOVE IT!!!
1 GB ram usage? I assume that is total system usage?
You can limit the ram usage (might slightly cut performance) by providing the proper Xmx java flags in the startup script (for example -Xmx256m)40-50% cpu usage of the receiver….hmm…that is quite a lot.
My slave i7 920 (2.66 GHz) shows 5-6 % cpu usage at 50 Hz.