28. December 2018 at 5:57 #6609
EDIT: PLEASE DELETE THIS THREAD, I FIXED IT! ALL IT TOOK WAS RESTARTING MY STUPID PHONE… SORRY FOR EVER DOUBTING TONY’S PROGRAMMING EXPERTISE ?
Hi guys, since the last update I have major performance hits on my games. Games that ran fast are now running choppy.
I can fix the problem temporarily by getting out of the game (NOT turning it off) and coming right back in where I left off and it instantly fixes the problem. When it happens again, I do the same and it fixes it for a while.
As I have mentioned in that other thread, I tried uninstalling, deleting folders, and reinstalling… It has not helped. It happens in multiple games that all ran fine.
Is there a way I can get the older version of the app just prior to the update so I can test it out and see if it truly is the new version that’s causing it?28. December 2018 at 9:14 #6614
Thank you, just wanted answer the same, I’ll leave it here, because I face this question very often 🙂 Android is weird.23. March 2019 at 19:01 #7016
Same problem since the update I’m afraid.
In some cases restarting helps but the choppiness comes back.
Nokia 8 running Android 9. Tried with World Rally Fever and Alien Breed.
Please, fix. Magic DosBox is unplayable at the moment.23. March 2019 at 22:15 #7017
There is nothing to fix, this may be caused by many various things on current device, include behaviour when device pushes dosbox on slower cpus. Maybe, I can add small unofficial help when will be possible pin dosbox to specific cpu, but always has last word system, so it may not help. Try set fixed cycles manually, this could hold dosbox on faster cpu, for example cycles=fixed 20000 instead cycles=max 105%25. March 2019 at 16:14 #7018
@flamming_python it might be Android power management interfering. It tends to move processes to power saving cores.
Go to app settings -> 3 dot menu top right -> Special Access -> Optimize Battery Usage
Then select “All apps”, scroll down and uncheck Magic Dosbox.29. March 2019 at 19:50 #7030
Hey Alex, since the original post i made here months ago, whenever i had any choppiness a reboot would take care of it no problem…. so its not really an issue for me.
when I saw your reply above about optimize battery, i went into my settings and noticed it was checked by default… so i unchecked it… what exactly does this function do? would it boost my performance or just prevent magic dosbox from draining battery in the background if left running? should i not have unchecked this since i didnt have any issues to begin with?29. March 2019 at 20:35 #7031
Shouldn’t be a problem. Afaik, Magic Dosbox doesn’t consume battery in the background.
I actually got that hint from the Beamdog devs, when I reported serious fps drops in Neverwinter Nights. The game kept being forced into power saving mode, causing massive performance issues, but this little trick fixed it. So it might also help with Magic Dosbox.29. March 2019 at 22:12 #7032
Alex dropped another gold coin, this forum will be treasure 🙂 This hint could fix all my attempts for cpu thread affinity implementation.30. March 2019 at 3:08 #7036
Let’s hope this actually works. ??30. March 2019 at 4:57 #7038
Hey Tony I have a question… What’s the advantages, if any, of 64 bit architecture Google forced you to update the app to, vs the old existing 32 bit? Why did Google mandate this change?30. March 2019 at 8:06 #7039
I think there is no only one answer, it happens already on other platforms like mac, seems 32bit will be deprecated. Was necessary adopt this requirement else mdosbox development would be stopped. We can be happy that M-HT is genius and 64bit dynamic recompiler is not slower then 32bit. Except that requirement was none reason for making 64bit binaries. Google says 64bit is faster because offers more registers, but who knows.30. March 2019 at 22:26 #7048
That IS quite the tip there Al ex! Might work for a number of other emulators I have actually.
I’ll try it out later, hopefully it will help.
In the meantime I got Alien Breed to run smooth by simply changing its power setting manually, as opposed to leaving it on auto.9. April 2019 at 9:30 #7077
No look I’m sorry but this problem is definitely real, no more weaseling out with battery optimization and all the rest of it; didn’t help.
I’ve now encountered the same issue with Tyrian 2000, Ultima VIII and SWOS 96-97; games which never had choppiness before.
Good news though is that it’s not really a problem with the emulator becoming slower or something. The issue is only apparent when the performance is set to auto or max. When set to custom and a suitable cycle value manually, the games all play perfect. So it seems that the regression has been solely in the algorithm that decides on the appropriate amount of cycles to emulate for a given game.
I really do suggest that you take notice this time admin. What are new customers going to think when they start using Magic DosBox leaving games on default settings, and see that it runs most of them like crap?9. April 2019 at 10:08 #7078
I agree that a problem such as this is really annoying. I still do believe though that it’s related to some sort of cpu power management. Here’s why: I’ve got six Android devices to test on (S9+, S7 edge, Note 4, Note 2, A5 2017, Tab E T560), and this issue is completely nonexistent on 5 of them. Only on my S9+ do I experience slowdowns every now and then, when I don’t take additional steps to prevent this.
Now, the S9+, at least my Exynos variant, is notorious for having really messed up cpu management, up to a point where people suspect it’s being crippled on purpose. So, what hits hard here IMHO is, that Magic Dosbox, or Dosbox in general, is pretty well optimized, and light on the cpu. That’s why our phones don’t run hot. On the other hand, it seems to me that for this reason the process is offloaded onto the low power cores.
In short: running Dosbox at max cycles is calculated relatively to the cpu core it’s running on So when Android pushes the process to a low power core, Dosbox is still running at max cycles, but only relative to the .LITTLE core.
That’s how I understand it. This would also explain why fixed cycles are working as intendend.
Also, things become even more complicated with the way the .BIG cores are designed. On my S9+, the first core is clocked at 2.7 GHz. As soon as the 2nd core is utilized (for whatever reason at all), both are clocked down to 2.3 GHz. As soon as core 3 and 4 chime in, it goes down even further, to 1.8 GHz for all 4 cores. So, even when the process stays on the .BIG cores, occasional slowdowns (2.7 -> 1.8 ~ 33%) are almost inevitable. Also, prior to the tweaks I’ve applied, I would get crazy slowdowns, and scores of 900 and above sometimes, whereas now, I’m getting stable 600 realtics (don’t want to overoptimize and kill my cpu).
So, all that is just what I make of it personally, I’m not a coder myself. But I was able to squeeze a lot of performance out of my phone with cpu related tweaks, without any changes made to Magic Dosbox itself. That’s why I’m pretty sure the problem can be pinpointed here.
Maybe there’s a way to increase some values at least a bit. Pushing the limits too far would result in pronounced cpu heating and battery usage, but some adjustments to the code (if possible) might help with the issue of Dosbox running on the wrong set of cores.9. April 2019 at 11:33 #7079
This is all great and everything but again I reiterate, this problem only started happening for me a couple updates ago.
Therefore it has to be a regression.
I did also upgrade my phone to Android 9 a few months ago and haven’t used Magic DosBox too much since. But I’m fairly sure the choppiness began with a recent Magic DosBox update not an Android update a lot further back.
- You must be logged in to reply to this topic.