Page MenuHomePhabricator

orex (Kirill Okhotnikov)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 4 2022, 3:39 AM (10 w, 4 d)

Recent Activity

Fri, Aug 12

orex accepted D131715: [libc] Implement tanf function correctly rounded for all rounding modes..
Fri, Aug 12, 1:39 AM · Restricted Project, Restricted Project

Thu, Aug 11

orex accepted D131652: [libc] Change sinf/cosf range reduction to mod pi/32 to be shared with tanf..
Thu, Aug 11, 1:39 AM · Restricted Project, Restricted Project

Thu, Aug 4

orex accepted D131196: [libc] Add subtraction for UInt<N> class..
Thu, Aug 4, 3:57 PM · Restricted Project, Restricted Project
orex added a comment to D131095: [libc] Prevent overflow from intermediate results when adding UInt<N> values..

Did you consider using builtins with overflow checking:
https://gcc.gnu.org/onlinedocs/gcc/Integer-Overflow-Builtins.html
It is platform independent and leaves some optimisations opportunities to the compiler.

Thu, Aug 4, 7:52 AM · Restricted Project, Restricted Project
orex added inline comments to D131095: [libc] Prevent overflow from intermediate results when adding UInt<N> values..
Thu, Aug 4, 7:37 AM · Restricted Project, Restricted Project
orex added inline comments to D131095: [libc] Prevent overflow from intermediate results when adding UInt<N> values..
Thu, Aug 4, 1:14 AM · Restricted Project, Restricted Project

Wed, Aug 3

orex accepted D131095: [libc] Prevent overflow from intermediate results when adding UInt<N> values..
Wed, Aug 3, 2:51 PM · Restricted Project, Restricted Project

Mon, Aug 1

orex accepted D130901: [libc] Implement sincosf function correctly rounded to all rounding modes..
Mon, Aug 1, 3:45 PM · Restricted Project, Restricted Project
orex committed rG2a558b6bff5a: [libc][math] Build fail fix: obsolete header. (authored by orex).
[libc][math] Build fail fix: obsolete header.
Mon, Aug 1, 1:55 PM · Restricted Project, Restricted Project
orex committed rG5ef987c9852c: [libc][math] Added tanhf function. (authored by orex).
[libc][math] Added tanhf function.
Mon, Aug 1, 1:43 PM · Restricted Project, Restricted Project
orex closed D130780: [libc][math] Added tanhf function..
Mon, Aug 1, 1:43 PM · Restricted Project, Restricted Project

Fri, Jul 29

