Closed Bug 1607940 Opened 2 years ago Closed 1 year ago

WebGL out-of-process prototype

Categories

(Core :: Canvas: WebGL, enhancement, P1)

enhancement

Tracking

()

RESOLVED FIXED
mozilla80
Tracking Status
firefox80 --- fixed

People

(Reporter: jgilbert, Assigned: jgilbert)

References

(Blocks 3 open bugs, Regressed 2 open bugs)

Details

(Keywords: perf-alert)

Crash Data

Attachments

(5 files, 1 obsolete file)

No description provided.
Depends on: 1621762
Depends on: 1624726
Depends on: 1632249
Depends on: 1632283
Depends on: 1643987
  • Use clearer pref names.
  • Default (and only support) IPDL dispatching.
  • Make DispatchCommands async-only.
  • Sync ipdl command per sync webgl entrypoint.
    • Eat the boilerplate cost, since there's not too many.
  • Run SerializedSize off same path as Serialize.
  • All shmem uploads go through normal DispatchCommands.
  • Defer pruning of dead code for now so we can iterate quickly.
  • Use Read/Write(begin,end) instead of (begin,size).
    • This would have prevented a bug where we read/wrote N*sizeof(T)*sizeof(T).
Duplicate of this bug: 1646005
Crash Signature: [@ std::_Hashtable<T>::~_Hashtable]
Blocks: 1638466
No longer depends on: 1638466
Duplicate of this bug: 1646551
Crash Signature: [@ std::_Hashtable<T>::~_Hashtable] → [@ std::_Hashtable<T>::~_Hashtable] [@ Allocator<T>::free | replace_free | std::vector<T>::_Tidy]
Attachment #9160005 - Attachment is obsolete: true

Looking green on try (linux so far): https://treeherder.mozilla.org/#/jobs?repo=try&revision=5b3aaae2483c2cdcae56dbcec74234f6acbc4130
We're going to mark the (web)gli(pc) tests as tier-2 and finish getting them totally green separately.

Crash Signature: [@ std::_Hashtable<T>::~_Hashtable] [@ Allocator<T>::free | replace_free | std::vector<T>::_Tidy] → [@ std::_Hashtable<T>::~_Hashtable] [@ Allocator<T>::free | replace_free | std::vector<T>::_Tidy]
Pushed by jgilbert@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/282eafdb9753
Stand up webgl.out-of-process:true path. r=handyman,nika,froydnj
https://hg.mozilla.org/integration/autoland/rev/9049a0173c60
Add webgl-ipc (gli) CI variant. r=ahal,jmaher
https://hg.mozilla.org/integration/autoland/rev/978c7a6ddb55
IPC TexImage. r=lsalzman,nika,handyman
Regressions: 1654424
Regressions: 1654474
Depends on: 1655000

== Change summary for alert #26566 (as of Tue, 21 Jul 2020 22:55:07 GMT) ==

Regressions:

40% glterrain windows7-32-shippable opt e10s stylo 1.18 -> 1.64
36% glterrain windows10-64-shippable opt e10s stylo 1.22 -> 1.65
14% glterrain macosx1014-64-shippable opt e10s stylo 3.90 -> 4.43

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=26566

Regressions: 1655101
No longer depends on: 1655000
Regressed by: 1655000
Regressions: 1656545
Regressions: 1659225
No longer regressed by: 1655000
Regressions: 1655000

as per comment: https://searchfox.org/mozilla-central/source/taskcluster/taskgraph/transforms/tests.py#289
# TODO: After November 1st 2020, verify this variant is still needed.

I want to know if we still need this variant. If so, can we update the comment to include a new date to check in?

Flags: needinfo?(jgilbert)

Will do.

Flags: needinfo?(jgilbert)
Pushed by jgilbert@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b37b61bcad9f
Extend m-gli variant use until 2021-02-01. r=jmaher DONTBUILD

sorry for another question- I am asking about windows7- we run mochitest-media-gli (opt+debug), windows7-minGW/debug-mochitest-webgl-gli and windows7-shippable/talos-webgl-gli

is 32 bit windows important? if it is, are we running the right tests there? I will be turning off the talos job as our value add from 32 bit windows perf testing is approaching 0, this is why I am asking as I need to hack a config and see other stuff there.

Flags: needinfo?(jgilbert)

(In reply to Joel Maher ( :jmaher ) (UTC -0800) from comment #17)

sorry for another question- I am asking about windows7- we run mochitest-media-gli (opt+debug), windows7-minGW/debug-mochitest-webgl-gli and windows7-shippable/talos-webgl-gli

is 32 bit windows important? if it is, are we running the right tests there? I will be turning off the talos job as our value add from 32 bit windows perf testing is approaching 0, this is why I am asking as I need to hack a config and see other stuff there.

We don't need talos/perf results from 32-bit, but we want (some) testing for correctness/crashes on 32bit for as long as we still support it.

Flags: needinfo?(jgilbert)
You need to log in before you can comment on or make changes to this bug.