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

AVX vectorization of likelihood derivatives #61

Closed
ddarriba opened this issue Feb 18, 2016 · 10 comments
Closed

AVX vectorization of likelihood derivatives #61

ddarriba opened this issue Feb 18, 2016 · 10 comments

Comments

@ddarriba
Copy link
Collaborator

Implement the AVX version of update_sumtable and compute_likelihood_derivatives

@ddarriba ddarriba added this to the tip-tip optimization with vectorization milestone Feb 18, 2016
@ddarriba ddarriba self-assigned this Feb 18, 2016
@ddarriba
Copy link
Collaborator Author

Sumtable (inner-inner) vectorized in experimental branch

@stamatak stamatak removed this from the tip-tip optimization with vectorization milestone Mar 15, 2016
@amkozlov
Copy link
Collaborator

Vectorized sumtable (tip-inner) and derivative computation: 3035dd1

There is still room for improvement, but even current version together with removal of unneeded log()s
(c0f1cb0) yields > 2x speedup in my tree search tests (DNA data).

@xflouris
Copy link
Owner

@amkozlov : nice job. A gentle reminder though to follow the project coding rules:

https://github.com/xflouris/libpll/wiki/Contributing-to-libpll

particularly the 80 character long lines. I understand you may not like them, but it's a collaborative project.

@amkozlov
Copy link
Collaborator

@xflouris: Fixed.

particularly the 80 character long lines. I understand you may not like them

That's true, especially functions with intrinsics are long&ugly enough as they are :)

@xflouris
Copy link
Owner

thanks alexey :)

@ddarriba
Copy link
Collaborator Author

ddarriba commented Aug 3, 2016

Note: Verify for 'odd' number of states (e.g., 5)

@xflouris
Copy link
Owner

xflouris commented Aug 3, 2016

@ddarriba : when you get time, can you extend the odd-states/derivative tests with the following two cases?

  • a case where an odd number of states and invariant sites are used together (we had a bug that was not found by the tests)
  • derivatives with odd states (the bug you found was not detected by the tests)

@amkozlov
Copy link
Collaborator

amkozlov commented Aug 3, 2016

@ddarriba: thanks, this is fixed now. The new version (my last commit) is also significantly faster.

@ddarriba
Copy link
Collaborator Author

ddarriba commented Aug 3, 2016

I already have the one with odd states. I created it for checking where did an error in the modules
repository come from. I will add both new tests together tomorrow.

On 03.08.2016 18:25, Tomas Flouri wrote:

@ddarriba https://github.com/ddarriba : when you get time, can you extend the
odd-states/derivative tests with the following two cases?

  • a case where an odd number of states /and/ invariant sites are used together (we had a bug that
    was not found by the tests)
  • derivatives with odd states (the bug you found was not detected by the tests)


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#61 (comment), or mute the thread
https://github.com/notifications/unsubscribe-auth/AC_YcXVHobP9-WRFUR4FjAyRj0SHNv8mks5qcMEKgaJpZM4Hc7Rf.

Dr. Diego Darriba
Phone: +49-6221-533-292
Fax: +49-6221-533-298

E-Mail: Diego.Darriba@h-its.org

HITS gGmbH
Schloss-Wolfsbrunnenweg 35
D-69118 Heidelberg

Amtsgericht Mannheim / HRB 337446
Managing Director: Dr. Gesa Schönberger
Scientific Director: Prof. Dr. Rebecca Wade

@amkozlov
Copy link
Collaborator

Can we close this one or is there something still missing?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants