BEAST v1.10.4 released

1,190 views
Skip to first unread message

Andrew Rambaut

unread,
Nov 11, 2018, 8:29:16 AM11/11/18
to beast...@googlegroups.com
Dear BEAST-Users,

We have just released BEAST v1.10.4 at the usual download spot:


BEAST v1.10.4 fixes a bug when trying specify a burnin on the command line version of LogCombiner. 

We also introduce two new command-line options for controlling the recently released BEAGLE v3.1:

BEAGLE 3 introduces the ability to multithread on a CPU. This means that likelihood calculations will be distributed across multiple cores on a machine (this obviates the need for the -beagle_instances option to distribute parts of the data to different threads). 

By default BEAST will use 8 threads. The new -beagle_thread_count option will change this. You may wish to increase it if you have a processor with many cores, or reduce it if you want to share the processor with other users or processes. The -beagle_threading_off will turn off multithreading.

We will post more details on the website in the section about performance-tuning BEAST.

Best,
Andrew

Gilles Vergnaud

unread,
Nov 13, 2018, 12:56:08 PM11/13/18
to beast...@googlegroups.com
Hi,

(question from a non-informatician, so answer presumably easy ...)
As the new releases do seem to make analyses significantly faster, we would like to increase the 8 threads default value, so I understand that we need to use the command line.

I first checked that BEAST v1.10.4.exe was running correctly using testStarTreeTest_beast.xml. No problem with beagle.

Then to try the command line I used Powershell ( windows10pro), moved to the  BEAST_v1_10_4 directory.
I manage to run the help option
PS C:\BEAST_v1_10_4> .\bin\beast -help

However when I try to run the previous beast test file testStarTreeTest_beast.xm located in my BEAST_v1_10_4directory
PS C:\BEAST_v1_10_4> .\bin\beast .\testStarTreeTest_beast.xml
I get the error message
Failed to load BEAGLE library: no hmsbeagle64 in java.library.path: [C:\BEAST v1.10.4\bin\..\lib]

I do not know how to specify a correct java.library.path

Thank you for your help

Gilles

 
Thank you for your help!









--
You received this message because you are subscribed to the Google Groups "beast-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beast-users...@googlegroups.com.
To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.
For more options, visit https://groups.google.com/d/optout.

Gilles Vergnaud

unread,
Dec 2, 2018, 11:11:06 AM12/2/18
to beast...@googlegroups.com
Hi,

For the record, problem of running beast 1.10.4 from the command line under windows 10 was solved by duplicating the hmsbeable64 libraries located into C:\Program Files\Common Files\libhmsbeagle, to folder lib in the beast 1.10.4 folder.

Best

Gilles

Brandon Stark

unread,
Dec 2, 2018, 8:15:57 PM12/2/18
to beast-users
is that mean beagle v2 can not use multithread on a cpu?

d.a...@unsw.edu.au

unread,
May 2, 2019, 2:44:14 AM5/2/19
to beast-users
Hi Andrew, 

I have been trying to get BEAST 1.10.4 with BEAGLE 3.1.0 running across 6 CPU cores. I am running via the PowerShell on windows with the following command: 

java -jar .lib/beast.jar -threads 6 -beagle -beagle_thread_count 6 .\xml.xml 

I have not been able to get any change in performance and CPU usage when using or not using the new -beagle_thread_count option. I get the same performance also when testing with the -beagle_threading_off option. 

I am just trying to estimate a posterior tree distribution for a very large number of taxa so only using a single partition although I do have a 1+2,3 codon model so any improvement would be great. 

I had previous success with different xmls in BEAST 1.8.4 using the -beagle_instances option when also just estimating the tree. 

Any ideas about what might be going on?

Happy to send the xml to you if needed. 


Thanks, 

Dillon

Andrew Rambaut

unread,
May 2, 2019, 4:28:14 AM5/2/19
to beast...@googlegroups.com
Hi Dillon,

How many unique site patterns do you have (you can see this in the preamble when each BEAGLE instance is started up)? 
The parallelisation within BEAGLE is fine-scaled so will benefit more when there are many site patterns. 

The parallelization in BEAST is on the partition level so using the codon partitions may improve things (particularly if the number of site patterns is roughly equal). By default BEAST creates one thread per partition and BEAGLE will create as many threads as there are cores (but maxes out at 8 - this can be overridden with the -beagle_thread_count option). So the total number of threads will be partition_count * beagle_thread_count and you should probably aim to reduce beagle_thread_count so this product matches the number of cores you wish to use.

-beagle_instance created partitions automatically by dividing up the existing partitions. We have yet to implement this option in BEAST 1.10.4 and are undecided about whether to (probably will when we have time). However, you can manually break up your partitions either by editing the XML or breaking them down into separate alignment files and loading them into BEAUti and telling BEAUti to link the substitution models. You can also set up partitions in a NEXUS file using the  partition commands.

Are you able to install the latest version (3.1.3 pre-release) from source - there are a few improvements over 3.1.10 for using CPUs but it is still pre-release so be cautious. See instructions here: https://github.com/beagle-dev/beagle-lib/wiki/WindowsInstallInstructions

Andrew

--
You received this message because you are subscribed to the Google Groups "beast-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beast-users...@googlegroups.com.
To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.
For more options, visit https://groups.google.com/d/optout.

Andrew Rambaut 
Institute for Evolutionary Biology 
Ashworth Laboratories, University of Edinburgh, Edinburgh, EH9 3FL, UK


Dillon Adam

unread,
May 9, 2019, 2:15:59 AM5/9/19
to beast-users
Thanks Andrew, 

I have 698 in codon partition 1+2 and 547 is partition 3. Is this parallelisation auto or does it need to be specified in the partitions view i.e. via separate alignments with linked sub models? 

Either way, does this mean a three partition codon model might be faster such that less sites are evaluated across 3 cores?

Nice to hear a -beagle_instances flag might be implemented in the future as I always found this a useful way to force low partitions counts across additional cores where available. 

I will also try with BEAGLE 3.1.3. I suspect I could just copy the pre-release libraries into the beast lib folder as mentioned by Gilles in this same thread for testing purposes?

Dillon





On Thursday, May 2, 2019 at 6:28:14 PM UTC+10, rambaut wrote:
Hi Dillon,

How many unique site patterns do you have (you can see this in the preamble when each BEAGLE instance is started up)? 
The parallelisation within BEAGLE is fine-scaled so will benefit more when there are many site patterns. 

The parallelization in BEAST is on the partition level so using the codon partitions may improve things (particularly if the number of site patterns is roughly equal). By default BEAST creates one thread per partition and BEAGLE will create as many threads as there are cores (but maxes out at 8 - this can be overridden with the -beagle_thread_count option). So the total number of threads will be partition_count * beagle_thread_count and you should probably aim to reduce beagle_thread_count so this product matches the number of cores you wish to use.

-beagle_instance created partitions automatically by dividing up the existing partitions. We have yet to implement this option in BEAST 1.10.4 and are undecided about whether to (probably will when we have time). However, you can manually break up your partitions either by editing the XML or breaking them down into separate alignment files and loading them into BEAUti and telling BEAUti to link the substitution models. You can also set up partitions in a NEXUS file using the  partition commands.

Are you able to install the latest version (3.1.3 pre-release) from source - there are a few improvements over 3.1.10 for using CPUs but it is still pre-release so be cautious. See instructions here: https://github.com/beagle-dev/beagle-lib/wiki/WindowsInstallInstructions

Andrew

On 2 May 2019, at 07:44, d....@unsw.edu.au wrote:

Hi Andrew, 

I have been trying to get BEAST 1.10.4 with BEAGLE 3.1.0 running across 6 CPU cores. I am running via the PowerShell on windows with the following command: 

java -jar .lib/beast.jar -threads 6 -beagle -beagle_thread_count 6 .\xml.xml 

I have not been able to get any change in performance and CPU usage when using or not using the new -beagle_thread_count option. I get the same performance also when testing with the -beagle_threading_off option. 

I am just trying to estimate a posterior tree distribution for a very large number of taxa so only using a single partition although I do have a 1+2,3 codon model so any improvement would be great. 

I had previous success with different xmls in BEAST 1.8.4 using the -beagle_instances option when also just estimating the tree. 

Any ideas about what might be going on?

Happy to send the xml to you if needed. 


Thanks, 

Dillon




On Monday, November 12, 2018 at 12:29:16 AM UTC+11, rambaut wrote:
Dear BEAST-Users,

We have just released BEAST v1.10.4 at the usual download spot:


BEAST v1.10.4 fixes a bug when trying specify a burnin on the command line version of LogCombiner. 

We also introduce two new command-line options for controlling the recently released BEAGLE v3.1:

BEAGLE 3 introduces the ability to multithread on a CPU. This means that likelihood calculations will be distributed across multiple cores on a machine (this obviates the need for the -beagle_instances option to distribute parts of the data to different threads). 

By default BEAST will use 8 threads. The new -beagle_thread_count option will change this. You may wish to increase it if you have a processor with many cores, or reduce it if you want to share the processor with other users or processes. The -beagle_threading_off will turn off multithreading.

We will post more details on the website in the section about performance-tuning BEAST.

Best,
Andrew

--
You received this message because you are subscribed to the Google Groups "beast-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beast...@googlegroups.com.

To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.
For more options, visit https://groups.google.com/d/optout.

Andrew Rambaut

unread,
May 9, 2019, 3:50:36 AM5/9/19
to beast...@googlegroups.com, Dillon Adam
Hi Dillon,

So your two partitions are reasonably well balanced in site patterns which is good. My feeling is that for 6 cores, the optimum command-line should be `-beagle_thread_count 3`. This will produce two beagle instances, one for each partition, which will then use 3 threads each to compute. However, parallelisation performance is never straight forward. I suggest also looking using `top` (on the command line) or ActivityMonitor.app (if on a Mac) to look at CPU usage. Ideally this will be close to 600% if it is using all the cores (it will usually be less on average, though).

Andrew

To unsubscribe from this group and stop receiving emails from it, send an email to beast-users...@googlegroups.com.

To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.

For more options, visit https://groups.google.com/d/optout.

Maria Barbara Postillone

unread,
May 31, 2019, 4:15:26 PM5/31/19
to beast-users
Dear Andrew, 
I am learning to run this new version of BEAST, but I have problems with the selection of the error model. Where could I get information about which one to use or which one is more appropriate for each case of sequences?
Thanks!

best,
Bárbara

Luka Jovanovic

unread,
Jun 6, 2019, 6:25:55 AM6/6/19
to beast-users
Hello, in order to get the parameters for BEAST2 BDSY I needed first to calculate tMRCA and while I am there to calculate Ne over time. For that, I just have downloaded Beest 1.8.4 however, I think there are some problems with BEATU 1 since it generates bogus xml files. In BEAST 1.8.4, a fatal error report is shown when using the following xml files.
The code goes as follows: 
Parsing XML file: SerbiaMCMC
  File encoding: Cp1252
Looking for plugins in C:\Users\Luka\Downloads\BEAST.v1.8.4 (1)\BEAST v1.8.4\plugins
Fatal error: 
Line number: 1
Column number: 1
Error message: Content is not allowed in prolog.

BEAST has terminated with an error. Please select QUIT from the menu.
Jun 06, 2019 11:56:12 AM dr.app.beast.BeastMain <init>
SEVERE: Error running file: SerbiaMCMC
Jun 06, 2019 11:56:12 AM dr.app.beast.BeastMain <init>
SEVERE: Parsing error - poorly formed XML (possibly not an XML file):
Content is not allowed in prolog.
java.lang.RuntimeException: Terminate
at dr.app.beast.BeastMain.<init>(Unknown Source)
at dr.app.beast.BeastMain.main(Unknown Source)

 Pls. help me.  




SerbiaMCMC

Andrew Rambaut

unread,
Jun 6, 2019, 7:07:49 AM6/6/19
to beast...@googlegroups.com
Dear Luka,

I suspect you tried to load the ‘beauti’ save file rather than generating a BEAST XML file (using the ‘Generate’ button or menu option).

Andrew

--
You received this message because you are subscribed to the Google Groups "beast-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beast-users...@googlegroups.com.
To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.

For more options, visit https://groups.google.com/d/optout.
<SerbiaMCMC>


Luka Jovanovic

unread,
Jun 6, 2019, 7:18:48 AM6/6/19
to beast...@googlegroups.com
Yes, yes I did, I am so stupid. :)
Sorry for the hustle, everything works just fine now.
Thank you for the feedback I appreciate it.
Best regards
Luka J

Virus-free. www.avg.com

You received this message because you are subscribed to a topic in the Google Groups "beast-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beast-users/dxJk3C6Gaxg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beast-users...@googlegroups.com.

To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.
Message has been deleted

HS

unread,
Jul 1, 2019, 1:24:02 PM7/1/19
to beast-users
Dear Andrew,

In this version of Beast in Beuti when lognormal distribution is selected for a prior, there is a possibility to select "Mean/Stdev in real space" option. In the earlier versions the option is available only for the Mean. 

In the xml file generated by v1.10.4 there is the meanInRealSpace="true" option.

I wonder if there should be such option in the xml file for Stdev as well.

Can you please make it clear?

Best,
Hovhannes

Sere Bix

unread,
Jul 2, 2019, 4:51:32 AM7/2/19
to beast-users
In the  current version of beauti (1.10.4) the "Mean/stdev in real space" option for prior with lognormal distribution change the "mu" and "sigma" parameter for that prior to "mean" and "stdev" respectively.

I didn't see the "meanInRealSpace" option transfered into an XML up until now but looking at the XML reference guide (https://beast.community/xml_reference.html) there is already an option for the standard diviation, namely "stdevInRealSpace"

I hoped that helped you Hovhannes.

All the best,
Sere
Reply all
Reply to author
Forward
0 new messages