Summary: | Disable usage of fused multiply-add instructions for JSC with compiler flag | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Dominik Inführ <dominik.infuehr> | ||||
Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | commit-queue, fpizlo, mark.lam, saam, webkit-bug-importer, ysuzuki | ||||
Priority: | P2 | Keywords: | InRadar | ||||
Version: | WebKit Nightly Build | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
Dominik Inführ
2018-04-24 00:46:25 PDT
Created attachment 338641 [details]
Patch
Comment on attachment 338641 [details]
Patch
Can you limit the scope of this change? If fused-multiply-add works well, we do not need this flag.
Fused multiply-add gives a precision boost that results in double math returning a result that does not match bit-for-bit what you would have gotten without the fusion. Based on this, I think it might be a good idea to disable it for all of JSC. I would definitely want to disable it if it’s free to disable it. (In reply to Filip Pizlo from comment #3) > Fused multiply-add gives a precision boost that results in double math > returning a result that does not match bit-for-bit what you would have > gotten without the fusion. Based on this, I think it might be a good idea to > disable it for all of JSC. > > I would definitely want to disable it if it’s free to disable it. Interesting. After considering about this, I think, in JSC, we do not have performance sensitive FMAs (I believe). So disabling is OK. I'm a bit worried about disabling this in the entire WebKit tree due to, 1. performance reason. If we have a non-result-sensitive performance-sensitive FMAs, this can affect on that (like, implementing some graphic filters) 2. coordination with third party libraries. what do you think of? (In reply to Yusuke Suzuki from comment #4) > (In reply to Filip Pizlo from comment #3) > > Fused multiply-add gives a precision boost that results in double math > > returning a result that does not match bit-for-bit what you would have > > gotten without the fusion. Based on this, I think it might be a good idea to > > disable it for all of JSC. > > > > I would definitely want to disable it if it’s free to disable it. > > Interesting. After considering about this, I think, in JSC, we do not have > performance sensitive FMAs (I believe). So disabling is OK. > I'm a bit worried about disabling this in the entire WebKit tree due to, > > 1. performance reason. If we have a non-result-sensitive > performance-sensitive FMAs, this can affect on that (like, implementing some > graphic filters) > 2. coordination with third party libraries. > > what do you think of? Sounds like a good reason to only disable fused fma in JSC and leave it elsewhere. The patch was already reviewed, is there anything for me left to do? Comment on attachment 338641 [details] Patch Clearing flags on attachment: 338641 Committed r231301: <https://trac.webkit.org/changeset/231301> All reviewed patches have been landed. Closing bug. |