orex added a comment to D127951: [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf..

Paul (@zimmermann6) and Tue (@lntue),

Fri, Jul 29, 9:00 AM · Restricted Project, Restricted Project
orex added a reviewer for D127951: [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf.: zimmermann6.
Fri, Jul 29, 8:56 AM · Restricted Project, Restricted Project
orex updated the diff for D127951: [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf..

Rebased to latest main.

Fri, Jul 29, 8:51 AM · Restricted Project, Restricted Project
orex committed rGa7f55f08051f: [libc][math] Added sinhf function. (authored by orex).
[libc][math] Added sinhf function.
Fri, Jul 29, 8:24 AM · Restricted Project, Restricted Project
orex closed D129278: [libc][math] Added sinhf function..
Fri, Jul 29, 8:24 AM · Restricted Project, Restricted Project
orex committed rGfcb9d7e2cf17: [libc][math] Added coshf function. (authored by orex).
[libc][math] Added coshf function.
Fri, Jul 29, 7:57 AM · Restricted Project, Restricted Project
orex closed D129275: [libc][math] Added coshf function..
Fri, Jul 29, 7:57 AM · Restricted Project, Restricted Project
orex requested review of D130780: [libc][math] Added tanhf function..
Fri, Jul 29, 7:51 AM · Restricted Project, Restricted Project
orex added a comment to D129275: [libc][math] Added coshf function..

Thank you Paul for sharing the results.
The results I got using the same compiler (llvm 11) as Paul (@zimmermann6):

CORE_MATH_PERF_MODE=rdtsc PERF_ARGS='' ./perf.sh coshf
GNU libc version: 2.31
GNU libc release: stable
18.534
13.019
17.590
CORE_MATH_PERF_MODE=rdtsc PERF_ARGS='--latency' ./perf.sh coshf
GNU libc version: 2.31
GNU libc release: stable
49.670
38.334
50.461

As you can see llvm 12 significantly improve throughput of this version of coshf over version 11. Partially this problem can be explained by this difference. Another source of the difference is Intel vs AMD. We observe such difference with (@lntue).
Paul, can you confirm, that the precision is OK? I think that we can push the changes even though the solution is not the fastest for all platforms/compilers? Tue?

Fri, Jul 29, 3:42 AM · Restricted Project, Restricted Project

Thu, Jul 28

orex updated the diff for D129278: [libc][math] Added sinhf function..

Review fixes.

Thu, Jul 28, 6:48 AM · Restricted Project, Restricted Project
orex updated the diff for D129275: [libc][math] Added coshf function..

Review fixes.

Thu, Jul 28, 6:38 AM · Restricted Project, Restricted Project
orex added inline comments to D129278: [libc][math] Added sinhf function..
Thu, Jul 28, 6:09 AM · Restricted Project, Restricted Project
orex updated the diff for D129278: [libc][math] Added sinhf function..

Review fixes. More verbose comments.

Thu, Jul 28, 6:08 AM · Restricted Project, Restricted Project
orex updated the diff for D129275: [libc][math] Added coshf function..

Review fixes.

Thu, Jul 28, 4:57 AM · Restricted Project, Restricted Project
orex updated the summary of D129278: [libc][math] Added sinhf function..
Thu, Jul 28, 4:00 AM · Restricted Project, Restricted Project
orex updated the summary of D129275: [libc][math] Added coshf function..
Thu, Jul 28, 3:56 AM · Restricted Project, Restricted Project
orex updated the diff for D129278: [libc][math] Added sinhf function..

Rebasing on main with small fixes.

Thu, Jul 28, 3:50 AM · Restricted Project, Restricted Project
orex updated the diff for D129275: [libc][math] Added coshf function..

Rebasing on main with small fixes.

Thu, Jul 28, 3:49 AM · Restricted Project, Restricted Project
orex committed rG4b41e7b43691: [libc][math] Universal exp function for cosh/sinh calculation. (authored by orex).
[libc][math] Universal exp function for cosh/sinh calculation.
Thu, Jul 28, 2:25 AM · Restricted Project, Restricted Project
orex closed D129215: [libc][math] Universal exp function for cosh/sinh calculation..
Thu, Jul 28, 2:24 AM · Restricted Project, Restricted Project
orex committed rGc78144e1c74b: [libc][math] Improved performance of exp2f function. (authored by orex).
[libc][math] Improved performance of exp2f function.
Thu, Jul 28, 1:58 AM · Restricted Project, Restricted Project
orex closed D129005: [libc][math] Improved performance of exp2f function..
Thu, Jul 28, 1:58 AM · Restricted Project, Restricted Project
orex updated the diff for D129005: [libc][math] Improved performance of exp2f function..

Merged to last main, some cosmetic changes.

Thu, Jul 28, 1:21 AM · Restricted Project, Restricted Project

Wed, Jul 27

orex accepted D130644: [libc] Implement cosf function that is correctly rounded to all rounding modes..
Wed, Jul 27, 1:03 PM · Restricted Project, Restricted Project
orex updated subscribers of D129215: [libc][math] Universal exp function for cosh/sinh calculation..
Wed, Jul 27, 12:53 PM · Restricted Project, Restricted Project
orex updated the diff for D129215: [libc][math] Universal exp function for cosh/sinh calculation..

Small fixes in test.

Wed, Jul 27, 12:53 PM · Restricted Project, Restricted Project
orex updated the summary of D129215: [libc][math] Universal exp function for cosh/sinh calculation..
Wed, Jul 27, 12:30 PM · Restricted Project, Restricted Project
orex updated the summary of D129215: [libc][math] Universal exp function for cosh/sinh calculation..
Wed, Jul 27, 12:29 PM · Restricted Project, Restricted Project
orex added inline comments to D129215: [libc][math] Universal exp function for cosh/sinh calculation..
Wed, Jul 27, 12:28 PM · Restricted Project, Restricted Project
orex updated the diff for D129215: [libc][math] Universal exp function for cosh/sinh calculation..

Small fixes.

Wed, Jul 27, 12:27 PM · Restricted Project, Restricted Project
orex added a comment to D129005: [libc][math] Improved performance of exp2f function..

OK. Thanks! let's wait.

Wed, Jul 27, 12:07 PM · Restricted Project, Restricted Project
orex updated the diff for D129005: [libc][math] Improved performance of exp2f function..

Added explicit dependencies.

Wed, Jul 27, 12:06 PM · Restricted Project, Restricted Project
orex added inline comments to D130629: [libc] Change sinf range reduction to mod pi/16 to be shared with cosf..
Wed, Jul 27, 11:03 AM · Restricted Project, Restricted Project
orex added inline comments to D130629: [libc] Change sinf range reduction to mod pi/16 to be shared with cosf..
Wed, Jul 27, 10:26 AM · Restricted Project, Restricted Project
orex added inline comments to D130629: [libc] Change sinf range reduction to mod pi/16 to be shared with cosf..
Wed, Jul 27, 9:29 AM · Restricted Project, Restricted Project
orex added inline comments to D130629: [libc] Change sinf range reduction to mod pi/16 to be shared with cosf..
Wed, Jul 27, 8:38 AM · Restricted Project, Restricted Project
orex updated the summary of D129005: [libc][math] Improved performance of exp2f function..
Wed, Jul 27, 8:31 AM · Restricted Project, Restricted Project
orex updated the diff for D129005: [libc][math] Improved performance of exp2f function..

Improved performance by fputil::nearest_integer function.

Wed, Jul 27, 8:29 AM · Restricted Project, Restricted Project

Jul 12 2022

orex added a comment to D129278: [libc][math] Added sinhf function..

The easiest way, from my point of view, will be to apply it on top of working coshf branch, which you made and test.

Jul 12 2022, 6:46 AM · Restricted Project, Restricted Project
orex added a comment to D129275: [libc][math] Added coshf function..

Can you try to put all the chain on top of the revision 60d6be5dd3f411cfe1b5392cbb... for now. I'll rebase the revisions to the last main tonight.

Jul 12 2022, 5:52 AM · Restricted Project, Restricted Project
orex added a comment to D129275: [libc][math] Added coshf function..

Yes. You should first apply D129005, after D129215 and after that one. The initial revision were cut to several ones to improve review process and new function deployment.

Jul 12 2022, 4:58 AM · Restricted Project, Restricted Project

Jul 7 2022

orex requested review of D129278: [libc][math] Added sinhf function..
Jul 7 2022, 4:49 AM · Restricted Project, Restricted Project
orex requested review of D129275: [libc][math] Added coshf function..
Jul 7 2022, 4:14 AM · Restricted Project, Restricted Project

Jul 6 2022

orex requested review of D129215: [libc][math] Universal exp function for cosh/sinh calculation..
Jul 6 2022, 9:15 AM · Restricted Project, Restricted Project

Jul 1 2022

orex requested review of D129005: [libc][math] Improved performance of exp2f function..
Jul 1 2022, 10:04 AM · Restricted Project, Restricted Project
orex committed rGfdf1fda5a8c8: [libc][math] Improved ExhaustiveTest performance. (authored by orex).
[libc][math] Improved ExhaustiveTest performance.
Jul 1 2022, 9:33 AM · Restricted Project, Restricted Project
orex closed D128995: [libc][math] Improved ExhaustiveTest performance..
Jul 1 2022, 9:33 AM · Restricted Project, Restricted Project
orex added inline comments to D128995: [libc][math] Improved ExhaustiveTest performance..
Jul 1 2022, 9:23 AM · Restricted Project, Restricted Project
orex updated the diff for D128995: [libc][math] Improved ExhaustiveTest performance..

Fix some reviewer comments.

Jul 1 2022, 9:06 AM · Restricted Project, Restricted Project
orex added inline comments to D128995: [libc][math] Improved ExhaustiveTest performance..
Jul 1 2022, 8:23 AM · Restricted Project, Restricted Project
orex requested review of D128995: [libc][math] Improved ExhaustiveTest performance..
Jul 1 2022, 7:44 AM · Restricted Project, Restricted Project

Jun 30 2022

orex updated the diff for D127951: [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf..

Fix build problem.

Jun 30 2022, 1:39 AM · Restricted Project, Restricted Project

Jun 29 2022

orex retitled D127951: [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf. from [libc][math] New common algorithm for expf/expm1f/exp2f. to [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf..
Jun 29 2022, 10:00 AM · Restricted Project, Restricted Project
orex updated the diff for D127951: [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf..

Added sinhf/coshf

Jun 29 2022, 8:34 AM · Restricted Project, Restricted Project

Jun 27 2022

orex committed rG535845708949: [libc][docs] Added fmod performance results. (authored by orex).
[libc][docs] Added fmod performance results.
Jun 27 2022, 10:32 AM · Restricted Project, Restricted Project
orex closed D127046: [libc][math] fmod/fmodf implementation..
Jun 27 2022, 10:21 AM · Restricted Project, Restricted Project

Jun 24 2022

orex committed rG27aca975b6b6: [libc][math] Fix broken compilation due to __builtin_inf/nan functions. (authored by orex).
[libc][math] Fix broken compilation due to __builtin_inf/nan functions.
Jun 24 2022, 4:40 PM · Restricted Project, Restricted Project
orex committed rG349fee08d537: [libc][math] Fix broken aarch64 due to clz refactoring. (authored by orex).
[libc][math] Fix broken aarch64 due to clz refactoring.
Jun 24 2022, 3:00 PM · Restricted Project, Restricted Project
orex committed rGb8e8012aa2ed: [libc][math] fmod/fmodf implementation. (authored by orex).
[libc][math] fmod/fmodf implementation.
Jun 24 2022, 2:10 PM · Restricted Project, Restricted Project
orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

Changed unsafe_clz to safe_clz in string_to_float.h

Jun 24 2022, 1:16 PM · Restricted Project, Restricted Project
orex added inline comments to D127046: [libc][math] fmod/fmodf implementation..
Jun 24 2022, 12:44 PM · Restricted Project, Restricted Project
orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

unsafe ctz/clz

Jun 24 2022, 12:41 PM · Restricted Project, Restricted Project
orex added a comment to D127046: [libc][math] fmod/fmodf implementation..

Tue. I think, if we will not find agreement with ctz/clz syntax, we can ask Siva to solve the problem. Also, as long as you will use the function in the next changes, you can also try them and if it will not work good, improve it.

Jun 24 2022, 9:24 AM · Restricted Project, Restricted Project
orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

Tests polishing.

Jun 24 2022, 9:21 AM · Restricted Project, Restricted Project
orex added a comment to D127046: [libc][math] fmod/fmodf implementation..

Thank you Tue, for your comments. They was really useful. I'll really appreciate if you go through all my replies. It was a lot of them, so I'm afraid that I can miss something or my changes can be improved even more. I'll also appreciate if you check the performance for fmod in the same way, as other functions. I've attached the file

. You should simply unpack it inside core-math folder.

Jun 24 2022, 1:47 AM · Restricted Project, Restricted Project
orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

Cosmetic changes: veriable renaming, docs update etc.

Jun 24 2022, 1:35 AM · Restricted Project, Restricted Project

Jun 22 2022

orex added inline comments to D127046: [libc][math] fmod/fmodf implementation..
Jun 22 2022, 10:00 AM · Restricted Project, Restricted Project
orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

Some cosmetic changes.

Jun 22 2022, 9:39 AM · Restricted Project, Restricted Project

Jun 21 2022

orex added inline comments to D127046: [libc][math] fmod/fmodf implementation..
Jun 21 2022, 12:59 PM · Restricted Project, Restricted Project
orex added inline comments to D127046: [libc][math] fmod/fmodf implementation..
Jun 21 2022, 12:32 PM · Restricted Project, Restricted Project
orex updated the summary of D127046: [libc][math] fmod/fmodf implementation..
Jun 21 2022, 12:31 PM · Restricted Project, Restricted Project
orex added inline comments to D127046: [libc][math] fmod/fmodf implementation..
Jun 21 2022, 5:30 AM · Restricted Project, Restricted Project

Jun 16 2022

orex published D127951: [libc][math] New algorithm for expf/expm1f/exp2f and for new functions sinhf/coshf. for review.
Jun 16 2022, 5:03 AM · Restricted Project, Restricted Project

Jun 13 2022

orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

C standard/Posix processing of special numbers.

Jun 13 2022, 10:17 AM · Restricted Project, Restricted Project

Jun 10 2022

orex added inline comments to D127046: [libc][math] fmod/fmodf implementation..
Jun 10 2022, 2:01 AM · Restricted Project, Restricted Project
orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

cerrno fix.

Jun 10 2022, 1:56 AM · Restricted Project, Restricted Project
orex updated the diff for D127046: [libc][math] fmod/fmodf implementation..

Rebasing changes on last main.

Jun 10 2022, 1:49 AM · Restricted Project, Restricted Project
orex committed rGb03567fe2b74: [libc][math] Improved FBits performance and readablity. (authored by orex).
[libc][math] Improved FBits performance and readablity.
Jun 10 2022, 1:22 AM · Restricted Project, Restricted Project
orex closed D127097: [libc][math] Improved FBits performance and readablity..
Jun 10 2022, 1:21 AM · Restricted Project, Restricted Project
orex committed rG76b57ef88c4e: [libc][math] Differential "diff" test for hypot/hypotf functions. (authored by orex).
[libc][math] Differential "diff" test for hypot/hypotf functions.
Jun 10 2022, 1:09 AM · Restricted Project, Restricted Project
orex closed D127091: [libc][math] Differential "diff" test for hypot/hypotf functions..
Jun 10 2022, 1:09 AM · Restricted Project, Restricted Project

Jun 9 2022

orex committed rG081aba27b138: [libc][math] Separated builtin function in special FPUtils header. (authored by orex).
[libc][math] Separated builtin function in special FPUtils header.
Jun 9 2022, 6:22 PM · Restricted Project, Restricted Project
orex closed D127088: [libc][math] Separated builtin function in special FPUtils header..
Jun 9 2022, 6:22 PM · Restricted Project, Restricted Project

Jun 7 2022

orex added inline comments to D127097: [libc][math] Improved FBits performance and readablity..
Jun 7 2022, 2:10 AM · Restricted Project, Restricted Project
orex added inline comments to D127097: [libc][math] Improved FBits performance and readablity..
Jun 7 2022, 1:44 AM · Restricted Project, Restricted Project
orex updated the diff for D127097: [libc][math] Improved FBits performance and readablity..

Update static_assert message.

Jun 7 2022, 1:39 AM · Restricted Project, Restricted Project

Jun 6 2022

orex updated the diff for D127088: [libc][math] Separated builtin function in special FPUtils header..

Fixed header protection name.

Jun 6 2022, 7:27 AM · Restricted Project, Restricted Project
orex updated the diff for D127097: [libc][math] Improved FBits performance and readablity..

Added EXP_MANT_MASK.

Jun 6 2022, 7:21 AM · Restricted Project, Restricted Project
orex added inline comments to D127097: [libc][math] Improved FBits performance and readablity..
Jun 6 2022, 7:21 AM · Restricted Project, Restricted Project