Closed Bug 1804226 Opened 1 year ago Closed 1 year ago

Investigate using fma instructions for intel architectures in dom/media/webaudio/AudioNodeEngine

Categories

(Core :: Web Audio, defect)

defect

Tracking

()

RESOLVED FIXED
111 Branch
Tracking Status
firefox109 --- wontfix
firefox110 --- wontfix
firefox111 --- fixed

People

(Reporter: sergesanspaille, Assigned: sergesanspaille)

Details

Attachments

(1 file)

A few kernels may benefit from fma there, it's probably worth giving it a try once the move to xsimd is finalized.

Update xsimd dependency to integrate an fma portability patch.
Add support for fma and sse4.2 detection.

Pushed by sledru@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/55a4d00bc8b2
fma3 support for AudioNodeEngine r=padenot
Backout by sstanca@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/88b60afa1220
Backed out 3 changesets (bug 1804226, bug 1801557) for AudioNodeEngine bustages related. CLOSED TREE

Backed out for AudioNodeEngine bustages related.

It also caused mochitests failures.

  • Push with failures
  • Failure Log
  • Failure line: TEST-UNEXPECTED-FAIL | dom/media/webaudio/test/test_mediaDecoding.html | maxDifference: 0.42657470703125, first bad index: 8549 with test-data offset 0 and expected-data offset 0; corresponding values 0.01031494140625 and 0 --- differences - got 10952, expected +0
Flags: needinfo?(sguelton)
Pushed by sledru@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/4615951ea4dd
fma3 support for AudioNodeEngine r=padenot

Backed out for causing build bustages on AudioNodeEngineGeneric.h

Pushed by padenot@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/fc718f9cc51d
fma3 support for AudioNodeEngine r=padenot

Backed out for causing failures on AudioNodeEngineGeneric.h

Backout link

Push with failures - mda -> Failure log

Push with failures - gtest -> Failure log

Type: enhancement → defect
Pushed by padenot@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/99419440af5c
fma3 support for AudioNodeEngine r=padenot
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 110 Branch

Is there something I can do about this? I'm unable to run any tests at the moment due to this error:

$ mach test browser/components/firefoxview/tests/browser/browser.ini --headless
 C:/mozilla-git/mozilla-central/obj-firefox/artifact/backend.TestManifestBackend is out of date with respect to C:/mozilla-git/mozilla-central/browser/base/content/test/tabMediaIndicator/browser.ini
Test configuration changed. Regenerating backend.
Error running mach:

    ['test', 'browser/components/firefoxview/tests/browser/browser.ini', '--headless']

The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.
You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file test| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.

If filing a bug, please include the full output of mach, including this error
message.

The details of the failure are as follows:

mozbuild.frontend.reader.BuildReaderError:
==============================
FATAL ERROR PROCESSING MOZBUILD FILE
==============================

The error occurred while processing the following file:

    C:/mozilla-git/mozilla-central/dom/media/webaudio/moz.build

The error was triggered on line 145 of this file:

    CONFIG["SSE4_2_FLAGS"] + CONFIG["FMA_FLAGS"]

An error was encountered as part of executing the file itself. The error appears to be the fault of the script.

The error as reported by Python is:

    ["TypeError: unsupported operand type(s) for +: 'NoneType' and 'NoneType'\n"]


  File "C:\mozilla-git\mozilla-central\testing\mach_commands.py", line 385, in test
    run_suites, run_tests = resolver.resolve_metadata(what)
  File "c:\mozilla-git\mozilla-central\testing\mozbase\moztest\moztest\resolve.py", line 1020, in resolve_metadata
    tests = list(self.resolve_tests(paths=[relpath]))
  File "c:\mozilla-git\mozilla-central\testing\mozbase\moztest\moztest\resolve.py", line 985, in resolve_tests
    for test in self._resolve(**kwargs):
  File "c:\mozilla-git\mozilla-central\testing\mozbase\moztest\moztest\resolve.py", line 748, in _resolve
    if path in self.test_dirs or any(
  File "c:\mozilla-git\mozilla-central\testing\mozbase\moztest\moztest\resolve.py", line 660, in test_dirs
    for test in self.tests:
  File "c:\mozilla-git\mozilla-central\testing\mozbase\moztest\moztest\resolve.py", line 624, in tests
    for test in self.load_tests():
  File "c:\mozilla-git\mozilla-central\testing\mozbase\moztest\moztest\resolve.py", line 496, in __call__
    gen_test_backend()
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\gen_test_backend.py", line 49, in gen_test_backend
    backend.consume(data)
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\backend\base.py", line 121, in consume
    for obj in objs:
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\emitter.py", line 144, in emit
    for out in output:
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 914, in read_topsrcdir
    for r in self.read_mozbuild(path, self.config):
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1092, in read_mozbuild
    raise bre
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1086, in read_mozbuild
    for s in self._read_mozbuild(
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1250, in _read_mozbuild
    for res in self.read_mozbuild(
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1092, in read_mozbuild
    raise bre
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1086, in read_mozbuild
    for s in self._read_mozbuild(
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1250, in _read_mozbuild
    for res in self.read_mozbuild(
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1092, in read_mozbuild
    raise bre
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1086, in read_mozbuild
    for s in self._read_mozbuild(
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1250, in _read_mozbuild
    for res in self.read_mozbuild(
  File "c:\mozilla-git\mozilla-central\python\mozbuild\mozbuild\frontend\reader.py", line 1100, in read_mozbuild
    raise BuildReaderError(

Edit: Actually, I'm unable to build too.

FWIW, this is a windows 10 desktop with an AMD ryzen 9 5950x

Shane, if you update to the latest central rev (https://hg.mozilla.org/mozilla-central/rev/9af5d0877b6be5c07e3f50face4a7911734910dc) you should be able to have green builds.

Flags: needinfo?(shughes)

(In reply to Cosmin Sabou [:CosminS] from comment #14)

Shane, if you update to the latest central rev (https://hg.mozilla.org/mozilla-central/rev/9af5d0877b6be5c07e3f50face4a7911734910dc) you should be able to have green builds.

Thanks for the quick response! (mach is working again)

Flags: needinfo?(shughes)
Pushed by padenot@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a7f629f619ba
fma3 support for AudioNodeEngine r=padenot
Status: REOPENED → RESOLVED
Closed: 1 year ago1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 111 Branch

Since nightly and release are affected, beta will likely be affected too.
For more information, please visit auto_nag documentation.

Flags: needinfo?(sguelton)

The patch landed in nightly and beta is affected.
:sergesanspaille, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox110 to wontfix.

For more information, please visit auto_nag documentation.

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

Attachment

General

Created:
Updated:
Size: