Skip to content
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

Profiling Parsing #11218

Closed
rzambre opened this issue May 17, 2016 · 4 comments
Closed

Profiling Parsing #11218

rzambre opened this issue May 17, 2016 · 4 comments
Labels

Comments

@rzambre
Copy link
Contributor

@rzambre rzambre commented May 17, 2016

Ideally we'd like to know how much time Servo spends in its pipeline stages. Currently we have profiling set up for Styling, Primary Layout Passes, Compositing, Painting and Image Saving. We'd like to get profiling numbers in stages like Parsing, Javascript and resource fetching (network). This issue is focusing only on profiling Parsing. Although some profiling code in script_thread.rs exists, it cannot be used along with the existing -p option. The -profile-script-tasks debug option needs to be used by itself. Also, among the tasks being profiled within script_thread.rs, Parsing doesn't seem to be profiled. The profiling in script_thread.rs is being done slightly differently than how profiling for styling, layout, etc. is being done. Let me know if you have ideas about how to go about doing this. I'll keep hacking around as well :)

@jdm
Copy link
Member

@jdm jdm commented May 17, 2016

I have a branch which provides profiling information for HTML parsing, JS evaluation, and HTTP connections. I'll polish it up.

@jdm jdm added the A-profiling label May 17, 2016
@highfive
Copy link

@highfive highfive commented May 17, 2016

@fitzgen
Copy link
Member

@fitzgen fitzgen commented May 17, 2016

See also #10908, which exists to explore ways to automate finding areas where we do not have profiling coverage.

@rzambre
Copy link
Contributor Author

@rzambre rzambre commented May 17, 2016

@jdm that's great, thanks :)
@fitzgen a DMD for Servo would be essential!

bors-servo added a commit that referenced this issue May 18, 2016
Add timeline markers for HTTP requests, JS evaluation, and HTML parsing.

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [ ] `./mach build -d` does not report any errors (didn't try to compile past a rustc upgrade on airplane wifi)
- [X] `./mach test-tidy --faster` does not report any errors
- [X] These changes fix #11218 (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because we don't have testing infrastructure for profiling.

Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11239)
<!-- Reviewable:end -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

4 participants
You can’t perform that action at this time.