Closed
Bug 1679763
Opened 3 years ago
Closed 3 years ago
Explicitly instantiate often-used profiler templates
Categories
(Core :: Gecko Profiler, task, P3)
Core
Gecko Profiler
Tracking
()
RESOLVED
FIXED
85 Branch
Tracking | Status | |
---|---|---|
firefox85 | --- | fixed |
People
(Reporter: sg, Assigned: sg)
Details
Attachments
(1 file)
No description provided.
Assignee | ||
Comment 1•3 years ago
|
||
Severity: -- → N/A
Priority: -- → P3
For more context, this bug was spawned from bug 1676361 comment 5, in particular:
ClangBuildAnalyzer identifies these as among the templates that are most costly to instantiate:
4017 ms: mozilla::baseprofiler::AddMarker<mozilla::baseprofiler::markers::Text, std::__cxx11::basic_string<char>> (527 times, avg 7 ms) 4010 ms: mozilla::baseprofiler::AddMarkerToBuffer<mozilla::baseprofiler::markers::NoPayload> (527 times, avg 7 ms) 3932 ms: mozilla::baseprofiler::AddMarkerToBuffer<mozilla::baseprofiler::markers::Text, std::__cxx11::basic_string<char>> (527 times, avg 7 ms) 3906 ms: mozilla::base_profiler_markers_detail::AddMarkerToBuffer<mozilla::baseprofiler::markers::NoPayload> (527 times, avg 7 ms) 3832 ms: mozilla::base_profiler_markers_detail::AddMarkerToBuffer<mozilla::baseprofiler::markers::Text, std::__cxx11::basic_string<char>> (527 times, avg 7 ms) 3669 ms: mozilla::base_profiler_markers_detail::AddMarkerWithOptionalStackToBuffer<mozilla::baseprofiler::markers::NoPayload> (527 times, avg 6 ms) 3570 ms: mozilla::base_profiler_markers_detail::AddMarkerWithOptionalStackToBuffer<mozilla::baseprofiler::markers::Text, std::__cxx11::basic_string<char>> (527 times, avg 6 ms) 3390 ms: mozilla::base_profiler_markers_detail::MarkerTypeSerialization<mozilla::baseprofiler::markers::Text>::Serialize<std::__cxx11::basic_string<char>> (527 times, avg 6 ms)
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fdd4de984fd3 Explicitly instantiate often-used profiler templates. r=gerald
Comment 4•3 years ago
|
||
Backed out changeset fdd4de984fd3 (bug 1679763) for profiler related bustage.
Backout link: https://hg.mozilla.org/integration/autoland/rev/3b89114798ca6df93ac4a5e6035720fd4c65eeb0
Failure log: https://treeherder.mozilla.org/logviewer?job_id=323340036&repo=autoland&lineNumber=8444
[task 2020-12-02T18:06:19.705Z] 18:06:19 INFO - make[4]: Entering directory '/builds/worker/workspace/obj-build/mozglue/baseprofiler'
[task 2020-12-02T18:06:19.705Z] 18:06:19 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang-cl -Xclang -std=c++17 -m32 -Foshared-libraries-win32.obj -c -I/builds/worker/workspace/obj-build/dist/stl_wrappers -Xclang -ftrivial-auto-var-init=pattern -guard:cf -DDEBUG=1 -DIMPL_MFBT -DMOZ_VTUNE_INSTRUMENTATION -DIMPL_MFBT -DMOZ_HAS_MOZGLUE -I/builds/worker/checkouts/gecko/mozglue/baseprofiler -I/builds/worker/workspace/obj-build/mozglue/baseprofiler -I/builds/worker/checkouts/gecko/mozglue/baseprofiler/core -I/builds/worker/checkouts/gecko/mozglue/linker -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -MD -FI /builds/worker/workspace/obj-build/mozilla-config.h -DMOZILLA_CLIENT -Qunused-arguments -Qunused-arguments -fcrash-diagnostics-dir=/builds/worker/artifacts -TP -Zc:sizedDealloc- -D_HAS_EXCEPTIONS=0 -W3 -Gy -Zc:inline -arch:SSE2 -Gw -Wno-inline-new-delete -Wno-invalid-offsetof -Wno-microsoft-enum-value -Wno-microsoft-include -Wno-unknown-pragmas -Wno-ignored-pragmas -Wno-deprecated-declarations -Wno-invalid-noreturn -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-microsoft-exception-spec -Wno-unused-local-typedef -Wno-ignored-attributes -Wno-used-but-marked-unused -D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING -GR- -Z7 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -Oy- -Werror -Xclang -fexperimental-new-pass-manager -Xclang -MP -Xclang -dependency-file -Xclang .deps/shared-libraries-win32.obj.pp -Xclang -MT -Xclang shared-libraries-win32.obj /builds/worker/checkouts/gecko/mozglue/baseprofiler/core/shared-libraries-win32.cc
[task 2020-12-02T18:06:19.707Z] 18:06:19 INFO - In file included from /builds/worker/checkouts/gecko/mozglue/baseprofiler/core/shared-libraries-win32.cc:11:
[task 2020-12-02T18:06:19.707Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/BaseProfilerSharedLibraries.h:10:
[task 2020-12-02T18:06:19.709Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/BaseProfiler.h:711:
[task 2020-12-02T18:06:19.710Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/mozilla/BaseProfilerMarkers.h:34:
[task 2020-12-02T18:06:19.714Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/mozilla/BaseProfilerMarkersDetail.h:14:
[task 2020-12-02T18:06:19.714Z] 18:06:19 INFO - /builds/worker/workspace/obj-build/dist/include/mozilla/BaseProfilerMarkersPrerequisites.h(865,39): error: explicit instantiation of 'emplace_back' does not refer to a function template, variable template, member function, member class, or static data member
[task 2020-12-02T18:06:19.714Z] 18:06:19 INFO - mozilla::MarkerSchema::DataRowVector::emplace_back(
[task 2020-12-02T18:06:19.714Z] 18:06:19 INFO - ^
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - /builds/worker/checkouts/gecko/vs2017_15.8.4/VC/include/vector(915,18): note: candidate template ignored: could not match 'decltype(auto)' against 'mozilla::Variant<mozilla::MarkerSchema::DynamicData, mozilla::MarkerSchema::StaticData> &'
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - decltype(auto) emplace_back(_Valty&&... _Val)
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - ^
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - In file included from /builds/worker/checkouts/gecko/mozglue/baseprofiler/core/shared-libraries-win32.cc:11:
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/BaseProfilerSharedLibraries.h:10:
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/BaseProfiler.h:711:
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/mozilla/BaseProfilerMarkers.h:34:
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - In file included from /builds/worker/workspace/obj-build/dist/include/mozilla/BaseProfilerMarkersDetail.h:14:
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - /builds/worker/workspace/obj-build/dist/include/mozilla/BaseProfilerMarkersPrerequisites.h(870,39): error: explicit instantiation of 'emplace_back' does not refer to a function template, variable template, member function, member class, or static data member
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - mozilla::MarkerSchema::DataRowVector::emplace_back(
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - ^
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - /builds/worker/checkouts/gecko/vs2017_15.8.4/VC/include/vector(915,18): note: candidate template ignored: could not match 'decltype(auto)' against 'mozilla::Variant<mozilla::MarkerSchema::DynamicData, mozilla::MarkerSchema::StaticData> &'
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - decltype(auto) emplace_back(_Valty&&... _Val)
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - ^
[task 2020-12-02T18:06:19.715Z] 18:06:19 INFO - 2 errors generated.
[task 2020-12-02T18:06:19.715Z] 18:06:19 ERROR - make[4]: *** [/builds/worker/checkouts/gecko/config/rules.mk:676: shared-libraries-win32.obj] Error 1
[task 2020-12-02T18:06:19.716Z] 18:06:19 INFO - make[4]: Leaving directory '/builds/worker/workspace/obj-build/mozglue/baseprofiler'
[task 2020-12-02T18:06:19.716Z] 18:06:19 INFO - make[4]: *** Waiting for unfinished jobs....
Flags: needinfo?(sgiesecke)
Assignee | ||
Comment 5•3 years ago
|
||
It looks like we can't instantiate std::vector::emplace_back
explicitly in a portable way. I'll remove that part.
Flags: needinfo?(sgiesecke)
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/bbaec7089a14 Explicitly instantiate often-used profiler templates. r=gerald
Comment 7•3 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
status-firefox85:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 85 Branch
You need to log in
before you can comment on or make changes to this bug.
Description
•