Special Aircraft Service

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 [2] 3   Go Down

Author Topic: WAW20 Drained Beta  (Read 10346 times)

0 Members and 1 Guest are viewing this topic.

Aioros

  • member
  • Offline Offline
  • Posts: 156
Re: WAW20 Drained Beta
« Reply #12 on: June 21, 2016, 01:40:34 PM »

I'm totally agree with Moezilla, CUP is excellent but optimization with aim to get performance is necessary, there are some errors that need to be corrected too, but I'm also agree with Malone the best thing to do is to keep an unified modpackage to work with, specially to keep present and future campaigns working for everyone, for example I´m working in a campaign for WAW part 20, but I like the performance of the Vpmedia´s Mod package, to get my campaign working with it, It will need a lot of work (time), due to the difference In content, The heaven would be a CUP installation with the performance of the VPmedia's modpack.
Logged
Only change is constant.

vonOben

  • Modder
  • member
  • Offline Offline
  • Posts: 949
  • Wer den Tod fürchtet, hat das Leben verloren.
    • vonOben's Flight Sim Mods
Re: WAW20 Drained Beta
« Reply #13 on: June 23, 2016, 04:48:00 AM »

I came back to the idea of streamlining WAW and getting the issues sorted.

I've tried CUP, but I haven't been able to get it running with acceptable frame rate without going into "ugly" mode. And the performance decreased for each new version I tried, so I'm very interested in a streamlined WAW.  :)
Have you noticed any frame rate improvements in your WAW20 Drained Beta?

The heaven would be a CUP installation with the performance of the VPmedia's modpack.

Excactly!  :)

Logged
vonOben's Flight Sim Mods  http://vonoben.free.fr/ Twenty Years online January 3, 2022!

benitomuso

  • SAS Team
  • member
  • Offline Offline
  • Posts: 2587
  • P.A.L.
Re: WAW20 Drained Beta
« Reply #14 on: June 23, 2016, 06:50:28 AM »

I came back to the idea of streamlining WAW and getting the issues sorted.

I've tried CUP, but I haven't been able to get it running with acceptable frame rate without going into "ugly" mode. And the performance decreased for each new version I tried, so I'm very interested in a streamlined WAW.  :)
Have you noticed any frame rate improvements in your WAW20 Drained Beta?

The heaven would be a CUP installation with the performance of the VPmedia's modpack.

Excactly!  :)



We have tried with Monty to make several optimizations:

-Folder Separated classes. Planes, Objects, EngineMOD, etc. So it could be much easier to analyze and see incompatibilities, follow up versions, update only specific contents, etc.
-Ships. I have tried to normalize the situation and we got a lot of collaboration from Asheshouse, who collected most of the "reasonably finished" ships around and refined the list. Specially our main goal was standardizing the classes, leaving the stock ones as subclasses of Bigshipgeneric and all of the other ones in alternative classes.
-All C.U.P. modules have maaaany errors on loading which are many more of the ones you can see at the log after the GUI starts. When you launch the game in console mode you see hundreds of non-corresponding .ini entries with objects. All this errors flood the log and are responsible of delays in 60% and 70% of the game.
-The current WAW contents include many redundant reloaded superseeded 3d contents. A real "Only once per file" initiative would reduce the global file size of .SFSs significatively. A version of the SFS Manager I have written could automate most of this task. But all the new files would have to be reuploaded (and are many gigs!!!).
 
We had been working out those issues. Some of the progress was partially implemented in the WAW20 but for several reasons (in my personal case due to lack of time), it was kind of frozen for some months.

Regards,
                      Pablo
Logged

Moezilla

  • Supporter
  • member
  • Offline Offline
  • Posts: 358
Re: WAW20 Drained Beta
« Reply #15 on: June 23, 2016, 08:12:01 AM »

@vonOben - Yes there have been improvements in framerates, these are mainly due to optimising the mat files and using lighter textures for ships and vehicles. Most of these lighter textures are the ones from VPMod (thanks again, Istvan).

@benitomuso -
Folders - Yes I can see how you guys altered the structure of the #WAW folder and it is a cleaner approach. Although, as with all things, there are some errors and things to improve.
Ships - It makes sense for someone with the experience of Ashes to gather the modded ships into the ship class and add the appropriate interfaces to get the features of the ship extension mod on all vessels. This is where Monty asked me to help out with testing.
Console mode - very interesting and probably easy to fix but would take some time and energy.
Redundant files - This was one of the main reasons for doing the work I did. I have the files 90% streamlined and uploaded to mediafire ready for someone to test. There is at least another 1GB to be cleaned I think.
Logged

whistler

  • Modder
  • member
  • Offline Offline
  • Posts: 2784
Re: WAW20 Drained Beta
« Reply #16 on: June 25, 2016, 05:22:26 AM »

Do I mind downloading CUP again and again? Hell no! That is half of the joy, even if there is no new content and I gain (or lose!) 1fps :)

Bring up a new drained or on-steroids CUP, damn it I care not what you come up with, CUP team earned all the praise and respect! We are in good hands.

You created the greatest mod pack ever, the toy is rightfully yours, Moezilla is knocking the door... I say let him have some good fun.

The heaven would be a CUP installation with the performance of the VPmedia's modpack.

Sweet words Aioros!
Logged
NG-HUD v3.6.1 | NG-MAP v3.2 | NG-CAM v2.0 | NG-PAL v1.2: https://www.sas1946.com/main/index.php/board,93.0.html

SAS~Monty27

  • SAS Team
  • member
  • Offline Offline
  • Posts: 3852
  • Action and Adventure!
    • SPEEDMACHINE
Re: WAW20 Drained Beta
« Reply #17 on: July 25, 2016, 06:31:24 PM »

There are some good suggestions in there - and some inaccurate statements regarding wider compatibility and solutions already in place.

Speaking from experience, and a lot of testing, there is a world of difference between theory and practice.  There are many instances where moving/deleting classfiles and other items has produced previously unforseen consequences.  CUP has exposed many previously unknown issues and also fixed many things for the wider community.

I appreciate new ideas and observations.  These can be tested against the wider compatibility issues.  The fact that log 'errors' and incompatibilities occur is part of the nature of a highly modded install.  This IS going to happen whenever you mod.  eMeL often says its like laying a difficult carpet.  You get one part smooth and another bump pops up elsewhere! 

The CUP Team are highly skilled and dedicated to have acheived so much already. 

I am concerned that a great list of their misunderstood 'failures' just makes them look like fools.  We had this kind of criticism from day-one.

You don't need to handle me with kid gloves.  I have taken real hard directed abuse and hate campaigns from people who really enjoy that sort of thing.

But please be a bit more respectful on behalf of all the people at SAS, especially the Admins.  They really do deserve that respect.  They deserve to be spoken to politely and clearly.  They deserve the attitude that; even though you are raising a new idea, they probably know already and are several steps ahead.

I have no problem with that because I am in awe of Malone, Storebror, VPMedia, GJE52, Benitomuso and others, who have been around this for sim for so many years and created this modscene in the first place!  I work hard on a hobby I enjoy - But if those people piss off we have no SAS or any more mods.

Logged

sniperton

  • member
  • Offline Offline
  • Posts: 1228
Re: WAW20 Drained Beta
« Reply #18 on: July 26, 2016, 04:12:54 AM »

Monty, with all my respect, I don't see any 'failures' listed in this post and attributed to anyone other than the nature of laying a difficult carpet. What I read here is about the bumps popping up here and there, and I don't feel it's intended as a criticism against the creators of WAW. Most of these 'bumps' are originating in the individual mods you skillfully incorporated into WAW, and discussing how to flatten them out is in no way questioning the achievements the CUP team has made.
Logged

Moezilla

  • Supporter
  • member
  • Offline Offline
  • Posts: 358
Re: WAW20 Drained Beta
« Reply #19 on: August 10, 2016, 04:37:08 AM »

I was looking at CUP-WAW performance a lot back in June, especially in comparison to VPMod Patch #4. I used good old Black Death as a benchmark.

I added bFLYBY=0 to the conf.ini to disable Tigers camera changes so the track would use the same camera settings across stock, VPMod and CUP-WAW. Here were the results:
Code: [Select]
Stock 4.12.2 - avg:195 / min:74
VPMod Patch #4 - avg:165 / min:39
WAW20 As released - avg:117 / min:28

So I went digging in WAW to try and find what was causing the differential in  performance. I tried different versions of the Engine Mod, different DLLs in the root folder, different sounds and effects, different water textures. Nothing made a significant difference.

I saw a small but measurable improvement by optimising the mats and textures of the ground units which led to what I called WAW20-Drained Beta 1 which had the following results:
Code: [Select]
WAW20-Drained Beta 1 - avg:122 / min:29
I went to work on that minimum value and found that the beautiful high poly model and detailed texture on the russian bomblets was the cause. By returning that to stock temporarily the minimum FPS came up nicely:
Code: [Select]
WAW20-Drained Beta 2 - avg:125 / min:44Maybe some optimisation of sub-munitions is worth examining?

I made no further progress until I decided that a theatre-based approach, which has been offered as a source of improved performance before, was worth a try. So I removed everything from CUP-WAW that didn't take part in the Eastern Front campaign (including removing stock Western Front and Pacific assets).
Code: [Select]
WAW20 Drained Beta 3 EF Only - avg:193 min:66
Next was to add back in all the WAW20 ground/sea units and when performance remained the same I added back in all the stock planes and performance was still good.
Code: [Select]
WAW20 Drained Beta 4 - avg:193 min:66
Here is where I hit a wall. At this point there was ~600 aircraft, ~1750 moving ground/sea units and ~1600 stationary.ini entries. When I tried adding a few more planes in, the performance started to drop. This is with 615 aircraft:
Code: [Select]
WAW20 Drained Beta 5 - avg:179 min:65
My uneducated guess is that when the number of classes loaded and managed by the game reaches a certain level then the memory management of the engine becomes a performance limiting factor. I know Storebror did extensive work through his SAS Selector to examine the JVM and memory parameters so maybe he's already been over this ground several times.

Please take any and all of my posts in the manner in which they were intended - in support of IL2, SAS and CUP.
Logged

SAS~Storebror

  • Editor
  • member
  • Offline Offline
  • Posts: 24036
  • Taking a timeout
    • STFU
Re: WAW20 Drained Beta
« Reply #20 on: August 10, 2016, 12:02:47 PM »

Thanks for sharing your results Moezilla.
The effect that you've examined is the famous "Java Wall" which has first been observed on DBW when people started adding additional planes to that modpack.
Currently there's nothing we can do about this as all attempts to reduce the stress caused for the Java VM by the sheer number of loaded classes always ended up with a no-functional (or at least not fully functional) game.
The worst thing about the Java Wall is that it doesn't kick in with exactly the same number or effect for everyone.
For instance when your game was fine with ~600 aircraft and showed significant performance drop at 615, then these numbers for another player might as well be 550 and 552, and for a third one they might be at ~700 and 750.

Just to give a little technical background for what's happening here, the IL-2 game engine is designed to load all classes when the game starts, whether or not they will actively be used later on.
Since IL-2 uses it's own classloader which causes all classes to run their static initializer unconditionally, every class being passed through that classloader will occupy one "slot" in the - apparently - limited number of class slots available to our Java VM.
We're bound to use the way outdated Java 1.3 Virtual Machine, where no one ever observed this "Java Wall" when the VM was actively being developed, but that's of course since at that time no one used PCs with 4GB RAM and more, so no one was able to load that massive number of classes in parallel like we do nowadays.
The reasons why IL-2 kicks up each and every class whether or not it will be used later on are many.
Two of the reasons are the "monolithic" design of IL-2 which is just not meant to be used with delayed class initialization, and the anti-cheat mechanism "CRT=2" which strictly relies on all participating classes of the game being loaded and initialized when the runtime check kicks in (the latter btw. is the reason why CRT=2 never worked reliably on UP3, but I won't go into details about that right now).

The best way out in my opinion would be to forget about CRT=2 and restructurize the game in order to make it capable of delayed class initializations.
Ideally this would enable us to hand over endless classes to the game, which would only initialize those which are actually being used.
That way we would reliably avoid the "Java Wall" even if all CUP modules would sit together in one slot, since even when you have ~1.000 planes, 3.000 ground/sea and 10.000 static objects available to the game, even after playing 24 hours in a row you would barely touch 1/10th of them.
Only Servers would still need to be handled with a little care since after running a few weeks they might be able to hit the "Java Wall" even with delayed class loading again.

Unfortunately, as mentioned in the beginning of this post, the delayed initialization currently doesn't allow the game to run reliably.
Maybe we can fix that one day, maybe not.
If TD would share some native game code with us, we could surely fix that in a fraction of the required time it will take with all the reverse engineering we have to go through now.
But that's a TD thing and as you know, making life hard for modders is what makes them happy :-X
As long as they don't suffer from the same issue too (and they won't, with their little tiny "stock" game they have), they will give a damn for such concerns.

Best regards - Mike
Logged
Don't split your mentality without thinking twice.

Moezilla

  • Supporter
  • member
  • Offline Offline
  • Posts: 358
Re: WAW20 Drained Beta
« Reply #21 on: August 10, 2016, 01:35:48 PM »

Thanks for your quality input Mike. Your post filled several gaps in my understanding of IL2. I'm off to my thinking room with plenty to think about!
Logged

JG7_X_Man

  • Missioneer
  • member
  • Offline Offline
  • Posts: 277
Re: WAW20 Drained Beta
« Reply #22 on: August 11, 2016, 05:36:54 PM »

Thanks for your quality input Mike. Your post filled several gaps in my understanding of IL2. I'm off to my thinking room with plenty to think about!

Eeeww! Gross :)
Logged

SAS~Monty27

  • SAS Team
  • member
  • Offline Offline
  • Posts: 3852
  • Action and Adventure!
    • SPEEDMACHINE
Re: WAW20 Drained Beta
« Reply #23 on: November 02, 2016, 06:21:20 AM »

I'm still following this with great interest.  As sniperton states: "Most of these 'bumps' are originating in the individual mods" - That's exactly right.  Our wider ambition to fly all of the possible eras is also at the heart of this issue.  The CUP structure helps to isolate parts of the java wall.

I'm always open to new methods and material and would also be happy to hook up on Skype and share Cloud storage.  That's how we get things done in a practical way, so let me know.

Meanwhile C.U.P #WAW Part-21 is almost with us - adding more wonderful content and choices.   8)
Logged
Pages: 1 [2] 3   Go Up
 

Page created in 0.062 seconds with 20 queries.