Page MenuHomePhabricator

qiucf (Qiu Chaofan)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 3 2019, 9:30 PM (28 w, 22 h)

Recent Activity

Thu, Sep 12

qiucf committed rGb7fb5d0f6f2a: [DAGCombiner] Improve division estimation of floating points. (authored by qiucf).
[DAGCombiner] Improve division estimation of floating points.
Thu, Sep 12, 12:53 AM

Mon, Sep 9

qiucf updated the diff for D66050: Improve division estimation of floating points..

Remove unexpected changed file caused by newline characters.

Mon, Sep 9, 9:08 PM · Restricted Project
qiucf updated the diff for D66050: Improve division estimation of floating points..

Upload patch with full context.

Mon, Sep 9, 8:05 PM · Restricted Project
qiucf updated the diff for D66050: Improve division estimation of floating points..

Update patch to fix check regressions from recent commits.

Mon, Sep 9, 1:21 AM · Restricted Project

Thu, Sep 5

qiucf added a comment to D66050: Improve division estimation of floating points..

I updated a test for testing this new way of division estimations. It's posted at https://github.com/ecnelises/fp-division-test/blob/master/algorithm_test.c so people can do test by their own. Here are my accuracy results:

Thu, Sep 5, 1:02 AM · Restricted Project

Tue, Sep 3

qiucf added a comment to D66050: Improve division estimation of floating points..

I think these two points weren't addressed.
I'd like to see at least some publicly-stated numbers on accuracy,
just so we all know this is going in the right direction for all inputs.

Changing my 'accepted' until this is answered.

The test at:
https://github.com/ecnelises/fp-division-test/
...seems to do a small random sampling.

The original transform was tested on x86 using brute force for all possible floats (1.0f/x) and is attached here:
https://bugs.llvm.org/show_bug.cgi?id=21385

I'm not sure how to prove this, but by distributing the multiplication into the last step of the estimate, I think we are always trading better accuracy around the numerator value with potentially overflowing to infinity for extremely different numerator/denominator. That's a good trade-off IMO and within the loosely-defined behavior enabled by 'arcp' in LLVM and '-mrecip' with Clang.

Tue, Sep 3, 12:10 AM · Restricted Project

Mon, Sep 2

qiucf added a comment to rL370071: [DAGCombiner] cancel fnegs from multiplied operands of FMA.

Thanks!

Mon, Sep 2, 12:18 AM
qiucf added inline comments to D66050: Improve division estimation of floating points..
Mon, Sep 2, 12:15 AM · Restricted Project
qiucf updated the diff for D66050: Improve division estimation of floating points..

Update test to reflect changes introduced in rL370071.

Mon, Sep 2, 12:15 AM · Restricted Project

Tue, Aug 27

BlackAngel35 awarded D66050: Improve division estimation of floating points. a Y So Serious token.
Tue, Aug 27, 2:36 PM · Restricted Project

Mon, Aug 26

qiucf updated the diff for D66050: Improve division estimation of floating points..

Fix typo and rebase.

Mon, Aug 26, 6:22 AM · Restricted Project
qiucf added inline comments to D66050: Improve division estimation of floating points..
Mon, Aug 26, 6:17 AM · Restricted Project

Thu, Aug 22

qiucf added a comment to D66050: Improve division estimation of floating points..

I posted a simple test for fp division on GitHub.
This patch helps on the accuracy especially when compared with GCC. :)
@nemanjai @lebedev.ri

Thu, Aug 22, 3:02 AM · Restricted Project

Sun, Aug 18

qiucf updated the diff for D66050: Improve division estimation of floating points..

Rebase to fix regression.

Sun, Aug 18, 9:51 AM · Restricted Project

Aug 16 2019

qiucf updated the diff for D66050: Improve division estimation of floating points..

Fix broken LIT tests.

Aug 16 2019, 2:11 AM · Restricted Project

Aug 14 2019

qiucf updated the diff for D66050: Improve division estimation of floating points..

Update patch format.

Aug 14 2019, 1:40 AM · Restricted Project
qiucf updated the summary of D66050: Improve division estimation of floating points..
Aug 14 2019, 1:33 AM · Restricted Project
qiucf added a comment to D66050: Improve division estimation of floating points..
  1. The patch needs full context to be reviewable
  2. The formatting needs to be fixed up (some lines too long, etc.)
  3. We need testing (I imagine this makes a bunch of LIT tests fail which need to be updated)
Aug 14 2019, 1:30 AM · Restricted Project
qiucf added a comment to D66050: Improve division estimation of floating points..

Missing test coverage; performance/precision overview - how much of performance do we loose for how much extra precision, comparison with native division?

Aug 14 2019, 1:19 AM · Restricted Project

Aug 13 2019

qiucf committed rG4fb99a3330e9: [PowerPC] Fix ICE when truncating some vectors (authored by qiucf).
[PowerPC] Fix ICE when truncating some vectors
Aug 13 2019, 12:54 AM

Aug 10 2019

qiucf created D66050: Improve division estimation of floating points..
Aug 10 2019, 3:41 AM · Restricted Project

Aug 9 2019

qiucf added inline comments to D65261: [PowerPC] Fix ICE when truncating to vector with odd-size elements..
Aug 9 2019, 12:14 AM · Restricted Project
qiucf added a comment to D65261: [PowerPC] Fix ICE when truncating to vector with odd-size elements..

pr25080.ll

Did you write a wrong PR number?

Aug 9 2019, 12:05 AM · Restricted Project

Aug 8 2019

qiucf added a reviewer for D65261: [PowerPC] Fix ICE when truncating to vector with odd-size elements.: qshanz.
Aug 8 2019, 12:10 AM · Restricted Project

Aug 1 2019

qiucf created D65630: [PowerPC] Port SSE3, SSSE3 and SSE4 intrinsics to PowerPC..
Aug 1 2019, 7:59 PM · Restricted Project, Restricted Project

Jul 24 2019

qiucf created D65261: [PowerPC] Fix ICE when truncating to vector with odd-size elements..
Jul 24 2019, 7:49 PM · Restricted Project

Jul 16 2019

qiucf added a reviewer for D64850: Remove use of malloc in PPC mm_malloc.: hfinkel.
Jul 16 2019, 11:33 PM · Restricted Project, Restricted Project
qiucf updated subscribers of D64850: Remove use of malloc in PPC mm_malloc..
Jul 16 2019, 11:25 PM · Restricted Project, Restricted Project
qiucf created D64850: Remove use of malloc in PPC mm_malloc..
Jul 16 2019, 11:25 PM · Restricted Project, Restricted Project
qiucf created D64849: Add platform guards to PPC vector intrinsics headers..
Jul 16 2019, 11:21 PM · Restricted Project, Restricted Project

May 19 2019

qiucf created D62121: [PowerPC] [Clang] Port SSE intrinsics to PowerPC.
May 19 2019, 11:05 PM · Restricted Project, Restricted Project

Apr 28 2019

qiucf added a comment to rG8eeb33497cd1: [PowerPC][Clang] Add tests for PowerPC MMX intrinsics.

this test is currently failing on master on my PC. here is the dump of the test failure.

Apr 28 2019, 7:20 AM

Apr 27 2019

qiucf committed rG8eeb33497cd1: [PowerPC][Clang] Add tests for PowerPC MMX intrinsics (authored by qiucf).
[PowerPC][Clang] Add tests for PowerPC MMX intrinsics
Apr 27 2019, 11:26 PM

Apr 23 2019

qiucf added a comment to rC358953: [PowerPC] Fix test with -fno-discard-value-names after rC358949.

Thanks for your fix! Is the build #12923 failure related to the patch?

Apr 23 2019, 2:43 AM

Apr 22 2019

qiucf committed rG19828e399b3d: [PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power (authored by qiucf).
[PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power
Apr 22 2019, 10:51 PM
qiucf committed rGab66e34c637b: add Qiu Chaofan (qiucf@cn.ibm.com) to the CREDITS.txt (authored by qiucf).
add Qiu Chaofan (qiucf@cn.ibm.com) to the CREDITS.txt
Apr 22 2019, 7:37 PM

Apr 9 2019

qiucf added a comment to D59924: [PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power.

Part of a function signature can also match where it is called, so the test failed. I did the changes to pass the test but diff file was generated locally so it didn't contain this change. Sorry for the mistake.

Apr 9 2019, 11:47 PM · Restricted Project
qiucf updated the diff for D59924: [PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power.

Fix error about a mismatch in mmintrin test cases.

Apr 9 2019, 10:55 PM · Restricted Project
qiucf updated the summary of D59924: [PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power.
Apr 9 2019, 12:04 AM · Restricted Project
qiucf updated the diff for D59924: [PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power.
  • Add more check of mmintrin generated IR against endianness.
  • Fix typo in PPCLinux header.
  • Fix command error in ppc intrinsics header test.
Apr 9 2019, 12:04 AM · Restricted Project

Apr 8 2019

qiucf added inline comments to D59924: [PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power.
Apr 8 2019, 11:34 PM · Restricted Project

Mar 28 2019

qiucf created D59924: [PowerPC] [Clang] Port MMX intrinsics and basic test cases to Power.
Mar 28 2019, 2:36 AM · Restricted Project