beast-dev / beast-mcmc

Bayesian Evolutionary Analysis Sampling Trees
http://beast.community
GNU Lesser General Public License v2.1
192 stars 73 forks source link

calculateRootLogLikelihoodsByPartition Error code -7 #1081

Closed gkarthik closed 4 years ago

gkarthik commented 4 years ago

I sometimes get this error after Underflow calculating likelihood. Attempting a rescaling.... I generate the XML using beauti with no manual editing.

Nuc substitution model: SRD06 Population model: Skygrid Clock model: Ucln

BEAST version 1.10.4 Beagle version 3.1.2

# BEAST v1.10.4 Prerelease #bc6cbd9
# Generated Tue Apr 14 16:36:18 PDT 2020 [seed=112358]
# -seed 112358 -overwrite -beagle_GPU 2020.04.12.aligned.corrected.no_utrs.xml
# keywords: skygrid discretized_branch_rates
state   Joint           Prior           Likelihood      age(root)       ucld.mean   
0   -666804.9873    -32735.5151     -634069.4723    -11.5229        1.00000         -
Underflow calculating likelihood. Attempting a rescaling... (CP1+2.patterns)
Exception in thread "Thread-1" beagle.BeagleException: BEAGLE function, calculateRootLogLikelihoodsByPartition, returned error code -7 (No implementation matches requirements)
    at beagle.BeagleJNIImpl.calculateRootLogLikelihoodsByPartition(Unknown Source)
    at dr.evomodel.treedatalikelihood.MultiPartitionDataLikelihoodDelegate.calculateLikelihood(Unknown Source)
    at dr.evomodel.treedatalikelihood.TreeDataLikelihood.calculateLogLikelihood(Unknown Source)
    at dr.evomodel.treedatalikelihood.TreeDataLikelihood.getLogLikelihood(Unknown Source)
    at dr.inference.model.CompoundLikelihood.evaluateLikelihoods(Unknown Source)
    at dr.inference.model.CompoundLikelihood.getLogLikelihood(Unknown Source)
    at dr.inference.model.CompoundLikelihood.evaluateLikelihoods(Unknown Source)
    at dr.inference.model.CompoundLikelihood.getLogLikelihood(Unknown Source)
    at dr.inference.markovchain.MarkovChain.evaluate(Unknown Source)
    at dr.inference.markovchain.MarkovChain.runChain(Unknown Source)
    at dr.inference.mcmc.MCMC.chain(Unknown Source)
    at dr.inference.mcmc.MCMC.run(Unknown Source)
    at java.lang.Thread.run(java.base@9-internal/Thread.java:804)
17.44 seconds

Any help is appreciated. Thank you!

gkarthik commented 4 years ago

As per @xji3's suggestion, upgrading to beagle v3.2.0 (PRE-RELEASE) seems to fix this.