Was finding that for pure R/Y encoded data the empirical frequency estimation was getting stuck in an iteration that never converged. Added a maximum number of iterations. Also added the MrBayes estimator (as opposed to the current one which matches PAUP) but this is not on by default.
101 lines of code changed in 5 files:
Reads GPU info correctly
60 lines of code changed in 2 files:
Changed the parser so it adds the weight.
6 lines of code changed in 1 file:
Removed GPU-related files from dr.evomodel.treelikelihood to cut down on confusion; GPU now only supported in dr.evomodel.newtreelikelihood
1 lines of code changed in 7 files:
Making stateTipCount compatible with GPU code
44 lines of code changed in 2 files:
Added the optimization of using fixed states at tips.
599 lines of code changed in 13 files:
Added back in partialsScaling for debug scaling on GPU
86 lines of code changed in 1 file:
Modified GPULikelihoodCore wrapped to pass padded state information to native code
20 lines of code changed in 1 file:
Added some generalizations to the path sampling code.
65 lines of code changed in 2 files:
Need to manually convert double[] freqs -> float[] freqs; array-copy does not work.
35 lines of code changed in 1 file:
Alex and I have been experimenting with a path sampling approach to estimating marginal likelihoods. See eXML in examples/testPathSampling.xml. Not sure it works.
707 lines of code changed in 10 files:
preparation for implementation of birth-death-sampling prior
56 lines of code changed in 2 files:
uncommented Andrew's comments :-) Please add options.jar to your classpath.
177 lines of code changed in 1 file:
Unresolved import: ml.*
177 lines of code changed in 1 file:
14 lines of code changed in 3 files:
improved speed by factor of 8 by using binary search and caching intensities, and added ability to do multiple replicates.
296 lines of code changed in 8 files:
Add handling of constant intervals in Piecewise linear. Those can happen demographic is explicitly set for simulation purposes.
17 lines of code changed in 1 file:
Added some extra names for the xml parser.
6 lines of code changed in 1 file:
Rewrote for easiser use.
31 lines of code changed in 1 file:
build script and usage instructions for Variable Coalescent Simulator version 0.1
600 lines of code changed in 11 files:
fixed bone-headed intensity and inverse-intensity functions. The previous functions were piecewise-constant with population size being set to the mean over the interval! This is now properly piecewise linear.
12 lines of code changed in 1 file:
Added 5'th optional argument - file name to log the demographic
42 lines of code changed in 1 file:
Missing option for object file in Linux
3 lines of code changed in 1 file:
simulation of trees from piecewise linear populations
245 lines of code changed in 3 files:
Created a likelihood core that uses floats to test precision management techniques.
408 lines of code changed in 3 files:
Made some improvements to TreeStat
643 lines of code changed in 19 files:
I promise; it works this time
1 lines of code changed in 1 file:
Forgot to set the compiler directive -- the most important part
4 lines of code changed in 2 files:
Added Makefile for new native cores
43 lines of code changed in 2 files:
A few adjustments about what is passed from the Eigen decomposition to the likelihood core.
22 lines of code changed in 1 file:
Wrote Java portion of GPULikelihoodCore.
151 lines of code changed in 4 files:
A few adjustments about what is passed from the Eigen decomposition to the likelihood core.
68 lines of code changed in 8 files:
NewNativeLikelihood now works.
24 lines of code changed in 3 files:
NewNativeLikelihood now runs but gives a NaN. Onwards and upwards...
36 lines of code changed in 4 files:
1. Refactored newtreelikelihood.GPUMemoryLikelihoodCore to GPULikelihoodCore for naming consistency and to avoid confusion with the old (and working) treelikelihood.GPUMemoryLikelihoodCore
2. Added 64-state GeneticCode to YangCodonModel. Why are there so many different GeneticCode parsers?
171 lines of code changed in 3 files:
Added the native code for the newtreelikelihood's native likelihood core. This compiles but doesn't work yet.
524 lines of code changed in 3 files:
Simplified the SiteModel interface so it is no longer a wrapper for a substitution model to get transition probability matrix.
1653 lines of code changed in 23 files:
New TreeLikelihood seems to be running. New example xml, testNewTreeLikelihoodMCMC.xml gives exactly the same sequence using the seed -666 (the seed of the BEAST) as the old TreeLikelihood.
3 lines of code changed in 2 files:
MCMC is running with GeneralLikelihoodCore. The new TreeLikelihood has a parser called 'crazyTreeLikelihood'. Not sure whether it is giving the right answer yet.
54 lines of code changed in 4 files:
Added "spawn" attribute to MCMC. When spawn="false", the MCMC runs in the same thread as the parser, otherwise the parsers spawns a new thread in which to run the MCMC. Keeping everything in one thread is important for GPU profiling (until I learn how to get contexts to work correctly).
24 lines of code changed in 2 files:
Now calculates likelihoods correctly. Next step to test MCMC run.
21 lines of code changed in 1 file:
Working towards a working new likelihood core.
492 lines of code changed in 6 files:
Added a native 'husk' for the new likelihoodcore
32 lines of code changed in 2 files:
Undid my last change on further consideration. I intend to write a simple 'NativeLikelihoodCore' so I want to avoid confusion.
1020 lines of code changed in 4 files:
Renamed the native likelihood cores in the newtreelikelihood package removing the word 'Memory' as in this implementation, all native LCs will be doing the memory on the native side.
1106 lines of code changed in 4 files:
Added an 'updateSiteModel' method to the LikelihoodCore interface and storing and restoring of local copies of state frequencies, category rates and proportions.
This is part of an effort to put more of the likelihood calculations on the native side to facilitate the use of cool hardware like GPUs and Cell processors (I wonder if you can get them as PCI cards?).
86 lines of code changed in 4 files:
Improved the comments in the interface
24 lines of code changed in 2 files:
Split the dependency information into a seperate array for clarity.
26 lines of code changed in 4 files:
Some work on a likelihood core registry and factory
1180 lines of code changed in 4 files:
Fixed ConvertAlignmentParser to return the correct codon type.
14 lines of code changed in 2 files:
64 state codon model for testing purposes
75 lines of code changed in 6 files:
Missing interface components fixed.
24 lines of code changed in 4 files:
Started to integrate the autocorrelated relaxed clock in Beauti. Not happy yet with the intial priors. Some commented code will be removed later.
1749 lines of code changed in 8 files:
Move complicated parsing of dataType and available JNI libraries into a factory class
19 lines of code changed in 1 file:
Working on codon support for the GPU
117 lines of code changed in 5 files:
Compiling - ready to start testing...
newtreelikelihood is a new approach to the likelihood core to minimize
communication between Java and native implementations. This should allow faster native code and use of GPUs. This is just a temporary parallel package whilst this is developed.
1002 lines of code changed in 7 files:
Fixed the final (?) thread migration issue with the GPU. Someday I will learn how to use context-dependent GPU addresses and avoid this whole issue all together.
41 lines of code changed in 4 files:
Fixed thread migration issue in GPU/NativeMemoryLikelihoodCore.
54 lines of code changed in 2 files:
Little tweaks to GPU/native memory stuff
90 lines of code changed in 4 files:
newtreelikelihood is a new approach to the likelihood core to minimize communication between Java and native implementations. This should allow faster native code and use of GPUs. This is just a temporary parallel package whilst this is developed.
1143 lines of code changed in 5 files:
Missed one line of code! I really suck sometimes.
1 lines of code changed in 1 file:
Reverted TreeLikelihood to state before my hack. Renamed ExperimentalTL into PrecisionTestTL and copied hack into new ExperiementalTL.
1012 lines of code changed in 4 files:
As usual, I forgot the C source files
31 lines of code changed in 3 files:
Adding NativeSubstitutionModel that computes the finite-time transition probabilities (matrix-multiplication, not eigendecomposition) in native memory cache. This is in intermediate step to porting these calculations onto the GPU. Small example shows 2x overall Beast speed-up doing matrix multiplication in native memory over copying results from Java to native stuff. Be warned! I hacked TreeLikelihood and this is going to make you unhappy.
919 lines of code changed in 7 files:
Fixed a null pointer error
14 lines of code changed in 1 file:
32 lines of code changed in 1 file:
Added GPUMemoryLikelihoodCore from which Dat will rewrite the GPU code to hold partials/matrices/states in the GPU global memory
154 lines of code changed in 5 files: