Skip to content

Improve Performance #99

Description

@slazyk

Surprisingly, the plugin becomes slower on newer versions of Xcode. Need to re-evaluate performance bottlenecks. Last big performance optimisation was done when Xcode 5 was still around :)

Initial investigation of performance under Xcode 7.1 shows that getting a priority factor has (only now, or had it always?) a synchronized part, and can make parallel processing slower than single thread when many items pass the filtering.

Also, it takes surprisingly long (even given it does synchronize) and the priorities do not change when narrowing down.

  • use single thread for getting priority factors
  • cache priority factors for narrowing down
  • make filtering before populating the cache also parallel
  • investigate how Xcode filtering and scoring changed
  • identify other bottlenecks

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions