Table of Contents



BayeScan aims at identifying candidate loci under natural selection from genetic data, using differences in allele frequencies between populations. The analysis is based on the multinomial-Dirichlet model.


  • Bayescan 2.1 is available in Puhti


To use BayeScan, first run command

module load biokit

After that you can launch bayescan with a command like:

bayescan_2.1 -threads 1 test_binary_AFLP.txt 

With bayescan_2.1 it is important to define the number of threads always explisitely. This is because by default BayeScan tries to use all available cores.

In Puhti, BayeScan tasks should be executed as batch jobs. Below is a sample batch job file for BayeScan:

#SBATCH --job-name=bayescan
#SBATCH --account=project_XXXXXX
#SBATCH --time=08:00:00
#SBATCH --mem=6G
#SBATCH --partition=small
#SBATCH --cpus-per-task=4
#SBATCH --nodes=1
#SBATCH --ntasks=1

module load biokit

bayescan_2.1 -threads ${SLURM_CPUS_PER_TASK} test_binary_AFLP.txt > bayescan_omp.out

The script above reserves 8 hours of computing time, 6GB of memory and 4 computing cores. The XXXXXX in the --account definition should be replaced with the ID number of your computing project. The job can be submitted to the batch job system with command:

sbatch script

Don't use BayeScan with more than 8 cores (execpt if you have verified that your task really benefits from larger core numbers).

More instructions for running batch jobs can be found form CSC batch job instructions

More information

Last edited Mon Feb 10 2020