Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

This is the change for single precision functions equivalent to the p… #18

Merged

Conversation

shibatch
Copy link
Owner

…revious branches for improving performance of asin, acos, log_u1, etc. functions.
I will also modify the benchmarking tools if performance number is needed.

…revious branches for improving performance of asin, acos, log_u1, etc. functions.
@shibatch
Copy link
Owner Author

Please take time to review the code.

Copy link
Collaborator

@fpetrogalli fpetrogalli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apologies for not looking at this earlier.

In general it looks good to me, but I would like you to revert some variable names.

Moreover, I would like you to wait submitting this changes until the Travis CI configuration gets into master.

@@ -1091,11 +1179,11 @@ static INLINE CONST vfloat expkf(vfloat2 d) {
EXPORT CONST vfloat xpowf(vfloat x, vfloat y) {
#if 1
vopmask yisint = vor_vo_vo_vo(veq_vo_vf_vf(vtruncate_vf_vf(y), y), vgt_vo_vf_vf(vabs_vf_vf(y), vcast_vf_f(1 << 24)));
vopmask yisodd = vand_vo_vo_vo(vand_vo_vo_vo(veq_vo_vi2_vi2(vand_vi2_vi2_vi2(vtruncate_vi2_vf(y), vcast_vi2_i(1)), vcast_vi2_i(1)), yisint),
vopmask yisodf = vand_vo_vo_vo(vand_vo_vo_vo(veq_vo_vi2_vi2(vand_vi2_vi2_vi2(vtruncate_vi2_vf(y), vcast_vi2_i(1)), vcast_vi2_i(1)), yisint),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you just change the variable name? What for? I don't think this is needed. Please revert it.

@@ -1366,9 +1454,9 @@ EXPORT CONST vfloat xroundf(vfloat d) {

EXPORT CONST vfloat xrintf(vfloat d) {
vfloat x = vadd_vf_vf_vf(d, vcast_vf_f(0.5f));
vopmask isodd = veq_vo_vi2_vi2(vand_vi2_vi2_vi2(vcast_vi2_i(1), vtruncate_vi2_vf(x)), vcast_vi2_i(1));
vopmask isodf = veq_vo_vi2_vi2(vand_vi2_vi2_vi2(vcast_vi2_i(1), vtruncate_vi2_vf(x)), vcast_vi2_i(1));
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No reason to change variable name here.

@fpetrogalli fpetrogalli merged commit 0c31df2 into master Apr 21, 2017
@shibatch shibatch deleted the Performance_improvement_for_asinf,_acosf,_logf_u1,_etc branch April 22, 2017 05:08
@avmgithub avmgithub mentioned this pull request May 28, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants