Skip to content

[build] Run dsymutil on multiple files at a time #34149

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

Merged
merged 1 commit into from
Oct 2, 2020

Conversation

edymtt
Copy link
Contributor

@edymtt edymtt commented Oct 1, 2020

The change in #33654 had the effect of not leveraging dsymutil
parallelism -- pass instead multiple file at once.

Addresses rdar://69550787

The change in swiftlang#33654 had the effect of not leveraging dsymutil
parallelism -- pass instead multiple file at once.

Addresses rdar://69550787
@edymtt
Copy link
Contributor Author

edymtt commented Oct 1, 2020

@swift-ci please smoke test

@edymtt
Copy link
Contributor Author

edymtt commented Oct 1, 2020

@swift-ci Please Build Toolchain macOS Platform

@edymtt
Copy link
Contributor Author

edymtt commented Oct 1, 2020

@swift-ci Please Build Toolchain Linux Platform

@edymtt
Copy link
Contributor Author

edymtt commented Oct 1, 2020

@swift-ci Please Build Toolchain Linux Platform

@edymtt
Copy link
Contributor Author

edymtt commented Oct 1, 2020

@swift-ci please smoke test Linux

@swift-ci
Copy link
Contributor

swift-ci commented Oct 2, 2020

macOS Toolchain
Download Toolchain
Git Sha - a0afa41

Install command
tar -zxf swift-PR-34149-709-osx.tar.gz --directory ~/

@swift-ci
Copy link
Contributor

swift-ci commented Oct 2, 2020

Linux Toolchain (Ubuntu 16.04)
Download Toolchain
Git Sha - a0afa41

Install command
tar zxf swift-PR-34149-452-ubuntu16.04.tar.gz
More info

@edymtt
Copy link
Contributor Author

edymtt commented Oct 2, 2020

@swift-ci please smoke test Linux

@edymtt edymtt merged commit 7271fd0 into swiftlang:main Oct 2, 2020
Copy link
Member

@compnerd compnerd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems reasonable to me - but, do we need to worry about memory usage?

edymtt added a commit to edymtt/swift that referenced this pull request Nov 17, 2020
This should enable scaling when using machines with large amount of
RAM.

To better support machines with lower spec, process one binary per
dsymutil invocation (reverting swiftlang#34149).

Add some (limited) facilities to gather the time taken to execute
dsymutil to better assist in tuning the parameter.

Addresses rdar://71018443
@edymtt
Copy link
Contributor Author

edymtt commented Nov 17, 2020

Apologies for the late reply -- that's a fair point, I did not notice any substantial difference in my local experiments with 32 GBs of RAM but that could be a concern on less powerful machines.

For this and other reasons, I'm planning to undo this change as part of #34795

edymtt added a commit that referenced this pull request Dec 1, 2020
This should enable scaling when using machines with large amount of
RAM.

To better support machines with lower spec, process one binary per
dsymutil invocation (reverting #34149).

Add some (limited) facilities to gather the time taken to execute
dsymutil to better assist in tuning the parameter -- these are printed in
JSON format in the log to allow for easier scraping

```
{ "command": "dsymutil", "start": "2020-11-18T18:10:47" }
{ "command": "dsymutil", "end": "2020-11-18T18:14:45" }
```

Addresses rdar://71018443
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants