Archivo por días: septiembre 15, 2010

Blast2GO

Información general

Blast2GO is an ALL in ONE tool for functional annotation of (novel) sequences and the analysis of annotation data. Está instalada la versión 2.5.

Cómo usar Blast2GO

Si se ejecuta en Maiz, Péndulo o Guinness

blast2go

se ejecuta la versión gráfica que se conecta por red a las bases de datos de Blas2GO. No obstante, sólo en los nodos opteron y xeon hemos instalado localmente las bases de datos y para poder realizar cálculos de forma muy eficiente.

Para calcular en en los nodos basta incluir en el script de Torque:

/software/bin/blast2go -v -a -in input_file.xml -out outfile -prop b2gPipe.properties

o con las opciones deseadas y haber configurado correctamente el fichero b2Pipe.properties. Una plantilla de b2gPipe.properties la podéis copiar desde

cp /software/b2g4pipe/b2gPipe.properties .

Para acceder a las bases de datos locales configurar en el fichero b2gPipe.properties a través de la interfaz gráfica de Blast2GO (tools -> DB configuration) o editándolo directamente con los siguientes datos.

// GO and B2G-Mapping Database
Dbacces.dbhost=localhost
Dbacces.dbname=b2g
Dbacces.dbuser=blast2go
Dbacces.dbpasswd=blast4it

Es necesario incluir la etiqueta opteron para dirigir el cálculo a estos nodos y es un programa que se ejecuta en serie, es decir:

#PBS -l nodes=1:ppn=1:opteron

Si se desea actualizar o incluir alguna base de datos localmente contactar con los técnicos.

Más información

También está instalada la versión paralela de BLAST [intlink id=»1495″ type=»post»]mpiBLAST[/intlink].

Tutorial de Blast2GO.

Más información en la página web de Blast2GO.

mpiBLAST

Información general

mpiBlAST es una versión paralela de blast que permite su ejecución paralela en muchos nodos. Está instalada la versión 1.6.0. Compara secuencias de nucleótidos o proteínas con bases de datos y para estudiar relaciones funcionales y evolutivas así como identificar miembros de familas de genes.

Por razones de rendimiento no se ha instalado en los Itanium.

En nuestras pruebas falla si el fichero de secuencias tiene secuencias de más de aproxímadamente 3150 bp.

mpiBLAST está basado en la antigua versión de blast y usa la sintáxis antigua. Puedes verla en este link.

Bases de datos

El Servicio tiene instaladas varias bases de datos para uso compartido, consulta con los técnicos para más información. Si quieres actualizar o instalar más bases de datos contacta con los técnicos para evitar copias múltiples innecesarias.

Cómo ejecutar

Para enviar trabajos al sistema de colas recomendamos el uso del comando

send_blast

Este comando realiza una serie de preguntas y permite lanzar mpiBLAST o el BLAST normal, así como trocear el fichero de datos orginal para paralelizar sobre los datos o ajustar el tiempo de ejecución a Péndulo.

También puedes crear tú propio script de [intlink id=»19″ type=»post»]Torque[/intlink] incluyendo esta línea.

/software/bin/mpiblast -use-virtual-frags -use-parallel-write -output-search-stats

Por ejemplo, para usar blastx con la base de datos nr y obtener los resultados en formato XML y luego poder usarlos con [intlink id=»1493″ type=»post»]Blast2GO[/intlink]:

/software/bin/mpiblast -use-virtual-frags -use-parallel-write -output-search-stats -p blastx -d nr -m 7 -I T -i input_file.fas -o out_file.xml

Para tener un script de ejemplo puedes ejecutar un vez send_blast. También tenemos programas para facilitar el uso de BLAST, consulta con los técnicos.

Es recomendable usar el flag -use-virtual-frags para que no realice una copia local de la base de datos, esta se cargará íntegramente en memoria. Para Péndulo, que tiene poca memoria por nodo, es importante saber cuanta memoria va a necesitar nuestro cálculo para que entre perféctamente (ver informe sobre rendimiento).

Es necesario formatear la base de datos en fragmentos y asignar un fragmento a cada core (cpu). Recomendamos usar las bases de datos instaladas por los técnicos. Para fomatear las bases de datos nr en 6 trozos por ejemplo, está el comando:

/software/bin/mpiformatdb -N 6 -i nr -o T

El número de cores a solicitar para el cálculo con mpiBLAST a de ser igual al número de fragmentos de la base de datos más dos, en este caso solicitaríamos 8 cores.

mpiBLAST escala muy bien. Hemos realizado unos test y benchmark que nos puede servir para predecir el uso de memoria y cpu de los cálculos, que hemos plasmado en el  informe sobre el rendimiento de mpiBLAST.

 

Rendimiento

Para preparar los cálculos puede ser muy instructivo el informe sobre rendimiento de mpiBLAST. También hemos comparado mpiBLAST con el BLAST normal de NCBI y gpuBLAST. Se pueden encontrar los resultados en el blog del Servicio.

Más información

Para más información página web de mpiBLAST. Aquí se pueden encontrar manuales y tutoriales.

También está instaldado [intlink id=»1493″ type=»post»]Blast2GO[/intlink].

Informe sobre el rendimiento de mpiBLAST.

BEAST

Información General

BEAST 1.8.2 is a cross-platform program for Bayesian MCMC analysis of molecular sequences. It is entirely orientated towards rooted, time-measured phylogenies inferred using strict or relaxed molecular clock models. It can be used as a method of reconstructing phylogenies but is also a framework for testing evolutionary hypotheses without conditioning on a single tree topology. BEAST uses MCMC to average over tree space, so that each tree is weighted proportional to its posterior probability.

Cómo usar Beast

Para ejecutar el fichero de entrada input.xml en BEAST usar:

/software/bin/beast input.xml > output.log

Otros programas de BEAST instalados

beast, beauti, loganalyser, logcombiner eta treeannotator.

Benchmark

Presentamos los resultados de un pequeño benchmark realizado en las máquinas del servicio para analizar el rendimiento de beast. Como vemos paraleliza muy bien hasta 8 cores. Para cálculos muy largos puede que usar 16 cores merezca la pena pues aun hay una reducción significativa pero la eficacia en el uso de los procesadores ya cae de forma importante.

Cores Tiempo (s)
Eficiencia (%)
1 12692 100
4 3573 89
8 1889 84
16 1200 66
20 1149 55

Más información

Página web de BEAST con tutoriales y documentación.