-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Adopt the new allocation/growth strategy in Array #30270
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adopt the new allocation/growth strategy in Array #30270
Conversation
@swift-ci please smoke benchmark |
@swift-ci please test |
Build failed |
Build failed |
76da698
to
34b296c
Compare
34b296c
to
8856e81
Compare
@swift-ci please smoke benchmark |
@swift-ci please test |
Build failed |
Build failed |
@swift-ci please test |
@swift-ci please benchmark |
Build failed |
Build failed |
Performance: -O
Code size: -O
Performance: -Osize
Code size: -Osize
Performance: -Onone
Code size: -swiftlibs
How to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
@swift-ci please benchmark |
Performance: -O
Code size: -O
Performance: -Osize
Code size: -Osize
Performance: -Onone
Code size: -swiftlibs
How to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
Well, that experiment was a dismal failure |
This reverts commit 51447fd.
(cherry picked from commit ad99b550f49a4765082a482dc94558e83a23e5d5)
The steep regressions in ArrayAppendGenericStructs and ArrayAppendOptionals appear to be artifacts of the exact sizes of array they use, not something representative of a real problem. Investigating code size further. |
@swift-ci please benchmark |
Performance: -O
Code size: -O
Performance: -Osize
Code size: -Osize
Performance: -Onone
Code size: -swiftlibs
How to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
@swift-ci please benchmark |
Performance: -O
Code size: -O
Performance: -Osize
Code size: -Osize
Performance: -Onone
Code size: -swiftlibs
How to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
@swift-ci please benchmark |
Performance: -O
Code size: -O
Performance: -Osize
Code size: -Osize
Performance: -Onone
Code size: -swiftlibs
How to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
Well, that completely fixed the code size regression for 4 out of 8 libraries. That's something, but dang I was really hoping it'd fix it for the rest. |
@swift-ci please benchmark |
Performance: -O
Code size: -O
Performance: -Osize
Code size: -Osize
Performance: -Onone
Code size: -swiftlibs
How to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
libswiftCoreAudio.dylib is fixed locally, I think it's just riiiiight on the edge of a 4kB block boundary of some sort, so a stray byte here or there bumps it up a bunch and looks alarming. |
Try growing linearly when small and by 1.6 (~matching Cocoa) when larger, to trade CPU for memory.
Tracking in rdar://59684938