{"action":"created","issue":{"url":"https://api.github.com/repos/realm/realm-cocoa/issues/3561","repository_url":"https://api.github.com/repos/realm/realm-cocoa","labels_url":"https://api.github.com/repos/realm/realm-cocoa/issues/3561/labels{/name}","comments_url":"https://api.github.com/repos/realm/realm-cocoa/issues/3561/comments","events_url":"https://api.github.com/repos/realm/realm-cocoa/issues/3561/events","html_url":"https://github.com/realm/realm-cocoa/pull/3561","id":154362791,"number":3561,"title":"Update performance baselines","user":{"login":"tgoyne","id":408944,"avatar_url":"https://avatars.githubusercontent.com/u/408944?v=3","gravatar_id":"","url":"https://api.github.com/users/tgoyne","html_url":"https://github.com/tgoyne","followers_url":"https://api.github.com/users/tgoyne/followers","following_url":"https://api.github.com/users/tgoyne/following{/other_user}","gists_url":"https://api.github.com/users/tgoyne/gists{/gist_id}","starred_url":"https://api.github.com/users/tgoyne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgoyne/subscriptions","organizations_url":"https://api.github.com/users/tgoyne/orgs","repos_url":"https://api.github.com/users/tgoyne/repos","events_url":"https://api.github.com/users/tgoyne/events{/privacy}","received_events_url":"https://api.github.com/users/tgoyne/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/realm/realm-cocoa/labels/S:In%20Progress","name":"S:In Progress","color":"ededed"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2016-05-11T23:06:33Z","updated_at":"2016-05-12T18:19:47Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/realm/realm-cocoa/pulls/3561","html_url":"https://github.com/realm/realm-cocoa/pull/3561","diff_url":"https://github.com/realm/realm-cocoa/pull/3561.diff","patch_url":"https://github.com/realm/realm-cocoa/pull/3561.patch"},"body":"Set `maxRegression` to 1ms for all tests, as it turns out that both the absolute and relative thresholds must be hit for a perf test to fail.\r\n\r\nUpdate all baselines to the performance of current master. In most cases this is faster than the previous baseline for Swift tests (often significantly slow). A bunch of baselines were also previously missing entirely, and we had some baselines for a target which doesn't even exist in the project any more.\r\n\r\nThe following tests had their baselines made slower:\r\n\r\nRealm.testDeleteAll, Realm.testQueryDeletion, RealmSwift.testQueryDeletion: These were made slower by adding more classes which link to the objects being deleted, and basically all of the time is spent updating backlinks.\r\n\r\nRealm.testRealmCreationCached, RealmSwift.testRealmCreationCached: Made slower by the robust interprocess mutex change.\r\n\r\nRealmSwift.testCountWhereTableView: Not sure why this is slower. Profiler says ~90% of the runtime is in the single call to `Query::find_all()`, so it's not due to binding changes.\r\n\r\nSome of the KVO tests were modified because it turned out that they were actually mostly just benchmarking how long it takes to create an RLMArray, which got slower due to the change to make LinkList destruction thread-safe.\r\n\r\n`testCrossThreadSyncLatency()` had regressed a bit due to core changes, but the changes in the first commit bring it back to its old speed."},"comment":{"url":"https://api.github.com/repos/realm/realm-cocoa/issues/comments/218842187","html_url":"https://github.com/realm/realm-cocoa/pull/3561#issuecomment-218842187","issue_url":"https://api.github.com/repos/realm/realm-cocoa/issues/3561","id":218842187,"user":{"login":"tgoyne","id":408944,"avatar_url":"https://avatars.githubusercontent.com/u/408944?v=3","gravatar_id":"","url":"https://api.github.com/users/tgoyne","html_url":"https://github.com/tgoyne","followers_url":"https://api.github.com/users/tgoyne/followers","following_url":"https://api.github.com/users/tgoyne/following{/other_user}","gists_url":"https://api.github.com/users/tgoyne/gists{/gist_id}","starred_url":"https://api.github.com/users/tgoyne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgoyne/subscriptions","organizations_url":"https://api.github.com/users/tgoyne/orgs","repos_url":"https://api.github.com/users/tgoyne/repos","events_url":"https://api.github.com/users/tgoyne/events{/privacy}","received_events_url":"https://api.github.com/users/tgoyne/received_events","type":"User","site_admin":false},"created_at":"2016-05-12T18:19:47Z","updated_at":"2016-05-12T18:19:47Z","body":"So it looks like the reason why a bunch of Swift tests got faster was due to OS-level changes, and not compiler improvements or changes in our code. The CI iPad is running 8.4, but I generated the baselines with one running 9.1, and the OS version isn't recorded in the baseline file."}}