Performance increase?

Viewing 15 posts - 1 through 15 (of 27 total)
  • Author
    Posts
  • #8135
    ManfredVonRicthofen
    Participant

    Ever since Samsung forced this Android Pie update, overall performance has decreased somewhat for me. Is there any tweaks to boost performance? I already changed the cpu cycle to max, and strangely enough the sound quality seems to be better? But the game plays normally without any noticeable boost. Frames drop for me when it gets busy on the screen. I’ve tried playing with frame skips, default seems to be 2 but when I set it to 3 I see some improvement, but funny enough if I go even higher it seems choppy again. Memory is already at 64 mb… Is there a way to increase that further?

    I noticed in developer options “force GPU rendering” will turning that on help at all?

    #8136
    ID KFAID KFA
    Participant

    Try increasing cycles in expert options from xx (xx=your value) to max=120%

    #8137
    Al exAl ex
    Keymaster

    GPU rendering won’t help. Samsung’s cpu management is a mess, so it’s not unlikely they re-configured cpu throttling, to prevent heating and increase battery life, who knows? What phone do you have btw?

    You can use Game Launcher or better (if still available) Game Tuner/Game Tools, to activate a higher performance profile for Magic Dosbox. There should also be a high performance option somewhere in the quick access tiles of your phone.

    The cycles=120% setting will increase emulation speed, but at the expense of sound quality. Anything above 105% can lead to sound stuttering/crackling, because you’ll be running Dosbox above your cpu’s speed limits.

    Frame skip, at least on modern phones, has close to zero effect on performance. I’d rather set it to 0 or 1, so you’ll get a smoother gaming experiece. There’s no point in increasing emulation speed, when on the other hand, you set video output to 10 or 15 fps.

    #8139
    adminadmin
    Keymaster

    And what is the game for?

    #8141
    ManfredVonRicthofen
    Participant

    It’s for TIE Fighter. Whenever I get close to a battle with a lot of shooting and objects it slows down, it wasn’t like this when I originally got the phone. I recently reformatted the phone, didn’t help, and restarting the phone doesn’t help either.

    I have never fiddled around with expert settings before, and the guides I have seen online seem to be for the pc version and I am not sure if they share the same directions with magic dosbox.. Can you guys help me understand these? I’ll put a parenthesis () next to questions I have:

    [dosbox]
    machine=svga_s3 (from what I gathered, svga_s3 is the best in terms for performance out of all the other pc dosbox can emulate?)
    memsize=16 (I set this for 64 mb in the .mgc file, why is it showing 16?)
    #Amount of video memory in megabytes (0-8).
    # The maximum resolution and color depth the svga_s3 will be able to display
    # is determined by this value.
    # 0: 512k (800×600 at 256 colors)
    # 1: 1024×768 at 256 colors or 800×600 at 64k colors
    # 2: 1600×1200 at 256 colors or 1024×768 at 64k colors or 640×480 at 16M colors
    # 4: 1600×1200 at 64k colors or 1024×768 at 16M colors
    # 8: up to 1600×1200 at 16M colors
    #vmemsize=2 (2 mb is the default video memory? Is this referring to its own standalone video ram on a video card, or shared with the 16 mb? Increasing it to 8 mb should give me more performance?)
    #Amount of video memory in kilobytes, in addition to vmemsize
    #vmemsizekb=0

    [render]
    frameskip=2 (if I set this to 0, every frame is being rendered so therefore slower performance right?)
    aspect=false

    [cpu]
    core=dynamic (what offers the best performance? Or should I leave it as is?)
    #valid cputypes (Ykhwong SVN):
    # a)auto
    # b)386
    # c)486
    # d)pentium
    # e)386_prefetch
    cputype=auto (what does this do?)
    cycles=3000 (is this where I change to 120%? Or do I plug in a higher number than 4000?)

    [mixer]
    androidFasterAudio=true
    blocksize=1024
    prebuffer=10
    rate=22050

    [midi]
    mpu401=none
    #mpu401=intelligent
    mididevice=mt32
    mt32.romdir=/storage/emulated/0/
    mt32.thread=on
    mt32.analog=0

    [speaker]
    pcspeaker=true
    pcrate=11025
    tandy=off
    disney=false

    [sblaster]
    sbtype=sb2 (why is this set at sb2 when in the .mgc I have it showing as sb16?)
    sbmixer=true
    oplmode=opl2
    oplemu=fast
    oplrate=22050

    [ipx]
    ipx=false

    [serial]
    serial1=disabled
    serial2=disabled
    serial3=disabled
    serial4=disabled

    [dos]
    xms=true
    ems=true
    umb=true
    keyboardlayout=auto

    [joystick]
    joysticktype=none

    [autoexec]
    @Echo Off
    mount c: /mnt/sdcard/
    c:

    I guess some of the things I am confused about is why the settings here are different than the way I have it set in .mgc.. Do these overwrite it? Or are these yet another setting inside the .Mgc?

    #8142
    Al exAl ex
    Keymaster

    Expert settings are identical to what you do on PC. It’s the plain text config file.
    What might be happening is that your phone’s power management loads the Dosbox process off onto one of the power saving cores of the cpu. Happened to me in the past as well, and that caused massive slowdowns. You can try to work around that with root and certain cpu tweaking apps, but that’s certainly not a valid suggestion, as it involves tampering with your phone’s brain.

    I’d suggest you try fixed cycles, and see what happens. Tie Fighter was designed for fast 386 or 486 cpus back in the day, so you should use these settings under [cpu]

    cputype=auto
    cycles=15000

    What these values do:
    cputype=auto: leave it as it is. There are different cpu tyoes DOSBox can emulate, but the default 80386/486 cpu is fine.

    cycles: the amount of cpu operations executed. There’s no 1:1 value that relates to a certain cpu type, but these are some rough estimates:
    2000 cycles = 80286 / 16 MHz
    3000 cycles = 80386SX / 25 MHz
    5000 cycles = 80386DX / 40 MHz
    10000 cycles = 80486 / 60 MHz
    20000 cycles = Pentium 90 MHz

    Something like that. Cycles=max will run everything as fast as possible on your cpu, with no fixed value.

    #8143
    ManfredVonRicthofen
    Participant

    Thanks for the explanation.. So I guess what I’m confused about is, why set the cycles at 15000 manually when I can just put in cycles=max? Isn’t faster and bigger better?

    What I am confused about still the default settings for memory in expert settings (16mb) do not coincide with the 64mb memory setting I picked in the mgc file…if I made it 64 in mgc, shouldn’t the expert setting have shown that? Why is it set in 16?

    #8144
    ManfredVonRicthofen
    Participant

    Hey guys so no matter what I put into the expert settings, I do not see any difference in performance. To test it out, I even put 1 mb for ram instead of the default 16, and I still don’t see any slowdowns.

    How can I tell if the expert settings are taking effect? After I edit it, I always save on the way out and I verified the setting took hold, but I see 0 performance gain or losses. What gives?

    EDIT: I am an idiot, I noticed that I did not check off the little box to activate the expert settings. Now I can see the various settings I play with are actually taking effect. What is the maximum CPU percentage a crank it up to?

    #8146
    Al exAl ex
    Keymaster

    The max cycles possible depend on your device. It’s all just trial & error.

    Regarding fixed vs max cycles: sometimes, especially when playing older games, fixed cycles will give yöu a better gaming experience, as cycles=max can simply be too fast. Ultima 6 or Wing Commander 1 for example become unplayable if Dosbox is running too fast. And while cycles=max will give you the best performance possible, it can also be inconsistent, because it’s relative to the cpu power assigned to Dosbox.

    #8147
    adminadmin
    Keymaster

    And what is your device for? There is still one thing which you can try, but it was not released in official version, this things allows you pin game thread to specific cpu.

    #8149
    ManfredVonRicthofen
    Participant

    What do you mean? What type of device I have? Samsung s8+… how do I try this pin game thread to a specific cpu method?

    What I don’t understand is why some games actually struggle.. Modern phones are significantly more powerful than a computer from 1998. Shouldn’t these games be running perfectly? Is this because dosbox emulates a slow computer with a low system spec? Is there anyway to make dosbox emulate a high end pc with a faster cpu, gpu, ram, etc? Or is this actually the limitations of my phone’s hardware?

    On a brighter note, while tooling around with all this, I learned about gravis ultra sound and I have to say the game sounds fantastic now.

    #8150
    Al exAl ex
    Keymaster

    Keep in mind that emulation is different than running code natively. It’s like speaking a completely foreign language using only a dictionary, without any prior knowledge of that language.

    A 2018 phone is more powerful than a 2008 PC, but it doesn’t have an x86 cpu, and doesn’t run DOS, so it can’t run DOS games natively.

    At any rate, your S8+ has enough horsepower to run even demanding DOS games or even Win95. At least if it has an Exynos cpu, I’m not sure if the Snapdragons had already caught up back then (they have today, and are even faster, I think).
    Judging by the scores in the benchmark section, you should be able to get a score of ~700 realtics in the linked Doom benchmark.

    In this particular benchmark, I had the aforementioned performance drops due to unnecessary performance throttling. Sometimes 610 realtics, sometimes 900. Game Tuner & root fixed this for me, but the issue remains. And it seems to be a Samsung issue with the S8 and S9 series. S10 is fine again. ¯\_(ツ)_/¯

    What you can do for testing: download the shareware 1.9 version of Doom, set it up in Dosbox, and run it with different cycles settings (cycles= max 105%, cycles=50000, cycles=100000, cycles=125000, etc.). At some point, you will get sound crackling issues, that’s when you’ve reached your cpu limit.

    Run the demo with the following command:
    doom -timedemo demo3

    and see what happens.

    Again, you cpu should be powerful enough to run even Win95 games like Diablo or Commandos.

    #8152
    ManfredVonRicthofen
    Participant

    Thx for the info I’ll get on it. The thing that really pisses me off is that before the android pie update, it ran flawlessly… After pie it went to shit with little improvement. What a waste.

    I’ve been thinking about upgrading phones, if Samsung has all these issues, what’s a good powerful phone to buy?

    #8153
    Al exAl ex
    Keymaster

    Newer Samsung phones are fine, it seems to be relates to the S8/S9 Exynos models.
    You can check the benchmark section of the forum for some numbers.

    #8154
    ManfredVonRicthofen
    Participant

    I have a snapdragon on mine, or at least I thought it did. S8+ unlocked US model.

Viewing 15 posts - 1 through 15 (of 27 total)
  • You must be logged in to reply to this topic.