Skip to content

Improve Performance #99

@slazyk

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions