Performance experiences with 1.13.x

General feedback and discussion of the game.

Moderators: Forum Moderators, Developers

User avatar
vultraz
Community Manager
Posts: 908
Joined: February 7th, 2011, 12:51 pm
Location: Dodging Daleks

Performance experiences with 1.13.x

Post by vultraz » June 17th, 2017, 3:30 pm

During the 1.13 development cycle we've received various complains of performance regressions compared to 1.12 in multiple different areas. We've done our best to optimize and improve performance, but there's only so much we can do given various engine restrictions. I (myself) am currently working on a rather large refactor that could potentially greatly improve performance, but as of now is currently planned for 1.15. It could be rescheduled for 1.14 but that would push its release back by several months at minimum.

Given that, time to collect some data! :D
  • What has your general experience been with 1.13 in terms of performance?
  • Have you seen significant or otherwise annoying performance regressions? If so, how severe?
  • Are you still able to play games comfortably in 1.13? This is especially relevant on maps with the new animated terrains, such as water.
  • What areas would you rank as performing better than 1.12?
  • What areas would you rank as performing worse than 1.12?
  • Are any performance issues you have severe or annoying enough to force you to return to playing with 1.12?
The goal here is to gauge the relevant performance of 1.12 and 1.13 from the perspectives of the community and players at large. We do want 1.14 to be the best release it can be, and I'm not opposed to more push-backs, but I don't want to make that call if it's not necessary.

Thanks :)
Creator of Shadows of Deception (for 1.12) and co-creator of the Era of Chaos (for 1.12/1.13).
SurvivalXtreme rocks!!!
What happens when you get scared half to death...twice?

User avatar
Pentarctagon
Forum Administrator
Posts: 3375
Joined: March 22nd, 2009, 10:50 pm
Location: Earth (occasionally)

Re: Performance experiences with 1.13.x

Post by Pentarctagon » June 17th, 2017, 3:51 pm

This would probably also be something for 1.15, but a benchmarking mode or set of unit test cases would probably help a lot here. I'm not aware of a good way to objectively get a good set of a data on this currently - the closest being the --fps option.

As far as my own experience goes though, the water <-> beach animations could use some tweaking/speed-up, though this feels more like an issue of animation frames lasting too long or not having enough animation frames than a performance issue per se.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code

User avatar
doofus-01
Art Contributor
Posts: 3658
Joined: January 6th, 2008, 9:27 pm
Location: USA, the civilized part.

Re: Performance experiences with 1.13.x

Post by doofus-01 » June 18th, 2017, 1:14 am

I haven't noticed any worse performance in 1.13 than 1.12, but I may be a bit too inured to glitches in the animations and hiccups in the scrolling to notice anymore.
Pentarctagon wrote:This would probably also be something for 1.15, but a benchmarking mode or set of unit test cases would probably help a lot here. I'm not aware of a good way to objectively get a good set of a data on this currently - the closest being the --fps option.
Yeah. Short of that, is there a standard that a typical player/user could use to "stress-test", just so we're all on the same page? For example: load a specific MP map, recruit a bunch of drakes with fog on, then scroll up.

A "benchmarking" add-on might be something. :hmm: There are already the test scenarios, but the audience would be a bit different, and possibly larger (and it might catch things that screw up add-ons but not mainline). It could also be updated between BfW versions.
BfW 1.12 supported, but active development only for BfW 1.13/1.14: Bad Moon Rising | Trinity | Archaic Era |
| Abandoned: Tales of the Setting Sun
GitHub link for these projects

User avatar
beetlenaut
Developer
Posts: 2164
Joined: December 8th, 2007, 3:21 am
Location: Washington State
Contact:

Re: Performance experiences with 1.13.x

Post by beetlenaut » June 18th, 2017, 7:03 am

Animation seems more glitchy to me than in 1.12, but it only gets bad with the water animation on. In that case, the cursor starts to lag too, which I can't stand. So I can play comfortably enough, but I don't use water animation any more. (I did in 1.12.) A lot of things in 1.13 are much prettier, but performance-wise, I haven't noticed anything that has gotten better. I have great hope for your accelerated rendering though!
Campaigns: Dead Water
The Founding of Borstep
Secrets of the Ancients

User avatar
Kwandulin
Art Contributor
Posts: 329
Joined: March 30th, 2014, 7:35 am
Location: Germany

Re: Performance experiences with 1.13.x

Post by Kwandulin » June 18th, 2017, 7:22 am

On my 8 year old machine (2x2.0Ghz, 512mb graphics card), BfW 1.13 is unplayable with water animations; without water animations, it is still severely slower than BfW 1.12.
No problems regarding the water animations with my newer machine. Other than that, I agree with the animations being glitchy in 1.13, especially for bigger sprites such as drakes or the loyalist cavalryman.

Also, uncovering shroud (or fog?) in BfW 1.13 seems to be a lot slower and more hickup-y than it was in 1.12 when playing with 2x speed.

User avatar
zookeeper
WML Wizard
Posts: 9694
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Performance experiences with 1.13.x

Post by zookeeper » June 18th, 2017, 8:03 am

Pentarctagon wrote:This would probably also be something for 1.15, but a benchmarking mode or set of unit test cases would probably help a lot here. I'm not aware of a good way to objectively get a good set of a data on this currently - the closest being the --fps option.

As far as my own experience goes though, the water <-> beach animations could use some tweaking/speed-up, though this feels more like an issue of animation frames lasting too long or not having enough animation frames than a performance issue per se.
For what it's worth, the beach wave animations are so slow pretty much because of the performance problem. The water frames are 100ms, and the beach wave frames are 200ms because even though they'd look better at around 150ms, it's my impression that 200ms is better performance-wise because then there are fewer redraws required.

Of course, more precise benchmarking might show the difference to be meaningless, in which case the beach waves could be made faster. Or, the water could be made slower, syncing both water and beach waves to for example 150ms. I feel that deep water starts to look a bit choppy at that point however, but maybe that's just me. Anyway, the slower the water animation, the better it naturally performs as redraws are further apart.

gfgtdf
Developer
Posts: 979
Joined: February 10th, 2013, 2:25 pm

Re: Performance experiences with 1.13.x

Post by gfgtdf » June 18th, 2017, 1:05 pm

One shoudl also mention that the linked patch might also increase system requirements in pertucular opengl3(.2) support. So the very old machines that probably suffer most from this might actually not be supported anymore.
Scenario with Robots SP scenario (1.11/1.12), allows you to build your units with components, PYR No preperation turn 1.12 mp-mod that allows you to select your units immideately after the game begins.

User avatar
Celtic_Minstrel
Developer
Posts: 1116
Joined: August 3rd, 2012, 11:26 pm
Contact:

Re: Performance experiences with 1.13.x

Post by Celtic_Minstrel » June 18th, 2017, 2:54 pm

doofus-01 wrote:A "benchmarking" add-on might be something. :hmm: There are already the test scenarios, but the audience would be a bit different, and possibly larger (and it might catch things that screw up add-ons but not mainline). It could also be updated between BfW versions.
There are actually three "benchmarking" scenarios in the MP Create screen (need to launch with --debug to see them, I think). Not sure if they're appropriate here, though.
gfgtdf wrote:One shoudl also mention that the linked patch might also increase system requirements in pertucular opengl3(.2) support. So the very old machines that probably suffer most from this might actually not be supported anymore.
Which is why we don't plan to merge that patch for 1.14. (Obviously, as Vultraz said, the plan could change, but at the moment we don't plan to.)
Author of The Black Cross of Aleron campaign and Default++ era.
Maintainer of Steelhive.

Samonella
Posts: 316
Joined: January 8th, 2016, 5:41 pm
Location: USA

Re: Performance experiences with 1.13.x

Post by Samonella » June 18th, 2017, 4:41 pm

Kwandulin wrote:On my 8 year old machine (2x2.0Ghz, 512mb graphics card), BfW 1.13 is unplayable with water animations; without water animations, it is still severely slower than BfW 1.12.
No problems regarding the water animations with my newer machine. Other than that, I agree with the animations being glitchy in 1.13, especially for bigger sprites such as drakes or the loyalist cavalryman.

Also, uncovering shroud (or fog?) in BfW 1.13 seems to be a lot slower and more hickup-y than it was in 1.12 when playing with 2x speed.
This pretty much sums up my experience, except a couple differences:
1) Most of the time, glitchy or slow animation problems are fixed by turning off water animations.
2) The events tab of the inspector window is unusably slow for my campaign (granted I have several hundred events at a time). The 1.12 inspector never delayed more than a few seconds.
gfgtdf wrote:One shoudl also mention that the linked patch might also increase system requirements in pertucular opengl3(.2) support. So the very old machines that probably suffer most from this might actually not be supported anymore.
:| Ok, in that case my vote is to not put it into 1.14.
The last few months have been nothing but one big, painful reminder that TIMTLTW.

Creator of Armory Mod, The Rising Underworld, and Vengeance of a Drake: an RPG

User avatar
Elvish_Hunter
Developer
Posts: 1360
Joined: September 4th, 2009, 2:39 pm
Location: Lintanir Forest...

Re: Performance experiences with 1.13.x

Post by Elvish_Hunter » June 18th, 2017, 6:51 pm

gfgtdf wrote:One shoudl also mention that the linked patch might also increase system requirements in pertucular opengl3(.2) support. So the very old machines that probably suffer most from this might actually not be supported anymore.
In this case, I'm going to have a big problem: my development machine is an E8400 with 2 GB of RAM and integrated Intel graphics, and this is the output of glxinfo | grep "version":

Code: Select all

server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
    Max core profile version: 0.0
    Max compat profile version: 1.4
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 2.0
OpenGL version string: 1.4 Mesa 12.0.6
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 12.0.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
There's also another potential problem: how many of us rednames know OpenGL enough to keep maintaining and improving the patch? For sure, I don't.
Current maintainer of The Sojournings of Grog, Children of Dragons, A Rough Life and Wesnoth Lua Pack
Co-author of The White Troll
On Wesbreak until the 21th of December

DeFender1031
Posts: 11
Joined: March 19th, 2016, 8:29 pm

Re: Performance experiences with 1.13.x

Post by DeFender1031 » June 18th, 2017, 7:48 pm

Those of you who hang out in IRC all probably know me. To those who don't, I am currently working on an add-on campaign and I like to do a lot of fancy animated cutscenes and use the engine in creative ways that people have not done thusfar. I even raised the issue of performance a couple of months ago, and showed a few of the devs what I've been working on in the hopes of encouraging some more emphasis on it. I hope I can answer this as realistically as possible without my largely negative assessment of the situation coming off as antagonistic or demanding.
vultraz wrote:What has your general experience been with 1.13 in terms of performance?
In one word: Molasses.
vultraz wrote:Have you seen significant or otherwise annoying performance regressions? If so, how severe?
Yes. Very severe. Animated cutscenes (cutscenes using actual unit movements and creative uses of [extra_anim]) that worked perfectly in 1.12 are noticeably lagging, hanging, or skipping in 1.13. Intro story frames with a lot of large images run exceptionally slowly (for example, my opening story screen involves a couple of cool fade-in effects which were really smooth in 1.12, yet horribly slow and choppy in 1.13).
vultraz wrote:Are you still able to play games comfortably in 1.13? This is especially relevant on maps with the new animated terrains, such as water.
I don't really actually play much these days, but I have noticed that the water causes significant slowdowns.
vultraz wrote:What areas would you rank as performing better than 1.12?
One area that I think DOES work better in 1.13 is menus. In 1.12 there was a noticeable delay of a fraction of a second before, for example, bringing up the campaign list on the title screen. 1.13 menu loading is near-instantaneous in that regard.
vultraz wrote: What areas would you rank as performing worse than 1.12?
Pretty much everything in-game.
vultraz wrote: Are any performance issues you have severe or annoying enough to force you to return to playing with 1.12?
Like I said, I don't really play much, but I haven't really been encouraged to try to transition my story onto 1.13, because of how annoying it's been to try to make it run even semi-decently. Much of the work I put in has been, for lack of a better word, ruined, and I am (understandably, I hope) somewhat frustrated as a result.

All that having been said, I'm not sure what I suggest in terms of release vs. push back. Is it worth releasing with performance regressions and telling people to just turn off terrain animations and the like for the moment? I don't know.

User avatar
Pentarctagon
Forum Administrator
Posts: 3375
Joined: March 22nd, 2009, 10:50 pm
Location: Earth (occasionally)

