-
Notifications
You must be signed in to change notification settings - Fork 593
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
performance optimizations for GenotypeGVCFs #1957
Conversation
final double[] dependentSetLog10Likelihoods = dependentSet.getLog10Likelihoods(); | ||
final int[] counts = targetSet.getACcounts().getCounts(); | ||
|
||
for ( int j = (totalK/2)-1, n = targetSetLog10Likelihoods.length; j < n; j++ ) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If totalK
is 0 (or less) this produces a different result than before. I'm not sure if that's possible or not.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good catch. i think totalK may be 0 sometimes. I'll leave this as for ( int j = 1, n = targetSetLog10Likelihoods.length; j < n; j++ ) {
@akiezun minor comments |
53c6ead
to
3d63672
Compare
back to @lbergelson for second review. log10 cache is now static (and synchronized at expansion only) as in gatk3 - it looks faster (no map lookup that would be needed in the thread local solution) |
@akiezun My only concern now is that someone takes log10 of a very large number triggering a massive and slow cache expansion. This caching scheme is good for clustered queries of small values, but terrible for sparse large queries. Is that a case we need to consider? |
The access pattern I saw is that the queries start small and creep up to On Wednesday, July 6, 2016, Louis Bergelson notifications@github.com
Sent from Gmail Mobile |
👍 |
part of work tracked here #1608
@lbergelson please review. The corresponding protected branch is https://github.com/broadinstitute/gatk-protected/tree/ak_ggvcf_performance