Open swift-ci opened 7 years ago
@itaiferber?
I'll try to get a Linux build to test and profile.
Comment by Alex Wishart (JIRA)
Any news on this @itaiferber ?
awishart (JIRA User) I didn't manage to get a Linux box up and running, and I've been busy since. I'll try again soon if I can. That being said, the change for SR-4842 was a correctness fix which now involves wrapping and unwrapping more {{Optional}}s. It's expected that more work is going on, but I'm not sure how big a performance impact this has in the real world.
Environment
Ubuntu 16.04 Snapshots: 4.0-DEVELOPMENT-SNAPSHOT-2017-07-31-a, 4.0-DEVELOPMENT-SNAPSHOT-2017-08-01-aAdditional Detail from JIRA
| | | |------------------|-----------------| |Votes | 2 | |Component/s | Foundation | |Labels | Bug | |Assignee | @itaiferber | |Priority | Medium | md5: a79f9fd49920ba661feefb8bed6e854eIssue Description:
We noticed a regression in the performance of JSONSerialization on Linux between 07-31-a and 08-01-a Swift 4.0 snapshots and believe we have narrowed it down to the fix implemented for SR-4842. The regression can be seen by running the microbenchmark here: http://swift.sandbox.bluemix.net/#/repl/599bf6a1dcc75d533468b919 against the 07-31-a snapshot and again against the same snapshot rebuilt with this change (https://github.com/apple/swift-corelibs-foundation/commit/d1d1538eed7bb005c34d12a30e03b5927c040bfb) applied.
Example output from the microbenchmark:
In this instance, serialising an array of 20 values is about 30-40% slower.