Re: Performance experiences with 1.13.x

Post by Pentarctagon » June 18th, 2017, 8:04 pm

Elvish_Hunter wrote:
gfgtdf wrote:One shoudl also mention that the linked patch might also increase system requirements in pertucular opengl3(.2) support. So the very old machines that probably suffer most from this might actually not be supported anymore.
In this case, I'm going to have a big problem: my development machine is an E8400 with 2 GB of RAM and integrated Intel graphics, and this is the output of glxinfo | grep "version":

Code: Select all

server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
    Max core profile version: 0.0
    Max compat profile version: 1.4
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 2.0
OpenGL version string: 1.4 Mesa 12.0.6
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 12.0.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
There's also another potential problem: how many of us rednames know OpenGL enough to keep maintaining and improving the patch? For sure, I don't.
jyrkive seems to also know OpenGL fairly well, though he'd really be the one who needs to answer that. It does seem like moving beyond software rendering is something that needs to happen sooner rather than later though, given the reports of performance regressions with 1.13(to be clear though, I am not suggesting that OpenGL should be part of 1.14), especially if we're already needing to make compromises with things like water animations.

One thing that does occur to me though, is that the Wesnoth Board is already paying artists to make new portraits and animations, and is also paying West a few hundred dollars to make a new main menu theme song, so it doesn't seem like a huge leap to make similar arrangements with developers as well. ie: the Board paying known, active developers to fix certain bugs or write certain features. Or in this case, perhaps just shipping you better hardware.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code

User avatar
beetlenaut
Developer
Posts: 2164
Joined: December 8th, 2007, 3:21 am
Location: Washington State
Contact:

Re: Performance experiences with 1.13.x

Post by beetlenaut » June 18th, 2017, 9:16 pm

So it seems like we should ship with water animations turned off by default.
Pentarctagon wrote:It does seem like moving beyond software rendering is something that needs to happen
Is that really true? While the game is struggling and lagging on my machine, I have three processors sitting idle. Would shifting map animations into a separate thread be harder than using accelerated rendering? Any computer bought in the last seven or eight years would see a significant speed-up, and older computers than that would still work.
Campaigns: Dead Water
The Founding of Borstep
Secrets of the Ancients

User avatar
Elvish_Hunter
Developer
Posts: 1360
Joined: September 4th, 2009, 2:39 pm
Location: Lintanir Forest...

Re: Performance experiences with 1.13.x

Post by Elvish_Hunter » June 18th, 2017, 10:12 pm

beetlenaut wrote:Is that really true? While the game is struggling and lagging on my machine, I have three processors sitting idle.
I just played the first scenario of Dead Water with map animation and water animation enabled. My CPU load was around 30% (not even a full core!), and Wesnoth used around 400 MB of RAM. In what scenarios or campaigns do you see lagging?
Pentarctagon wrote:Or in this case, perhaps just shipping you better hardware.
Thanks for the offer, I'll keep that in mind should I need it. However, right now I can afford a new system (although the only problem with mine is that I had to lower the optimization level to -O1 while compiling), I'm just unsure about the specifications to choose. Then again, I usually install Linux on dedicated second-hand machines, instead of dual booting... :P
Current maintainer of The Sojournings of Grog, Children of Dragons, A Rough Life and Wesnoth Lua Pack
Co-author of The White Troll
On Wesbreak until the 21th of December

User avatar
beetlenaut
Developer
Posts: 2164
Joined: December 8th, 2007, 3:21 am
Location: Washington State
Contact:

Re: Performance experiences with 1.13.x

Post by beetlenaut » June 18th, 2017, 11:02 pm

Elvish_Hunter wrote:My CPU load was around 30% (not even a full core!)
It took me a minute to figure out how you got CPU numbers that low but I'd never tried running in a small window before. That did work. I probably should have mentioned that I was playing full screen at 2560 x 1440, but I didn't realize what a huge difference that makes. My experience might not be typical then because my monitor is probably still larger than average. However, some players must have 5K displays now, and that number is only going to go up. (Zooming in doesn't make any difference BTW. I play that way a lot.)
Campaigns: Dead Water
The Founding of Borstep
Secrets of the Ancients

Post Reply