Performance Notes

You might recall running UAE on an old 200Mhz Pentium processor, and wonder how it is possible that performance is even a topic in 2012 🙂 The emulation accuracy in modern UAE emulators is much better than it was10-15 years ago, and this incrased accuracy comes at the cost of requiring more powerful computers.

Emulating the Amiga 1200 is especially demanding, since the CPU is clocked twice as high as the CPU Amiga 500, and the emulator spends most of its time emulating the CPU.

Here are some tweaks you can to do increase the performance of FS-UAE.

Some desktop environments under Linux causes bad performance, usually problems caused by compositing window managers. Some workarounds are suggested further down (“Performance Problems with Ubuntu / Unity”).

Lowering the Accuracy

If your computer is struggling with emulation at 100% speed, the easiest way to get better performance is to lower the accuracy:

accuracy = 0

This will turn off cycle-exact mode, but it will also be less compatible. Though, for many games / applications, it will not matter. You can also set it to -1 for even more performance.

FS-UAE Launcher has a drop-down box to the right of the Amiga model selector where you can lower the accuracy.

Disabling Video Sync

FS-UAE will usually have higher performance with video sync turned off:

video_sync = off

Note for Linux users: Many compositing window managers have performance problems when running OpenGL apps syncing to vblank. Common symptoms include half frame rate. In this case, you can either use the above option, or run FS-UAE in full-screen (which usually solves the problem, but Unity/Ubuntu may still have performance problems), or turn off compositing.

Reducing the Color Depth

FS-UAE can use less color depth in the internal video buffers as well as in the textures uploaded to the video card. For slower/older computers, this can give a nice speed boost:

video_format = rgb565

(This option will also automatically set texture_format = rgb5).

Use the Slowest Amiga Needed for the Job

Don’t emulate an Amiga 1200 if an Amiga 500 or an Amiga 600 will do. The CPU in Amiga 1200 is twice as fast as the one in Amiga 1000/500/500+/600, and you need a much more powerful computer to emulate A1200 at highest accuracy.

For example, many people use Amiga 1200 settings when running WHDLoad-installed games. But for most games, an Amiga 600 with Kickstart 2.0 will work equally well (or better), but will require a lot less resources to emulate.

Avoid Unnecessary Options

FS-UAE requires more CPU performance when options such as scanlines are enabled. GPU performance is also affect when using shaders and full-scene anti-aliasing.

Performance Problems with Ubuntu / Unity

When running in full-screen mode, the performance may be bad when running in the Unity desktop on Ubuntu. Enabling “Unredirect Fullscreen Windows” in CompizConfig Settings Manager may fix this problem, see the following pages for more information:

(The fullscreen issue may be fixed in recent versions of Ubuntu).

Unity also causes performance problems in windowed mode due to the compositing manager not playing nice with OpenGL apps syncing to vblank (at least with the binary nVIDIA drivers). Set the following option to get better performance under Unity if you are affected:

video_sync = off

Or run it in fullscreen mode instead. Another desktop environment without compositing is also a good choice 🙂

13 thoughts on “Performance Notes

  1. What would be the average CPU speed to shoot for to handle the higher end Amiga’s? etc from Apple 500 and up to CD32 with FS-UAE?

    • Good question. You should try to make sure to get at least a dual-core CPU. And, you are also most interested in the max performance of a *single thread* when looking at benchmark scores. This page is good for that: https://www.cpubenchmark.net/singleThread.html. I believe a score of about 800+ is sufficient to run FS-UAE with 68000 emulation cycle-exact at full speed in V-Sync mode. You probably need at least 1000+ score on that page for cycle-exact 68020 emulation (CD32). Maybe 1200+ to be really sure. But take this advice with a grain of salt, it’s based on possibly faulty memory. And the higher performance, the better, obviously 🙂 (More likely to run well with other background tasks running, etc).

    • I tested a bit on a cheap laptop with Intel Core i3-3217U @ 1.80GHz CPU. That one has a score of 901 on https://www.cpubenchmark.net/singleThread.html. It is just fast enough to run Aladdin AGA (Amiga 1200) with v-sync enabled. So something like this might be good enough, depending on how high expectations you have. But I do recommend something a bit more powerful 🙂

  2. Pingback: Commodore Amiga [Emulation on Windows series] | Lazy Retroist

  3. Fsuae dev build from arch aur repository un acer aspire with pentium t4500 dual core and intel gma free driver the emulation is very slow, compton compositor is disabled and shader crt option enabled.

    Other emulators run fast 🙁

  4. Just curious… What sorts of things does “accuracy = -1” really do in the emulator?
    Is it deprecated, or is it mostly harmless in well-behaved Amiga programs?

    • Hi, lowering accuracy to 0 disables cycle-exact (only for those models which are cycle-exact by default, for other models there are no difference between 1 and 0).

      Lowering the accuracy to -1 sets the CPU to less compatible mode (no prefetch emulation), and enables immediate blits.

    • There are several ways which can help, depending on the game:
      – You can use F12+w (enable warp mode) to speed up the emulation (without) sound while the game is loading. Use F12+w once more to return to normal speed.
      – Increase the speed of the floppy drive(s). See the docs for the option “floppy_drive_0_speed” (Note: this can break compatibility with some games).
      – If the loading is CPU-bound, try using a faster Amiga model, for example an A1200 instead of A500/A600. But once again, this game break game compatibility too.
      – Use the WHDLoad version of the game, which loads the game entirely from an emulated hard drive instead of floppies.

  5. Hello, and thank you for this beautiful emulator engine!

    1) I have some problem with the sound.

    Generally the sound and the music is slow

    For example in “Agony” is very bad, with terrible noises.

    Generally in other games the sound and the music is slow or distorced.

    During the disk chargement, the sound chrashing, or slows

    During steps of loading diskettes, or during phases of very complex games (“AGONY”, Jim POwer, : the sound and the music gets worse and slows with buzz and heavy distortion and brutal noises.

    I also noticed that the game sound gets worse when you hear the sound of the diskette drive at the same time with the music

    The audio quality In Prince of Persia is better.

    – In Ruff ‘n’ Tumble is discrete

    in STARDUST is very good

    in Speedball II is good

    Sorry for my bad english.

    I have Ubuntu 12.04 with Xubuntu and xfce

    Kernel Linux 3.2.0-51-generic-pae

    on small (2010) netbook with Intel Atom CPU N270 1.60 GHz x 2

    in Configurations I run:

    # accuracy = 0
    # video_format = rgb565
    # video_sync = off

    2) VIDEO Performances:
    – Some games are very fast, fluid and almost perfect: Stardust, Marble Madness, Speedball II, Alien Breed Special Edition, Chaos Engine, Exile;

    -Ruff n Tumble is good

    “Stardust” and “Exile”: very 100% perfect in game phases, (not in the intro main theme)

    Others games are slow: sensible world of soccer, agony 🙁

    and very slow: jim Power

    • Hi, sorry for late response. I think that your main problem is that your Intel Atom CPU N270 1.60 GHz is too slow to run FS-UAE at full speed. When the emulation cannot run at 100%, this will cause the audio to stutter. Some games are much more demanding to emulate then others, which explains why some games run fine while others do not. It depends how much the games “push” the Amiga.

      On this benchmark page, Intel Atom N270 @ 1.60GHz has a score of 240 which is very low. I don’t know any exact minimum requirement for FS-UAE, but this is probably well below :-/

  6. Pingback: Auto zoom hurts… | Back to the Code

Leave a Reply

Your email address will not be published. Required fields are marked *