Performance Tuning

There are a lot of features in Rapid Evolution, many of which are enabled by default. These features can sometimes use additional memory or resources that have a negative impact on performance for slower machines. This page will guide you through all of the settings under Options which have an impact on performance and what to set them to for optimal speed. It is often necessary to tune the performance of Rapid Evolution when using it in live performances. If changing these settings does not help, you might consider increasing the amount of memory that is assigned to Rapid Evolution.

General

  • cpu utilization: Lowering this value will save more CPU cycles for other applications and the user interface, but only during certain background tasks such as autosaving, BPM/key detection, importing, generating mixes, etc.
    • select
      • disable key lock: If your mixing setup does not support key/pitch locking then you should check this to disable it. This will speed of the computation of harmonically compatible songs, and restrict key searches to only those songs you will be interested in.
      • disable tool tips: The performance gain is minimal but worth mentioning.
      • disable autosaving: Checking this can improve performance for larger collections as Rapid Evolution will not be periodically saving the song database, but you run the risk of losing data if your system crashes before the database is saved (which happens when Rapid Evolution is closed gracefully).
      • disable field autocomplete: Checking this will save memory and eliminate the performance impact of Rapid Evolution trying to predict what you're typing in certain fields.
    • unselect
      • prevent repeat song play: Disabling this option can provide a small speed improvement when searching as Rapid Evolution will not have to check whether each song has been played or not.
      • portable music mode: If your music is not stored on a portable hard drive and you don't need this mode then it should be disabled, as Rapid Evolution won't have to check alternate drives when accessing files.
      • enable debug logging: Additionally debug logging will have a small performance impact, so disable this option unless you are using it.

Display

  • available skins: The default skins tend to be the fastest, as the other skins require more of a customization effort on Rapid Evolution's part.
  • look and feel: For Windows users setting the look and feel to “Windows” might yield better performance versus the Metal look and feel, as it will utilize some of the widgets from the operating system.
  • unselect
    • set cursor blink rate to current bpm: This is just a fun feature that serves no functional purpose, so disable it to improve performance.

Search

  • columns: The number of columns you choose will have a direct impact on the performance of searches in Rapid Evolution. The more columns you choose the more computation is required for Rapid Evolution to draw a row in the table. Certain columns require more computation than others. This probably has the most impact on performance compared to any other setting.
  • filter setup: Filters are a powerful way of browsing music, but require additional memory for the related indexes and also require extra processing to update the filter UI after changes. If you are not using the filters then disabling will significantly improve performance.
    • unselect
      • enable filtering: This is the main toggle for filters. Turning this on requires extra resources and can negatively affect performance.
      • search affects filter: This mode requires more resources than normal filtering. If you are not taking advantage of this feature then it should be disabled.
    • album cover thumbnail width: The smaller the thumbnail width the less memory the album cover icons will consume, thus improving performance.
  • unselect
    • enable in-place editing: Disable this if you're not using it.
    • enforce exclude lists: Disabling this will improve search performance as Rapid Evolution will not have to check the current song's exclude list for each song.
    • find all: do not display repeat songs: Disabling will slightly improve the speed of find all searches.
    • find all: songs must match all selected styles: If a lot of styles are selected, then searching with this enabled could be slower than normal.
    • bpm search: include even multiple tempos/time signatures: Disabling this can slightly improve the speed of BPM searches, but might result in undesirable behavior. For example, a song at 50bpm would not show up as compatible with a 100bpm song.
    • automatically search as search text changes: If your database includes a lot of songs, then this option can be slower and utilize more resources as a search is performed after each key is pressed rather than once at the end. In these cases, it's generally best to disable this feature.
    • exclude songs on the same record: If this feature is not needed or used then disabling it can improve the speed of searches slightly.
    • automatically highlight styles of selected song: If this feature is not used then disabling it will improve performance when selecting songs.
    • smooth update for bpm slider: Disabling this improves performance, especially when you have a lot of songs. When enabled and changing the BPM slider, Rapid Evolution will continually update the search table's values, which can be computationally expensive depending on which columns are displayed.

Mixout

  • columns: As with the search table, the number of columns you choose will have a direct impact on performance. The more columns you choose the more computation is required for Rapid Evolution to draw a row in the table. Certain columns require more computation than others.
  • unselect
    • enable in-place editing: Disable this if you're not using it.

Audio

  • bpm detection accuracy: The highest settings for the BPM detector are generally there for experimental purposes only. At this time, there is really no need to have this on anything but the fastest setting.
  • bpm detection range: The smaller the range the faster BPM detection will be, but can also cause it to be inaccurate if the song being detected falls outside this range.
  • select
    • use os media player: Using an OS media player (such as Winamp, Windows Media Player, FooBar, etc) is recommended as these players are generally more optimized and faster than Rapid Evolution's player.

Song

  • song id display format: The less fields in the song display the faster it will be to render columns and fields with these values.
  • tag reading/writing:
    • id3 tag library: The JID3 tag library is the fastest and is recommended.
      • select
        • disable automatic tag reading: Automatically reading the song's ID3 tags can cause an undesirable performance hit on some machines, so the behavior can be disabled here. However, chances are you'd spend more time entering in that song information than was saved by checking this option.

Server

  • –> select
    • disable use of the mixshare server: Enabling this prevents any communication with the Mixshare server, and can speed up some operations such as adding songs.
    • perform strict searching for server queries: Enabling this will improve the speed of queries as generally less results will be returned.
  • –> unselect
    • automatically query server when adding songs: Querying the Mixshare server can take some time, so disabling this will definitely improve the speed of adding and importing songs. You can still manually query the server in the song properties or from the right/option click menu under database.

Other

  • –> unselect
    • dynamic (styles): Having this option enabled will force Rapid Evolution to do some extra work each time the current song is changed. Disabling this can improve performance.

Java/OS Related

  • If you are running Windows and in an environment low on memory, the virtual memory system will sometimes page Rapid Evolution's memory to disk. This can cause the Rapid Evolution to eat up CPU cycles indefinitely (cause major slowdowns/hangs), which is really just Windows trying to load back objects from disk to memory. If this happens, try to free up memory by removing or not running other programs. If you have enough physical RAM, disabling virtual memory in Windows can render much better performance and will prevent any slowdowns from retrieving memory from disk. This can be done by right clicking My Computer→Properties→Advanced→Performance Settings→Advanced→Virtual Memory: set each disk to “No paging file”.
 
performance_tuning.txt · Last modified: 2007/09/08 23:18 by qualia