Ver la página en inglés.
Todas las entradas de: admin
Entornos de Conda
Ver la página en inglés.
Recursos Computacionales
Ver la pagina en inglés
PSI4
Información General
PSI4 is an open-source suite of ab initio quantum chemistry programs designed for efficient, high-accuracy simulations of a variety of molecular properties. It is very easy to use and has an optional Python interface.
Cómo Usar
send_psi4
- Para enviar PSI4 en el sistema de colas se ha creado la utilidad send_ps4. Cuando se ejecuta sin argumentos muestra la siguiente ayuda:
send_psi4 JOBNAME NODES PROCS_PER_NODE TIME [ MEM ] [``Other queue options'']
JOBNAME: | Is the name of the input with extension. |
NODES: | Number of nodes. |
PROCS: | Number of processors. |
TIME: | Time requested to the queue system, format hh:mm:ss. |
MEM: | Optional. Memory in Gb ( It will used 1GB/core if not set). |
[``Other Torque Options'' ] | Optional. There is the possibility to pass more variables to the queuing system. See examples below. More information about this options |
Ejemplos
Enviamos el input.in a un nodo, cuatro procesadores en ese nodo, con un tiempo de 4 horas solicitado:
send_psi4 job1 1 4 04:00:00
Enviamos un trabajo a 2 nodos compuation, 8 procesadores en cada nodo, con un tiempo solicitado de 192 horas, 8 GB de memoria RAM y para empezar a correr después del trabajo 1234.arina haya terminado:
send_psi4 job2 2 8 192:00:00 8 ``-W depend=afterany:1234'
Enviamos el Trabajo a 4 nodos y 4 procesadores en cada nodo, con el tiempo de 200 horas, 2 GB de RAM y solicitamos se nos envíe un correo electrónico al principio y al final del cálculo de la dirección especificada .
send_psi4 job 4 4 200:00:00 2 ``-m be -M mi.email@ehu.es''
Más información
R, RCommader y RStudio
Información general
R 3.3.3 is a freely available language and environment for statistical computing and graphics which provides a wide variety of statistical and graphical techniques: linear and nonlinear modelling, statistical tests, time series analysis, classification, clustering, etc. Please consult the R project homepage for further information.
RStudio and RCommander are graphical front ends for R.
Paquetes Instalados
abind, ape, biomformat, cummeRbund, DCGL, DESeq2, DEXSeq, e1071, edgeR, FactoMineR, GEOquery, lavaan, metagenomeSeq, mnormt, optparse, psych, randomForest, Rcmdr, RColorBrewer, ReactomePA, RUVSeq, vegan, WGCNA, xlsx.
Si se requiere alguno más, por favor, haxlo saber a los técnicos.
Cómo usar
Para usar R en el sistema de colas ejecutar:
/software/bin/R CMD BATCH R-input-file.R
Para ejecutar RStudio se ha de conectarse a Txinparta o Katramila con X2Go y ejecutar
rstudio
Para ejecutar RCommander se ha de conectarse a Txinparta o Katramila con X2Go y ejecutar R. Dentro de R cargar:
library(Rcmdr)
Más información
SCIPION
Información general
Scipion is an image processing framework to obtain 3D models of macromolecular complexes using Electron Microscopy.Versión de Mayo de 2016 de Github.
Cómo usar
Para ejecutarlo usar:
/software/bin/scipion
Más información
Qbox
Información general
Versión: 1.62.3
Qbox is a C++/MPI scalable parallel implementation of first-principles molecular dynamics (FPMD) based on the plane-wave, pseudopotential formalism. Qbox is designed for operation on large parallel computers.
2. Cómo usar
Para enviar trabajos a la cola se puede usar el comando
send_qbox JOBNAME NODES PROCS_PER_NODE[property] TIME
Al ejecutar send_box [Enter] aparecen más las opciones de uso
Más información
Página web de Qbox.
IDBA-UD
Información general
IDBA-UD 1.1.1 is a iterative De Bruijn Graph De Novo Assembler for Short Reads Sequencing data with Highly Uneven Sequencing Depth. It is an extension of IDBA algorithm. IDBA-UD also iterates from small k to a large k. In each iteration, short and low-depth contigs are removed iteratively with cutoff threshold from low to high to reduce the errors in low-depth and high-depth regions. Paired-end reads are aligned to contigs and assembled locally to generate some missing k-mers in low-depth regions. With these technologies, IDBA-UD can iterate k value of de Bruijn graph to a very large value with less gaps and less branches to form long contigs in both low-depth and high-depth regions.
Cómo usar
Para enviar trabajos a la cola se puede usar el comando
send_idba-ud
que realiza unas preguntas para configurar el cálculo.
Rendimiento
IDBA-UD se ejecuta en paralelo con un buen rendimiento medido hasta por lo menos 8 cores. Por encima no se han medido mejoras apreciables. El benchmark se ha realizado con --mimk 40 --step 20
. Por algún motivo este cálculo tiene un salto cualitativo apreciable de 1 a dos cores. Si se pone un step de 10 el rendimiento a varios cores empeora como se observa en la segunda tabla.
1 core como base | 2 cores como base | ||||
Cores | Tiempo (s) | Aceleración | Rendimiento (%) | Aceleración | Rendimiento (%) |
1 | 480 | 1 | 100 | ||
2 | 296 | 1.6 | 81 | 1.0 | 100 |
4 | 188 | 2.6 | 64 | 1.6 | 79 |
8 | 84 | 5.7 | 71 | 3.5 | 88 |
12 | 92 | 5.2 | 43 | 3.2 | 54 |
El segundo benchmark se ha realizado con un fichero mayor, con 10 millones de bases y las opciones --mink 20 --step 10 --min_support 2
. Observamos un comportamiento más regular que en el benchmark anterior y como la paralelización es buena hasta los 4 cores.
Cores | Tiempo (s) | Aceleración | Rendimiento (%) |
1 | 13050 | 1 | 100 |
2 | 6675 | 2.0 | 98 |
4 | 3849 | 3.4 | 85 |
8 | 3113 | 4.2 | 52 |
16 | 2337 | 5.6 | 35 |
20 | 2409 | 5.4 | 27 |
Más información
Página web de IDBA-UD.
SPAdes
Información general
SPAdes 3.6.0 – St. Petersburg genome assembler – is intended for both standard isolates and single-cell MDA bacteria assemblies. It works with Illumina or IonTorrent reads and is capable of providing hybrid assemblies using PacBio, Oxford Nanopore and Sanger reads. You can also provide additional contigs that will be used as long reads. Supports paired-end reads, mate-pairs and unpaired reads. SPAdes can take as input several paired-end and mate-pair libraries simultaneously. Note, that SPAdes was initially designed for small genomes. It was tested on single-cell and standard bacterial and fungal data sets.
Cómo usar
Para enviar trabajos a la cola se puede usar el comando
send_spades
que realiza unas preguntas para configurar el cálculo.
Rendimiento
No se ha medido ninguna mejora ni reducción del tiempo de cálculo configurando más de un core en un tipo de cálculo:
spades.py -pe1-1 file1 -pe1-2 file2 -o outdir
Recomendamos usar 1 core a menos que se sepa que se va a obtener un mejor rendimiento con más cores.
Más información
Página web de SPAdes.
MetAMOS
Información general
MetAMOS represents a focused effort to create automated, reproducible, traceable assembly & analysis infused with current best practices and state-of-the-art methods. MetAMOS for input can start with next-generation sequencing reads or assemblies, and as output, produces: assembly reports, genomic scaffolds, open-reading frames, variant motifs, taxonomic or functional annotations, Krona charts and HTML report. 1.5rc3 version.
Cómo usar
Para enviar trabajos a la cola se puede usar el comando
send_metamos
que realiza unas preguntas para configurar el cálculo. Hay que tener en cuenta que MetAMOS usa mucha memoria RAM, entorno a 1 GB por millón de reads.
Más información
Página web de MetAMOS.
R-3.2
Información general
R is ‘GNU S’, a freely available language and environment for statistical computing and graphics which provides a wide variety of statistical and graphical techniques: linear and nonlinear modelling, statistical tests, time series analysis, classification, clustering, etc. Please consult the R project homepage for further information.
Paquetes Instalados
lavaan, mnormt, psych, Rcmdr, abind, e1071, xlsx, biocLite(),FactoMineR
Si se requiere alguno más, por favor, haznoslo saber.
Cómo usar
Para usar R-3.2 ejecutar:
/software/R-3.2.0/bin/R CMD BATCH input.R
Más información
QIIME
Información general
QIIME (Quantitative Insights Into Microbial Ecology) is an open-source bioinformatics pipeline for performing microbiome analysis from raw DNA sequencing data. QIIME is designed to take users from raw sequencing data generated on the Illumina or other platforms through publication quality graphics and statistics. This includes demultiplexing and quality filtering, OTU picking, taxonomic assignment, and phylogenetic reconstruction, and diversity analyses and visualizations. QIIME has been applied to studies based on billions of sequences from tens of thousands of samples.
Cómo ejecutar
Para enviar trabajos de QIIME ejecutar el comando
send_qiime
y responder a las preguntas que nos realice.
USEARCH
QIIME puede usar el paquete [intlink id=»7700″ type=»post»]USEARCH[/intlink].
Más información
[intlink id=»7700″ type=»post»]USEARCH[/intlink].
USEARCH
Información general
USEARCH is a unique sequence analysis tool that offers search and clustering algorithms that are often orders of magnitude faster than BLAST. Tenemos la versión de 32 bits que es gratuita, pero no distribuible a terceros y tiene la limitación de 4 GB de RAM como máximo.
Cómo usar
Para ejecutar USEARCH ejecutar en los scripts el comando
/software/bin/usearch
por ejemplo
/software/bin/usearch -cluster_otus data.fa -otus otus.fa -uparseout out.up -relabel OTU_ -sizein -sizeout
Por el momento USEARCH solo está disponible en los nodos con etiqueta xeon20.
QIIME
USEARCH puede ser empleado bajo [intlink id=»7686″ type=»post»]QIIME[/intlink].
Más información
[intlink id=»7686″ type=»post»]QIIME[/intlink].
Cufflinks
Información general
Cufflinks is a reference-guided assembler for RNA-Seq experiments. It
simultaneously assembles transcripts from reads and estimates their relative
abundances, without using a reference annotation. The software expects as
input RNA-Seq read alignments in SAM format (http://samtools.sourceforge.net).
Versión instalada
2.2.0
Cómo usar
#!/bin/bash #PBS -l nodes=1:ppn=4:rh7 #PBS -l mem=8gb #PBS -l walltime=24:00:00 cd $PBS_O_WORKDIR export PATH=/software/anaconda2/bin:$PATH export LD_LIBRARY_PATH=/software/anaconda2/lib:$LD_LIBRARY_PATH NPROCS=$( cat $PBS_NODEFILE | wc -l ) cufflinks -p $NPROCS -o C1_R2_clout C1_R2_thout/accepted_hits.bam
Más información
http://cole-trapnell-lab.github.io/cufflinks/
TopHat
Información general
TopHat is a fast splice junction mapper for RNA-Seq reads. It aligns RNA-Seq reads to mammalian-sized genomes using the ultra high-throughput short read aligner Bowtie, and then analyzes the mapping results to identify splice junctions between exons.
Versión instalada
2.1.1
Cómo usar
Un ejemplo sería para el script de torque sería:
#!/bin/bash #PBS -l nodes=1:ppn=8:rh7 #PBS -l mem=8gb #PBS -l walltime=24:00:00 cd $PBS_O_WORKDIR export PATH=/software/anaconda2/bin:$PATH export LD_LIBRARY_PATH=/software/anaconda2/lib:$LD_LIBRARY_PATH NPROCS=$(wc -l $PBS_NODEFILE) tophat --bowtie1 -p $NPROCS -G genes.gtf -o C1_R1_thout genome GSM794483_C1_R1_1.fq.gz GSM794483_C1_R1_2.fq.gz
Más información
Página web de TopHat.
Trinity
Información general
2.1.1 release. Trinity, represents a novel method for the efficient and robust de novo reconstruction of transcriptomes from RNA-seq data. Trinity combines three independent software modules: Inchworm, Chrysalis, and Butterfly, applied sequentially to process large volumes of RNA-seq reads. Trinity partitions the sequence data into many individual de Bruijn graphs, each representing the transcriptional complexity at at a given gene or locus, and then processes each graph independently to extract full-length splicing isoforms and to tease apart transcripts derived from paralogous genes. Briefly, the process works like so:
- Inchworm assembles the RNA-seq data into the unique sequences of transcripts, often generating full-length transcripts for a dominant isoform, but then reports just the unique portions of alternatively spliced transcripts.
- Chrysalis clusters the Inchworm contigs into clusters and constructs complete de Bruijn graphs for each cluster. Each cluster represents the full transcriptonal complexity for a given gene (or sets of genes that share sequences in common). Chrysalis then partitions the full read set among these disjoint graphs.
- Butterfly then processes the individual graphs in parallel, tracing the paths that reads and pairs of reads take within the graph, ultimately reporting full-length transcripts for alternatively spliced isoforms, and teasing apart transcripts that corresponds to paralogous genes.
Cómo usar
Se puede usar el comando:
send_trinity
para enviar trabajos al sistema de colas. Tras responder unas preguntas creará el script que se enviará al sistema de colas. Para usuarios avanzados se puede utilizar para generar un script de ejemplo.
Rendimiento
A pesar de que Trinity puede ejecutarse en paralelo no lo hace de forma eficiente por encima 4 cores, siendo la reducción del tiempo de computo muy pequeña al aumentar el número de cores de cálculo como se observa en la tabla. Trinity es un programa que consume grandes cantidades de RAM.
Cores | 1 | 4 | 8 | 12 |
Tiempo | 5189 | 2116 | 1754 | 1852 |
Aceleración | 1 | 2.45 | 2.96 | 2.80 |
Eficiencia (%) | 100 | 61 | 37 | 23 |
Más información
PHENIX
Información general
Versión dev-2229 (superior a 1.10) de PHENIX (Python-based Hierarchical ENvironment for Integrated Xtallography). PHENIX es un paquete de software para la determinación automática de estructuras macromoleculares usando cristalografía de rayos X y otros métodos. Está compilado para poder usarlo con [intlink id=»1969″ type=»post»]AMBER[/intlink].
Cómo usar
Para ejecutar la interfaz gráfica en Guinness ejecutar el comando:
phenix &
Para ejecutar PHENIX en los scripts del sistema de colas hay que cargar primero el entorno de PHENIX con el comando source
, ejecutar por ejemplo:
phenix.xtriage my_data.sca [options]
Más información
Página web de PHENIX.
Documentación en línea.
Documentación en pdf.
ABySS
Información general
Versión 1.3.2 ABySS (Assembly By Short Sequences). ABySS is a de novo, parallel, paired-end sequence assembler that is designed for short reads. ABySS puede ejecutarse en paralelo.
Leer también sobre [intlink id=»6055″ type=»post»]velvet[/intlink] y el artículo que hemos publicado comparando ambos.
Cómo usar
Los ejecutables se pueden encontrar en /software/abyss/bin
. Así, para ejecutar añadir en el scritp para el sistema de colas por ejemplo:
/software/abyss/bin/abyss-pe [opciones de abyss-pe]
Rendimiento
Leer también sobre [intlink id=»6055″ type=»post»]velvet[/intlink] y el artículo que hemos publicado comparando ambos.
Paralelización
Se han realizado unos benchmark sobre Abyss. Los benchmark se han realizado con ficheros obtenidos por un NGS Illumina HiSeq2000 con 100 bp por lectura. En la tabla 1 podemos ver un ejemplo de como escala ABySS con el número de cores. Como vemos ABySS escala bien hasta los 8 cores. El resultado parece ser independiente del número de secuencias procesadas una vez estas son muchas (>10e6).
cores | 2 | 4 | 8 | 12 | 24 |
Tiempo (s) | 47798 | 27852 | 16874 | 14591 | 18633 |
Aceleración | 1 | 1.7 | 2.8 | 3.3 | 2.6 |
Rendimiento (%) | 100 | 86 | 71 | 55 | 21 |
Tiempo de ejecución
También hemos analizado el tiempo de ejecución en función del tamaño de los datos de entrada. Observamos en la tabla 2 como el pasar de 1 millón a 10 millones de secuencias el tiempo se multiplica también por 10. De 10 millones a 100 el tiempo aumenta entre 10 y 20. Por lo tanto, el comportamiento no es totalmente lineal, pero se aproxima.
secuencias | 10e6 | 10e7 | 10e8 |
Tiempo en 2 cores (s) | 247 | 2620 | 47798 |
Tiempo en 4 cores (s) | 134 | 1437 | 27852 |
Tiempo en 8 cores (s) | 103 | 923 | 16874 |
Memoria RAM
En estos programas más importante que el tiempo de ejecución, que se mantiene en unos límites relativamente bajos, es el uso de la memoria RAM, que puede ser limitante e impedir la realización del cálculo. En la tabla 3 observamos como crece la memoria RAM al aumentar el número de secuencias. También mostramos en la tabla los logaritmos de los valores medidos que se han usado para realizar un ajuste lineal. Los cálculos se han realizado usando 12 cores.
secuencias | 10e6 | 5*10e6 | 10e7 | 5*10e7 | 10e8 |
RAM (GB) | 4.0 | 7.6 | 11 | 29 | 44 |
log(secuencias) | 6 | 6.7 | 7 | 7.7 | 8 |
log(RAM) | 0.60 | 0.88 | 1.03 | 1.46 | 1.65 |
De los valores de la tabla obtenemos un buen ajuste de la evolución de la memoria RAM a la siguiente ecuación que nos da la memoria RAM en GB en función del número de secuencias (s)
log(RAM)=0.53*log(s)-2.65
o lo que es lo mismo
RAM=(s^0.53)/447
Conclusión
El uso de la memoria RAM es menor que con otros ensambladores como [intlink id=»6055″ type=»post»]Velvet[/intlink], ver también el informe Velvet performance in the machines of the Computing Service of the UPV/EHU y el artículo que hemos publicado. Además, la paralelización con MPI permite agregar la memoria de varios nodos para poder realizar cálculos mayores.
Más información
Página web de ABySS.
Ensamblador [intlink id=»6055″ type=»post»]Velvet[/intlink].
Informe Velvet performance in the machines of the Computing Service of the UPV/EHU.
Entrada en el blog hpc: Velvet performance in the machines of the Computing Service of the UPV/EHU.
clean_reads
Información general
Version 0.2.2. clean_reads
limpia reads de NGS (Next Generation Sequencing) – Sanger, 454, Illumina y solid. Puede eliminar
- Regiones de mala calidad.
- Adaptadores
- Vectores
- Expresiones regulares
También filtra reads que no llegan a un mínimo de calidad basándose en la longitud y cualidad media. Se puede ejecutar en paralelo.
Cómo usar
Para enviar trabajos de clean_reads
al sistema de colas recomendamos usar el comando
send_clean_reads
que nos hará las preguntas necesarias para preparar y enviar el cálculo.
Rendimiento
clean_reads
se puede ejecutar en paralelo y escala bien hasta los 8 cores. A 12 cores el rendimiento cae en picado. En la tabla 1 se pueden ver los resultados del benchmark, Éste se ha ejecutado en un nodo con 12 cores y procesadores Xeon E5645.
cores | 1 | 4 | 8 | 12 |
Tiempo (s) | 1600 | 422 | 246 | 238 |
Aceleración | 1 | 3.8 | 6.5 | 6.7 |
Rendimiento (%) | 100 | 95 | 81 | 56 |
Se ha ejecutado el comando
clean_reads -i in.fastq -o out.fastq -p illumina -f fastq -g fastq -a a.fna -d UniVec -n 20 --qual_threshold=20 --only_3_end False -m 60 -t 12
Más información
Velvet
Información general
Versión 1.2.03. Velvet is a set of algorithms manipulating de Bruijn graphs for genomic and de novo transcriptomic Sequence assembly. It was designed for short read sequencing technologies, such as Solexa or 454 Sequencing and was developed by Daniel Zerbino and Ewan Birney at the European Bioinformatics Institute. The tool takes in short read sequences, removes errors then produces high quality unique contigs. It then uses paired-end read and long read information, when available, to retrieve the repeated areas between contigs.
Leer también sobre [intlink id=»6111″ type=»post»]ABySS[/intlink] y el artículo que hemos publicado comparando ambos.
Cómo usar
Para ejecutar velveth
o velvetg
en el sistema de colas Torque añadir en los scripts:
/software/bin/velvet/velveth [opciones de velvet]
/software/bin/velvet/velvetg [opciones de velvet]
Rendimiento
Velvet ha sido compilado con soporte paralelo a través de OpenMP. Hemos medido el rendimiento y los resultados están disponibles en la memoria Velvet performance in the machines of the Computing Service of the UPV/EHU. Velvet usa una enorme cantidad de memoria RAM para grandes cálculos y también la hemos medido. Hemos obtenido unas simples fórmulas para predecir el uso de memoria RAM en función de los ficheros de entrada de modo que el investigador pueda planificar su investigación.
Leer también sobre [intlink id=»6111″ type=»post»]ABySS[/intlink] y el artículo que hemos publicado comparando ambos.
Más información
Página web de Velvet.
Memoria sobre el rendimiento Velvet performance in the machines of the Computing Service of the UPV/EHU.
Entrada en el blog hpc: Velvet performance in the machines of the Computing Service of the UPV/EHU.
BLAST
Información general
Versión 2.2.24 de BLAST de NCBI. El BLAST (Basic Local Alignment Search Tool) es un algoritmo y un programa informático de alineamiento de secuencias de tipo local, ya sea de ADN o de proteínas, empleado en bioinformática. El programa es capaz de comparar una secuencia problema contra una gran cantidad de secuencias que se encuentren en una base de datos y encontrar las que tienen mayor parecido así como la significación de cada resultado.
Por razones de rendimiento no se ha instalado en los Itanium.
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
que nos hará las preguntas necesarias para lanzar el trabajo.
Rendimiento y gpuBLAST
Hemos comparado el BLAST normal de NCBI con mpiBLAST gpuBLAST. Se pueden encontrar los resultados en el blog del Servicio. [intlink id=»1495″ type=»post» target=»_blank»]mpiBLAST[/intlink] está instalado en el Servicio. También gpuBLAST pero no está activo dado que son pocos los nodos con GPGPUs y no se obtiene un rendimiento tan grande.
Más información
Para más información página web de BLAST.
También está instaldado [intlink id=»1493″ type=»post»]Blast2GO[/intlink] y [intlink id=»1495″ type=»post» target=»_blank»]mpiBLAST[/intlink].
Genepop
Información general
Versión 4.1.
Genepop is a population genetics software package, which has options for the following analysis: Hardy Weinberg equilibrium, Linkage Disequilibrium, Population Differentiation, Effective number of migrants, Fst or other correlations.
Cómo ejecutar
Para ejecutarlo en el sistema de colas debéis de incluir en el script para el sistema de colas la línea:
/software/bin/Genepop < input_file
donde input_file
tiene los parametros de Genepop, i.e, las respuestas a las preguntas que realiza en interactivo. Os recomendamos usar [intlink id=»233″ type=»post»]qsub en interactivo[/intlink].
Más información
CLUMPP
Información general
Versión 1.1.2. CLUMPP is a program that deals with label switching and multimodality problems in population-genetic cluster analyses. CLUMPP permutes the clusters output by independent runs of clustering programs such as [intlink id=»5855″ type=»post»]structure[/intlink], so that they match up as closely as possible. The user has the option of choosing one of three algorithms for aligning replicates, with a tradeoff of speed and similarity to the optimal alignment.
Cómo ejecutar
Para ejecutarlo en el sistema de colas debéis de incluir en el script para el sistema de colas la línea:
/software/bin/CLUMMP
con las opciones necesarias para CLUMPP. Os recomendamos usar [intlink id=»233″ type=»post»]qsub en interactivo[/intlink].
Más información
Structure
Información general
Versión 2.33.
The program structure is a free software package for using multi-locus genotype data to investigate population structure. Its uses include inferring the presence of distinct populations, assigning individuals to populations, studying hybrid zones, identifying migrants and admixed individuals, and estimating population allele frequencies in situations where many individuals are migrants or admixed. It can be applied to most of the commonly-used genetic markers, including SNPS, microsatellites, RFLPs and AFLPs.
Cómo ejecutar
Para ejecutar la interfaz gráfica de usuario ejecutar en Péndulo, Maiz o Guinness
structure
Para poder ejecutar aplicaciones gráficas leer [intlink id=»48″ type=»post»]cómo acceder a Arina[/intlink].
Para ejecutarlo en el sistema de colas debéis de incluir en el script para el sistema de colas la línea:
/software/bin/structure
con las opciones necesarias para structure. Os recomendamos usar [intlink id=»233″ type=»post»]qsub en interactivo[/intlink].
Más información
MCCCS Towhee 7.0.2
Towhee es un código de Monte Carlo (libre) de simulación molecular diseñado originalmente para la predicción de equilibrio en fluidos utilizando campos de fuerza basados en átomos.
Información General
Towhee puede utilizar varios tipos de conjuntos estadistícos l (NVT, NpT, uVT, NVT and NpT) varios pasos Montecarlo y también diferentes campos de fuerza. (Más información).
Cómo Usar
send_towhee
- Para enviar Towhee en el sistema de colas se ha creado la utilidad send_towhee. Cuando se ejecuta,
se muestra la sintaxis del comando, que se resume a continuación: - send_towhee JOBNAME NODES PROCS_PER_NODE TIME [ MEM ] [``Other queue options'' ]
JOBNAME: | Nombre del Output. |
NODES: | número de nodos. |
PROCS: | Número de procesadores. |
TIME: | Tiempo solicitado al sistema de colas: formato hh:mm:ss. |
MEM: | Opcional. Memoria en Gb ( It will used 1GB/core if not set). |
[``Other Torque Options'' ] | Opcional. Otras opciones que se quieran pasar al sistema de colas. More information about this options |
Ejemplos
Enviamos la entrada Towhee a un nodo, cuatro procesadores en ese nodo, con un tiempo de 4 horas solicitado. El output generado estara en el fichero OUT
send_gulp OUT 1 4 04:00:00
Enviamos un trabajo a 2 nodos compuation, 8 procesadores en cada nodo, con un tiempo solicitado de 192 horas, 8 GB de memoria RAM y para empezar a correr después del trabajo 1234.arina haya terminado:
send_gulp OUT 2 8 192:00:00 8 ``-W depend=afterany:1234'
Enviamos el Trabajo a 4 nodos y 4 procesadores en cada nodo, con el tiempo de 200 horas, 2 GB de RAM y solicitamos se nos envíe un correo electrónico al principio y al final del cálculo de la dirección especificada .
send_gulp OUT 4 4 200:00:00 2 ``-m be -M mi.email@ehu.es''
El comando send_gulp copia el contenido del directorio desde donde se envió el trabajo al /scratch o /gscratch, si utilizamos dos o más nodos, y ahí es donde se hace el cálculo.
Jobs Monitoring
Para facilitar el seguimiento y/o control de los cálculos Towhee, se puede utilizar remote_vi
remote_vi JOBID
Nos muestra el archivo output indicado en send_towhee (sólo si ha sido enviado con send_towhee).
Más información
Gulp 4.0
Información General
GULP es un programa para llevar a cabo una variedad de tipos de simulación de materiales a partir de las condiciones de contorno de 0-D (moléculas y clusters), 1-D (polímeros), 2-D (superficies, losas, …), o 3 -D (sólidos periódicos). El objetivo del código es una solución analítica, a través del uso de la «dinámica de red» (cuando sea posible) en lugar de dinámica molecular. Se pueden utilizar una gran variedad de campos de fuerza dentro de GULP que abarca el modelo de capas de materiales iónicos, la mecánica molecular para los sistemas orgánicos, el modelo del átomo embebido de los metales y el potencial REBO de hidrocarburos. Se incluyen derivadas analíticas por lo menos de segundo orden para la mayoría de los campos de fuerza, y de tercer orden para muchos.
Está instalado en guinness:/software/Gulp
Cómo Usar
Antes de usar GULP por favor verifica que cumplas las condiciones de uso.
send_gulp
- Para enviar GULP en el sistema de colas se ha creado la utilidad send_gulp. Cuando se ejecuta,
se muestra la sintaxis de comandos, que se resume a continuación: - send_lmp JOBNAME NODES PROCS_PER_NODE TIME [ MEM ] [``Other queue options'' ]
JOBNAME: | El nombre del input con extensión. |
NODES: | Número de nodos. |
PROCS: | Número de procesadores. |
TIME: | Tiempo pedido al sistema de colas, formato hh:mm:ss. |
MEM: | Optional. Memora en Gb (Si no se especifíca usará 1GB/core). |
[``Other Torque Options'' ] | Optional. Otras . More information about this options |
Ejemplos
Enviamos la entrada GULP Job1 a un nodo, cuatro procesadores en ese nodo, con un tiempo de 4 horas solicitado:
send_gulp job1.gin 1 4 04:00:00
Enviamos un trabajo a 2 nodos compuation, 8 procesadores en cada nodo, con un tiempo solicitado de 192 horas, 8 GB de memoria RAM y para empezar a correr después del trabajo 1234.arina haya terminado:
send_gulp job2.gin 2 8 192:00:00 8 ``-W depend=afterany:1234'
Enviamos el Trabajo a 4 nodos y 4 procesadores en cada nodo, con el tiempo de 200 horas, 2 GB de RAM y solicitamos se nos envíe un correo electrónico al principio y al final del cálculo de la dirección especificada .
send_gulp job.gin 4 4 200:00:00 2 ``-m be -M mi.email@ehu.es''
El comando send_gulp copia el contenido del directorio desde donde se envió el trabajo al /scratch o /gscratch, si utilizamos dos o más nodos, y ahí es donde se hace el cálculo.
Jobs Monitoring
Para facilitar el seguimiento y/o control de los cálculos GULP, se puede utilizar remote_vi
remote_vi JOBID
Nos muestra el archivo *. out (sólo si ha sido enviado con send_gulp).
Más información
LAMMPS
LAMMPS (“Large-scale Atomic/Molecular Massively Parallel Simulator”) es un programa de dinámica molecular de los Laboratorios Nacionales Sandia. LAMMPS hace uso de MPI para la comunicación en paralelo y es un código libre/abierto, distribuido bajo los términos de la Licencia Pública General de GNU. Versión del 5 de Junio de 2019.
Información General
LAMMPS es un código de dinámica molecular clásica que modela conjuntos de partículas en estado líquido, sólido o gaseoso. Puede modelar sistemas atómicos, poliméricos, biológicos, sistemas metálicos, granulados, y de grano grueso usando una variedad de campos de fuerza y condiciones de contorno.
En sentido más general, LAMMPS integra las ecuaciones de movimiento de Newton para las colecciones de los átomos, moléculas o partículas macroscópicas que interactúan a través de fuerzas de corto o de largo alcance con una variedad de Newton condiciones iniciales y/o de contorno.
Para lograr eficiencia computacional, LAMMPS utiliza listas de vecinos para realizar un seguimiento de las partículas cercanas. Las listas están optimizadas para sistemas de partículas que son repulsivas en las distancias cortas, por lo que la densidad local de partículas nunca se vuelve demasiado grande. En las máquinas en paralelo, LAMMPS utiliza técnicas de descomposición espacial de la partición del dominio de simulación 3D en pequeños sub-dominios, uno de los cuales se asigna a cada procesador. Los procesadores comunican y almacenan la información de átomos «fantasma» que rodean a sus sub-dominios. LAMMPS es más eficiente (en el sentido de cálculos en paralelo) para sistemas cuyas partículas llenan una caja rectangular en 3D con una densidad más o menos uniforme. Artículos con los detalles técnicos de los algoritmos utilizados en LAMMPS se enumeran en esta sección.
Cómo Usar
send_lmp
- Para enviar LAMMPS en el sistema de colas se ha creado la utilidad send_lmp. Cuando se ejecuta,
se muestra la sintaxis de comandos, que se resume a continuación: - send_lmp JOBNAME NODES PROCS_PER_NODE TIME [ MEM ] [``Other queue options'']
JOBNAME: | Is the name of the input with extension. |
NODES: | Number of nodes. |
PROCS: | Number of processors. |
TIME: | Time requested to the queue system, format hh:mm:ss. |
MEM: | Optional. Memory in Gb ( It will used 1GB/core if not set). |
[``Other Torque Options'' ] | Optional. There is the possibility to pass more variables to the queuing system. See examples below. More information about this options |
Ejemplos
Enviamos la entrada lammps Job1 a un nodo, cuatro procesadores en ese nodo, con un tiempo de 4 horas solicitado:
send_lmp job1.in 1 4 04:00:00
Enviamos un trabajo a 2 nodos compuation, 8 procesadores en cada nodo, con un tiempo solicitado de 192 horas, 8 GB de memoria RAM y para empezar a correr después del trabajo 1234.arina haya terminado:
send_lmp job2.inp 2 8 192:00:00 8 ``-W depend=afterany:1234'
Enviamos el Trabajo a 4 nodos y 4 procesadores en cada nodo, con el tiempo de 200 horas, 2 GB de RAM y solicitamos se nos envíe un correo electrónico al principio y al final del cálculo de la dirección especificada .
send_lmp job.inp 4 4 200:00:00 2 ``-m be -M mi.email@ehu.es''
send_lmp comando copia el contenido del directorio desde donde se envió el trabajo al /scratch o /gscratch, si utilizamos dos o más nodos. Y ahí es donde se hace el cálculo.
Jobs Monitoring
Para facilitar el seguimiento y/o control de los cálculos LAMMPS, se puede utilizar remote_vi
remote_vi JOBID
Nos muestra el archivo *. out (sólo si ha sido enviado con send_lmp).
Más información
XCrySDen
Información general
XcrysSDen es un programa de visualización de estructuras cristalinas y moleculares. Dibuja isosuperficies y contornos que pueden ser superpuestas a las estructuras cristalinas y rotadas y manipuladas interactivamente.
Cómo ejecutar
Para usar XCrySDen ejecutar:
xcrysden
Es necesario poder abrir aplicaciones gráficas ([intlink id=»48″ type=»post»]ver acceso a los servidores[/intlink])
Más información
GRETL
Información general
Gretl (Gnu Regression, Econometrics and Time-series Library) es un paquete de software para análisis econométrico. Está disponible la versión 1.9.6.
Caraterísticas
- Incluye una gran variedad de estimadores: mínimos cuadrados, máxima verosimilitud, GMM; de una sola ecuación y de sistemas de ecuaciones
- Métodos de series temporales: ARMA, GARCH, VARs y VECMs, contrastes de raíces unitarias y de cointegración, etc.
- Variables dependientes limitadas: logit, probit, tobit, regresión por intervalos, modelos para datos de conteo y de duración, etc.
- Los resultados de los modelos se pueden guardar como ficheros LaTeX, en formato tabular y/o de ecuación.
- Incluye un lenguaje de programación vía ‘scripts’ (guiones de instrucciones): las órdenes se pueden introducir por medio de los menús o por medio de guiones.
- Estructura de bucles de instrucciones para simulaciones de Monte Carlo y procedimientos de estimación iterativos.
- Controlador gráfico mediante menús, para el ajuste fino de los gráficos Gnuplot.
- Enlace a GNU R, GNU Octave y Ox para análisis más sofisticados de los datos.
Cómo usar
Para usar gretl ejecutar:
/software/bin/gretlcli
Más información
HMPP
Información general
Versión 2.5.2 del compilador de código C y Fortran para GPGPUs, basado en directivas. Soporta Nvidia CUDA y OpenCL.
Cómo ejecutar
Para ejecutar el compilador usar
hmpp
por ejemplo, para compilar con el compilador gcc el programa test.c
hmpp gcc test.c -o test
Más información
Gaussview
Versión 5.0.9 de Gaussview, interfaz gráfica para la creación y análisis de trabajos de [intlink id=»12″ type=»post»]Gaussian[/intlink]. Para su uso basta con ejecutar:
gv
Se recomienda usarlo en Guinness a través de NX-Client. Para ver como configurarlo correctamente seguir esta guía paso a paso.
CPLEX
Información general
CPLEX proporciona algoritmos matemáticos robustos, permite resolver problemas con millones de variables y restricciones. Versión 12.6.3.
Características
- Automatic and dynamic algorithm parameter control
IBM ILOG CPLEX Optimizer automatically determines «smart» settings for a wide range of algorithm parameters, usually resulting in optimal linear programming solution performance. However, for a more hands-on approach, dozens of parameters may be manually adjusted, including algorithmic strategy controls, output information controls, optimization duration limits, and numerical tolerances. - Fast, automatic restarts from an advanced basis
Large problems can be modified, and then solved again in a fraction of the original solution time. - A variety of problem modification options, such as:
– The ability to add and delete variables
– The ability to add and delete constraints
– The ability to modify objective, right-hand side, bound and matrix coefficients
– The ability to change constraint types - A wide variety of input/output options, such as:
– Problem files: read/write MPS files, IBM ILOG CPLEX Optimizer LP files, MPS basis and revise files, binary problem/basis files
– Log files: session information and various solution reports
– Solution files: ASCII and binary solution files
– IBM ILOG CPLEX Optimizer messages: Each message type (such as RESULTS, WARNINGS or ERRORS) can be directed to specified files, or completely suppressed. - Post solution information and analysis, including:
– Objective function value
– Solution variable and slack values
– Constraint dual values (shadow prices)
– Variable reduced costs
– Right-hand side, objective function, and bound sensitivity ranges
– Basic variables and constraints
– Solution infeasibilities (if any exist)
– Iteration/node count, solution time, process data
– Infeasibility (IIS) finder for diagnosing problem infeasibilities
– Feasibility optimizer for automatic correction of infeasible models
Cómo usar
Para usar CPLEX ejecutar:
/software/bin/cplex/cplex
Benchmark
Hemos realizado un pequeño benchmark usando COIN-OR, ver la [intlink id=»1397″ type=»post»]página de COIN-OR[/intlink].
Más información
Turbomole
Presently TURBOMOLE is one of the fastest and most stable codes available for standard quantum chemical applications. Unlike many other programs, the main focus in the development of TURBOMOLE has not been to implement all new methods and functionals, but to provide a fast and stable code which is able to treat molecules of industrial relevance at reasonable time and memory requirements.
Información general
Turbomole se utiliza tanto en el ámbito académico como en el industrial, en áreas tan diversas como la catálisis homogénea y heterogénea, química orgánica e inorgánica, diversos tipos de espectroscopia y bioquímica.
Las principales funcionalidades del programa son:
- Teoría del Funcional de la Densidad (LDA, GGA, híbridos).
- Funciones respuesta (HF, DFT).
- Cálculos relativísticos con interacciones spin-orbita.
- Cálculos Coupled-Cluster (CC2) para estados fundamentales y excitados.
- Cálculos de momentos de transición (monoelectrónicos) entre estados excitados CC2.
- Optimización de estructuras (mínimos y estados de transición).
- Frecuencias vibracionales (analíticas para HF y DFT, numéricas para el resto de métodos).
- NMR.
- Energías Douglas-Kroll-Hess en C1.
- Dinámica molecular ab initio.
Cómo usar
El programa se encuentra en guinness en /software/TURBOMOLE
, y para un uso más sencillo se ha creado la herramienta send_turbo
. Ver [intlink id=»4713″ type=»post»]Cómo enviar Turbomole[/intlink].
TmoleX permite importar o construir estructuras a calcular, y visualizar y analizar los resultados obtenidos. TmoleX se puede descargar gratuitamente para instalarlo localmente en los PCs o se puede ejecutar en guinness. Para ustar Tmolex ejecutar:
TmoleX
Para abortar limpiamente un cálculo tras la iteración en curso que se está ejecutando, con el identificador de trabajo 1234.arina por ejemplo, podéis usar el comando:
turbomole_stop 1234
Recordar que hay que borrar el fichero «stop» si se reenvía el cálculo.
Más información
Orca
ORCA (3.0.3) is a flexible, efficient and easy-to-use general purpose tool for quantum chemistry with specific emphasis on spectroscopic properties of open-shell molecules. It features a wide variety of standard quantum chemical methods ranging from semiempirical methods to DFT to single- and multireference correlated ab initio methods. It can also treat environmental and relativistic effects.
Información general
ORCA es un programa, flexible, eficiente y fácil de utilizar, una herramienta de propósito general para la química cuántica, con especial hincapié en las propiedades espectroscópicas de moléculas con capa abierta. Cuenta con una amplia variedad de métodos estándar de química cuántica desde los métodos semiempíricos, DFT …
Cómo usar
Los ejecutables de se encuentran instalados en /software/orca
, y para un uso más sencillo se ha creado la herramienta send_orca
. Para usarla ver cómo enviar Orca.
Benchmark
Presentamos los datos de un benchmark realizados con Orca (optimización b3lyp) en las máquinas del servicio, excluimos itanium porque el rendimientro es muy pobre.
Cores Xeon | Tiempo | Speed Up | Eficiencia |
1 | 3438 | 100% | |
8 | 498 | 6.9 | 86% |
16 | 316 | 10.90 | 62% |
32 | 218 | 15.77 | 50% |
Terachem
Información General
TeraChem 1.45 is general purpose quantum chemistry software designed to run on NVIDIA GPU architectures under a 64-bit Linux operating system. Some of TeraChem features include:
- Full support for both NVIDIA Tesla and Fermi GPUs
- Restricted Hartree-Fock and Kohn-Sham single point energy and gradient calculations
- Various DFT functionals (BLYP, B3LYP, PBE, etc) and DFT grids (800-80,000 grid points per atom)
- Empirical dispersion corrections (DFT-D)
- Geometry optimization and transition state search (including constraints)
- Ab initio molecular dynamics (NVE and NVT ensembles)
- Support of multiple-GPU systems
- Up to 1000 times faster than conventional CPU-based codes
- Designed for large molecules – reads/writes PDB files directly
- Optimization including geometric constraints
- Improved mixed-precision for increased accuracy
Cómo mandar Terachem
Existe el comando [intlink id=»3851″ type=»post»]send_terachem
[/intlink] para facilitar enviar trabajos al cluster
Más información
GSL
Versión 1.16 de las librerías matemáticas generadoras de números aleatorios, funciones especiales, fft, álgebra lineal, funciones especiales,… y más de 1000 funciones en total.
Para información sobre las librerías y como enlazarlas usar el comando
gsl-config
Más información en GSL home page.
CUDA
Información General
Versión 3.2 del entorno de desarrollo para GPUs, incluye compiladores, debbugers, librerías matemáticas,etc que permiten escribir programas para ser ejecutados en GPUs. Es desarrollado por Nvidia y solo sirve para crear códigos para sus tarjetas gráficas.
Para más detalles sobre su uso y como ejecutarlo consulta con los técnicos por favor.
Más información
Página para desarrolladores de Nvidia.
Portland – PGI
Información general
Versión 10.9 de los compiladores y herramientas de desarrollo de Portlan Group. Consulta con los técnicos si quieres más información sobre su uso.
GPUs
La tecnología de los compiladores de PGI permite compilar fácilmente código hecho en Fortran y C para su ejecución en GPUs. Más detalles en la web de PGI.
Otras características
Includes The Portland Group’s native parallelizing/optimizing FORTRAN 77, Fortran 90/95/03, HPF, OpenMP C++ and ANSI C compilers for 64-bit x64 and 32-bit x86.
Provides the features, quality, and reliability necessary for developing and maintaining advanced scientific and technical applications. Includes the PGDBG OpenMP and MPI parallel graphical debugger and the PGPROF OpenMP and MPI parallel graphical performance profiler that can debug and profile up to 16 local MPI processes. PGI Server also includes a precompiled MPICH message passing library.
Más Información
Página de web The Portland Group – PGI.
VMD
Información general
VMD is designed for modeling, visualization, and analysis of biological systems such as proteins, nucleic acids, lipid bilayer assemblies, etc. It may be used to view more general molecules, as VMD can read standard Protein Data Bank (PDB) files and display the contained structure. VMD provides a wide variety of methods for rendering and coloring a molecule: simple points and lines, CPK spheres and cylinders, licorice bonds, backbone tubes and ribbons, cartoon drawings, and others. VMD can be used to animate and analyze the trajectory of a molecular dynamics (MD) simulation. In particular, VMD can act as a graphical front end for an external MD program by displaying and animating a molecule undergoing simulation on a remote computer.
Como usar
Los usuarios deberán cerciorarse el poder ejecutar una aplicación gráfica de los servidores del Servicio en sus ordenadores personales. Esto se explica [intlink id=»48″ type=»post»]en la guía de acceso[/intlink] al servicio.
Para usar VMD ejecutar en la terminal
vmd
Más información
Maestro
Información general
Maestro is the unified interface for all Schrödinger software. Impressive rendering capabilities, a powerful selection of analysis tools, and an easy-to-use design combine to make Maestro a versatile modeling environment for all researchers.
En los servidores Guinness y Péndulo está instalada la versión 9.0, en Maiz la versión 8.5. Recomandamos usar Maestro en el servidor Guinness, es el servidor más nuevo y el que soporta las últimas versiones de Maestro.
Como usar
Los usuarios deberán cerciorarse el poder ejecutar una aplicación gráfica de los servidores del Servicio en sus ordenadores personales. Esto se explica [intlink id=»48″ type=»post»]en la guía de acceso[/intlink] al servicio.
Para ejecutar Maestro usar en la terminal
maestro
Más información
Autores que más Citan al Servicio
Citaciones de Los trabajos del Servicio
Principales Areas de Investigación
Publicaciones
Acceso
Cómo obtener cuenta
Los clusters se encuentran accesibles a todos los investigadores de la UPV/EHU que para conectarse deben de solicitar una cuenta, empresas y otras entidades contactar con los técnicos. No obstante, para utilizar los nodos de cálculo es necesario también solicitar tiempo de cálculo que será facuturado. Se evaluarán las peticiones y asignarán los recursos. La tarifas se encuentran en [intlink id=»28″ type=»category»]este link[/intlink]. El cluster [intlink id=»120″ type=»post»]Pendulo[/intlink] es de uso gratuito y no es necesario la solicitud de tiempo de cálculo.
Ver la página en inglés.
Software de desarrollo
Compiladores y versiones instaladas en las diferentes arquitecturas.
Compiladores |
Xeon |
Itanium | Opteron |
Pendulo |
GNU | ||||
[intlink id=»454″ type=»post»]Intel[/intlink] | ||||
[intlink id=»3664″ type=»post»]Portlan (PGI)[/intlink] | 10.9 | 10.9 | ||
[intlink id=»3672″ type=»post»]Cuda[/intlink] | 3.2 | |||
Java | Java HotSpot(TM) Server VM (build 1.6.0_03-b05, mixed mode)OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode) | Java JRockit(R) (build R27.6.3-40) | Java Java HotSpot(TM) 64-Bit Server VM(build 14.0-b16, mixed mode) | |
[intlink id=»5434″ type=»post»]HMPP[/intlink] | ||||
MPI |
Xeon |
Itanium |
Opteron | Pendulo |
[intlink id=»459″ type=»post»]HP-MPI[/intlink] | ||||
[intlink id=»459″ type=»post»]Bull-MPI[/intlink] | ||||
[intlink id=»459″ type=»post»]Intel MPI[/intlink] | ||||
[intlink id=»459″ type=»post»]Openmpi [/intlink] | ||||
[intlink id=»459″ type=»post»]mvapich2 1.4.1 [/intlink] | ||||
Librerías |
Xeon | Itanium |
Opteron | Pendulo |
[intlink id=»447″ type=»post»]Intel MKL[/intlink] | ||||
[intlink id=»462″ type=»post»] FFTW[/intlink] | ||||
[intlink id=»3775″ type=»post»] GSL[/intlink] |
Software de Cálculo
Quantum Mechanics |
Katramila (xeon,rh7,xeon20) |
Guinness (xeon,oxeon) |
Kalk2017 (xeon,rh7,xeon28) |
||
[intlink id=»573″ type=»post»]Abinit[/intlink] | |||||
[intlink id=»1591″ type=»post»]ADF[/intlink] | 2017.110 | 2017.110 | 1017.110 | ||
[intlink id=»1673″ type=»post»]BigDFT[/intlink] | |||||
[intlink id=»1951″ type=»post»]Casino 2.4[/intlink] | |||||
[intlink id=»1543″ type=»post»]Dirac 08[/intlink] | |||||
[intlink id=»591″ type=»post»]Espresso[/intlink] | |||||
[intlink id=»1563″ type=»post»]Gamess Jan 2009 [/intlink] | |||||
[intlink id=»12″ type=»post»]Gaussian 03 & 09[/intlink] | |||||
[intlink id=»467″ type=»post»]Jaguar[/intlink] | |||||
[intlink id=»1889″ type=»post»]MIKA .81[/intlink] | |||||
[intlink id=»2077″ type=»post»]NBO 5[/intlink] | |||||
[intlink id=»100″ type=»post»]NWChem 6.3 [/intlink] | |||||
[intlink id=»4228″ type=»post»]Orca 3.0.3 [/intlink] | |||||
[intlink id=»8843″ type=»post»]PSI4[/intlink] | |||||
[intlink id=»8081″ type=»post»]Qbox[/intlink] | |||||
[intlink id=»106″ type=»post»]Qsite[/intlink] | |||||
[intlink id=»2404″ type=»post»]Siesta 2.0.1[/intlink] | |||||
[intlink id=»2404″ type=»post»]Siesta 3.0[/intlink] | |||||
[intlink id=»39″ type=»post»]TB-LMTO 4.6 [/intlink] | |||||
[intlink id=»3849″ type=»post»]Terachem [/intlink] | |||||
[intlink id=»4689″ type=»post»]Turbomole 6.6 [/intlink] | |||||
[intlink id=»98″ type=»post»]VASP[/intlink] | |||||
[intlink id=»1637″ type=»post»]Wien2K[/intlink] | |||||
[intlink id=»1655″ type=»post»]Yambo 3.2.2 [/intlink] | |||||
BioChemistry / Molecular Mechanics |
Katramila (xeon,rh7,xeon20) |
Guinness (xeon,oxeon) |
Kalk2017 (xeon,rh7,xeon28) |
||
[intlink id=»1969″ type=»post»]Amber[/intlink] | |||||
[intlink id=»2031″ type=»post»]DL_POLY [/intlink] | |||||
[intlink id=»1989″ type=»post»]Gromacs[/intlink] | |||||
[intlink id=»5753″ type=»post»]GULP 4.0[/intlink] | |||||
[intlink id=»5707″ type=»post»]LAMMPS[/intlink] | |||||
[intlink id=»2065″ type=»post»]Macromodel[/intlink] | |||||
[intlink id=»2011″ type=»post»]NAMD 2.6 [/intlink] | |||||
[intlink id=»5803″ type=»post»] Towhee 7.0.2 [/intlink] | |||||
Matemática y Gráficos |
Katramila (xeon,rh7,xeon20) |
Guinness (xeon,oxeon) |
Kalk2017 (xeon,rh7,xeon28) |
||
[intlink id=»1397″ type=»post»] Coin-or [/intlink] | |||||
[intlink id=»5232″ type=»post»] CPLEX [/intlink] | |||||
[intlink id=»1363″ type=»post»]Grace 5.1.19 [/intlink] | |||||
[intlink id=»598″ type=»post»]Mathematica[/intlink] | |||||
[intlink id=»600″ type=»post»]Matlab[/intlink] | |||||
[intlink id=»1371″ type=»post»]Matplotlib[/intlink] | |||||
[intlink id=»612″ type=»post»]Octave 3.2.3 [/intlink] | |||||
[intlink id=»612″ type=»post»]Octave 3.2.4 [/intlink] | |||||
[intlink id=»8631″ type=»post»]R, RCommander y RStudio[/intlink] | 3.3.3 | 3.3.2 | 3.3.3 | ||
[intlink id=»606″ type=»post»]Scilab 5.1.1 [/intlink] | |||||
[intlink id=»606″ type=»post»]Scilab 5.2.2 [/intlink] | |||||
Genética |
Katramila (xeon,rh7,xeon20) |
Guinness (xeon,oxeon) |
Kalk2017 (xeon,rh7,xeon28) |
||
[intlink id=»6111″ type=»post»]ABySS[/intlink] | |||||
[intlink id=»1477″ type=»post»]BEAST[/intlink] | |||||
[intlink id=»6005″ type=»post»]BLAST [/intlink] | |||||
[intlink id=»1493″ type=»post»]Blast2Go [/intlink] | |||||
[intlink id=»6101″ type=»post»]Clean_reads[/intlink] | |||||
[intlink id=»5889″ type=»post»]CLUMPP [/intlink] | |||||
[intlink id=»7668″ type=»post»] Cufflinks [/intlink] | |||||
[intlink id=»5915″ type=»post»]Genepop[/intlink] | |||||
[intlink id=»8051″ type=»post»]IDBA-UD[/intlink] | |||||
[intlink id=»7967″ type=»post»]MetAMOS[/intlink] | |||||
[intlink id=»1495″ type=»post»]mpiBLAST [/intlink] | |||||
[intlink id=»7686″ type=»post»]QIIME[/intlink] | |||||
[intlink id=»8019″ type=»post»]SPAdes[/intlink] | |||||
[intlink id=»5855″ type=»post»]structure [/intlink] | |||||
[intlink id=»7660″ type=»post»]TopHat [/intlink] | |||||
[intlink id=»7071″ type=»post»]Trinity[/intlink] | |||||
[intlink id=»7700″ type=»post»]USEARCH[/intlink] | |||||
[intlink id=»6055″ type=»post»]Velvet[/intlink] | |||||
Software de Visualización |
Katramila (xeon,rh7,xeon20) |
Guinness (xeon,oxeon) |
Kalk2017 (xeon,rh7,xeon28) |
||
[intlink id=»5362″ type=»post»] Gaussview[/intlink] | |||||
[intlink id=»3528″ type=»post»] Maestro [/intlink] | |||||
[intlink id=»1275″ type=»post»] Molden[/intlink] | |||||
[intlink id=»1229″ type=»post»] NX client[/intlink] | |||||
[intlink id=»1353″ type=»post»] P4VASP [/intlink] | |||||
x2Go | |||||
[intlink id=»5514″ type=»post»] XCrysDen [/intlink] | |||||
[intlink id=»1261″ type=»post»] Xmakemol [/intlink] | |||||
[intlink id=»3550″ type=»post»] VMD [/intlink] | |||||
Otro Software |
Katramila (xeon,rh7,xeon20) |
Guinness (xeon,oxeon) |
Kalk2017 (xeon,rh7,xeon28) |
||
[intlink id=»1389″ type=»post»] GAP 4.4 [/intlink] | |||||
[intlink id=»5471″ type=»post»] Gretl [/intlink] | |||||
[intlink id=»1379″ type=»post»] HTK 3.4.1 [/intlink] | |||||
[intlink id=»1871″ type=»post»] NCL-NCAR [/intlink] | |||||
[intlink id=»1581″ type=»post»] OOMMF [/intlink] | |||||
[intlink id=»6864″ type=»post»] PHENIX [/intlink] | |||||
[intlink id=»8516″ type=»post»] SCIPION[/intlink] | |||||
[intlink id=»576″ type=»post»] STAR-CCM+ [/intlink] | |||||
[intlink id=»1875″ type=»post»] WRF 3.1 [/intlink] |
Siesta
Información general
Spanish Initiative for Electronic Simulation with Thousands Atoms. Programa de cálculo ab-initio de DFT para sólidos y moléculas. Permite realizar relajaciones y simulaciones de dinámica molecular. Usa orbitales localizados y permite calcular con un gran número de átomos. Se distribuye gratuitamente, pero se requiere solicitar la licencia académica. Las versiones instaladas son la 2.0.1 en Itanium y la 3.0rc1 en x86-64.
Cómo mandar Siesta
[intlink id=»1167″ type=»post»]Sigue este enlace[/intlink].
Más información
NBO 5
NBO5 versión 5 del Natural Bond Orbital. Seguir leyendo NBO 5
MACROMODEL
Macromodel es un paquete de Schrodinger Seguir leyendo MACROMODEL
DL_POLY
Información general
Versión 4.02 del completo programa de dinámica molecular para macromoléculas, polímeros, sistema iónicos, disoluciones y otros sistemas moleculares desarrollado en el Laboratorio Daresbury. Se ha instalado la versión 4.02 (2.2 en Pendulo). Existe también DL_POLY_CLASSIC que por el momento no se desarrolla.
El programa se ha compilado con soporte para GPGPUs.
Cómo mandar
El programa está instalado para todas las arquitecturas, en Arina y en Péndulo (dl_poly_2.2). Para ejecutar el programa incluir en los scripts:
/software/bin/DL_POLY/DL_POLY.Z
El programa se ejecutará en las GPGPUs si entra en dichos nodos. También se puede seleccionar este tipo de nodos con la etiqueta gpu
del [intlink id=»244″ type=»post»] sistema de colas[/intlink].
También se ha instalado la interfaz gráfica. Para ejecutarla:
/software/bin/DL_POLY/gui
Se han instalado una serie de utilidades que vienen incluidas y cuyas fuentes están en el directorio /software/bin/DL_POLY/
.
Benchmark
Presentamos los datos de tres pequeños benchmark realizados con dl_ploly_4.02 en los que se mide su paralelización así como su eficiencia sobre GPGPUs.
System | 1 cores | 4 cores | 8 cores | 16 cores | 32 cores | 64 cores |
Itanium 1.6 GHz | 1500 | 419 | 248 | 149 | 92 | 61 |
Opteron | 1230 | 503 | 264 | 166 | 74 | |
Xeon 2.27 GHz | 807 | 227 | 126 | 67 | 37 | 25 |
Como ya observamos en este primer test el rendimiento en los nodos xeon es superior y para trabajos largos se recomienda su uso. Por otro lado también se observa que escala muy bien al aumentar el número de procesadores. En los siguientes benchmark además medimos el rendimiento de al correr sobre las GPGPUs.
System | 1 cores | 2 cores | 4 cores | 8 cores | 16 cores | 32 cores |
Itanium 1.6 GHz | 2137 | 303 | 165 | 93 | 47 | |
Opteron | 1592 | 482 | 177 | 134 | 55 | |
Xeon 2.27 GHz | 848 | 180 | 92 | 48 | 28 | |
1 GPGPU | 125 | 114 | 104 | 102 | ||
2 GPGPU | 77 | 72 | 69 | |||
4 GPGPU | 53 | 50 | ||||
8 GPGPU | 37 |
System | 1 cores | 2 cores | 4 cores | 8 cores | 16 cores | 32 cores | 64 cores |
Xeon 2.27 GHz | 2918 | 774 | 411 | 223 | 122 | 71 | |
1 GPGPU | 362 | 333 | 338 | 337 | |||
2 GPGPU | 240 | 222 | 220 | ||||
4 GPGPU | 145 | 142 | |||||
8 GPGPU | 97 |
Como se observa la GPGPU acelera el cálculo. El usar más cores apenas incrementa la velocidad cuando se usan GPGPUs. Doblar el número de GPGPUS sólo consigue que la velocidad se multiplique por 1.5 por lo que al final correr en paralelo en muchos cores resulta más eficiente. Tomemos como ejemplo el último benchmark. Cada nodo tiene 2 GPGPUs y 8 cores. Usando 8 cores se tarda 411 s. y usando las GPGPUs podemos bajar hasta los 220 s. Usando 2 nodos, 4 GPGPUs vs 16 cores aun son más rápidas las GPGPUs. Pero con 32 cores el cálculo tarda 71 s mientras que usando las 8 GPGPUs disponibles en los 4 nodos tardamos 97 s. Podemos concluir que para un PC o en nuestro cluster para un nodo la tarjeta gráfica puede acelerar significativamente el cálculo, pero para cálculos masivamente paralelos la paralelización sobre CPUs es más efectiva.
DL_POLY está diseñado para sistemas grandes e incluso el uso de miles de cores. Según la documentación de DL_POLY:
The DL_POLY_4 parallel performance and efficiency are considered very-good-to-excellent as long as (i) all CPU cores are loaded with no less than 500 particles each and (ii) the major linked cells algorithm has no dimension less than 4.
Más información
NAMD
La versión instalada es la 2.8
Programa con potenciales empíricos que incluye dinámica molecular, minimización de energía y Monte Carlo, desarrollado en la Universidad de Illinois. Especialmente orientado a la simulación de sistemas biológicos.
El software se encuentra instalado tento en arina como en pendulo, el el directorio
/software/NAMD_2.6
. Se ha creado también el script send_namd para enviar trabajos de NAMD.
Como mandar NAMD
Existen dos formas de ejecutar NAMD en Arina y Pendulo:
- Usando send_namd.
- Creando un script torque y enviar esté a la cola.
- send_namd
- Para lanzar al sistema de colas NAMD existe la utilidad send_namd. Al ejecutarlo,
muestra la sintaxis del comando, que se resume a continuación: - Modo de Uso:send_namd JOBNAME PROCS_PER_NODE[property] TIME MEM [«Other queue options» ]
JOBNAME: Nombre del input de NAMD completo, con extensión NODES: Número de nodos PROCS: Número de procesadores. TIME: Tiempo solicitado a la cola, formato hh:mm:ss. MEM: memoria en Gb y sin especificar la unidad. [``Otras opciones de Torque'' ] Existe la posibilidad de pasar más variables al sistema de colas.
Ver ejemplos más abajo. [intlink id=»244″ type=»post»]Más información sobre estas opciones[/intlink]
Ejemplos:
Mandamos NAMD con el input job1 a 16 procesadores con un tiempo solicitado de 4 horas y 1 GB de RAM:
send_namd job1.namd 2 8:xeon20 04:00:00 1
Mandamos NAMD con el input job2 con 4 procesadores, y con un tiempo solicitado de 192 horas, 8 GB de RAM y que se ejecute despues del trabajo 1234.arinab:
send_namd job2.conf 1 8 192:00:00 8 ``-W depend=afterany:1234''
- Para lanzar al sistema de colas NAMD existe la utilidad send_namd. Al ejecutarlo,
Monitorización de los cálculos:
remote_vi Para facilitar el seguimiento y/o control de los cálculos, se puede utilizar remote_vi. Nos enseña con el editor gvim el *.out del cálculo de NAMD (sólo si ha sido enviado usando send_namd).
Ejemplos:
- remote_vi 38143.arina
Más Información
GROMACS
AMBER
Información general
Versión 14 de AMBER (Assisted Model Building with Energy Refinement) junto con amber tools15. Programa con potenciales empíricos que incluye dinámica molecular, minimización de energía. Especialmente orientado a la simulación de sistemas biológicos.
Cómo usar
Están compilados las versiones en serie y paralelas de AMBER y se pueden encontrar en
/software/bin/amber
send_amber
Para mandar cálculos de AMBER se ha preparado el comando send_amber
. Uso:
send_amber "Sander_options" Nodes Procs_Per_Node[property] Time [or Queue] [Mem] ["Other_queue_options"] Sander_options: the options you want to use in the calculation, inside quotes Nodes: is the number of nodes Procs: is the number of processors (you may uinclude the node type) per node. Time: or Queue the walltime (in hh:mm:ss format) or the queue name of the calculation Mem: the PBS memory (in gb) [Mem] and ["Other_queue_options"] are optional
Para «Other queue options» see examples below:
send_amber "sander.MPI -O -i in.md -c crd.md.23 -o file.out" job1 1 8 p_slow send_amber "sander.MPI -O -i in.md -c crd.md.23 -o file.out" 2 8:xeon vfast 16 "-W depend=afterany:1234" send_amber "sander.MPI -O -i in.md -c crd.md.23 -o file.out" 4 8 24:00:00 32 "-m be -M mi.email@ehu.es"
Más información
Casino
Versión 2.4 (v213 realised on 20/7/2009) de Casino, programa de Quantum Monte Carlo desarrollado en la Universidad de Cambridge. Seguir leyendo Casino
MIKA
Multigrid Instead of K-spAce. Versión .81 del paquete de programas de cálculo DFT en el espacio real, tanto para sistemas periódicos, como finitos, desarrollado por el CSC y la Universidad Tecnológica de Helsinki (HUT).
Información general
Incluye un paquete que resuelve las ecuaciones de Kohn-Sham en 3 dimensiones (rspace
) y otro para problemas con simetría cilíndrica (cyl2
). Para más información MIKA home page
Como usar
- rspace
Programa para cálculos DFT en celdas ortorrómbicas, usando pseudopotenciales no locales (dispone de una pequeña librería en /software/MIKA/potentials
). Puede realizar simulaciones en celdas con condiciones periódicas de contorno y en sistemas finitos con funciones de onda que se anulan en los bordes de celda. Se puede ejecutar en paralelo (muy eficientemente) con
mpirun /software/bin/rspace_p
y en serie con
rspace_s
Programa para cálculos DFT en sistemas con simetría cilíndrica, resuelve numéricamente las ecuaciones de Kohn-Sham en la dirección radial y longitudinal. Se puede ejecutar en paralelo con
mpirun /software/bin/cyl2_p
Nota: No usar más microprocesadores n que el número cuántico m , se recomienda n menor o igual m. La versión en serie se ejecuta con
cyl2_s
Más información
WRF
The Weather Research and Forecasting (WRF) Model (version 3.1) is a next-generation mesocale numerical weather prediction system designed to serve both operational forecasting and atmospheric research needs. Seguir leyendo WRF
NCL – NCAR
Información General
The NCAR Command Language (NCL), a product of the Computational & Information Systems Laboratory at the National Center for Atmospheric Research (NCAR), is a free interpreted language designed specifically for scientific data analysis and visualization. NCL has robust file input and output. The graphics are world class and highly customizable.
Como Ejecutar
Se ejecutan por ejemplo:
/software/bin/ncdump
o en el servidor directamente:
ncdump
Por ahora sólo está compilado para la arquitectura itanium2. Se ha compilado con soporte para NETCDF-4, HDF4, HDF5, HDFEOS, GRIB2, vis5d+ y usando triangle.
Más Información
BigDFT
Información general
Versión 1.5.1 del del programa de cálculo de estructura electrónica ab-initio de DFT masivamente paralelo usando una base de wavelets en el espacio real. Seguir leyendo BigDFT
Yambo
3.2.2 version of the program for Many-Body calculations in solid state and molecular physics.
Seguir leyendo Yambo
WIEN2k
Versión 2k_14.2 del programa de cálculo ab-initio basado en full-potential (linearized) augmented plane-wave ((L)APW) + local orbitals (lo) method, desarrollado en la Universidad Tecnológica de Viena.
Seguir leyendo WIEN2k
ADF
Información general
Amsterdam Density Functional (2016.01)
The ADF package is software for first-principles electronic structure calculations. ADF is used by academic and industrial researchers in such diverse fields as pharmacochemistry and materials science. It is particularly popular in the research areas of homogeneous and heterogeneous catalysis, inorganic chemistry, heavy element chemistry, various types of spectroscopy, and biochemistry. Key Benefits of ADF
- Spectroscopic properties and environments for any type of molecule
- Excels in transition and heavy metal compounds
- Accurate, robust, and fast
- Expert staff and active community
- Uses Slater functions, beats Gaussians!
ADF puede calcular tanto sistemas finitos (moléculas) y sistemas periódicos (con ADFBAND). Incluye potentes interfaces gráficas y herramientas para el análisis de los resultados accesibles desde Katramila.
Se dispone de licencia para 4 cores.
Cómo usar
Para ejecutar las interfaces gráficas (generador de input, visualización de resultados,…) usar desde Katramila:
adfview
Para lanzar un ADF en arina usar un input creado con adfinput recomendamos usar el comando send_adf donde su sintaxis es:
<code>send_adf JOBNAME NODES PROCS[property] TIME MEM [``Otherqueue options'' ]
- JOBNAME: Nombre del input de nwchem sin extensión.
- NODES: Number of nodes.
- PROCS: Número de procesadores.
- TIME: Tiempo solicitado a la cola, formato hh:mm:ss.
- MEM: memoria en GB y sin especificar la unidad.
- [«Otras opciones de Torque»] Existe la posibilidad de pasar más variables al sistema de colas. Ver ejemplos más abajo. Más información sobre estas opciones
Ejemplo
Para mandar el input au_min2.run a 4 procesadores, con un walltime de 20 horas y 4 GB de RAM usar
send_adf au_min2.run 1 4 20:00:00 4
Más información
OOMMF
Información general
Versión 1.2 del programa para realizar simulaciones micromagnéticas. No está compilado con la versión paralela de tcl.
Cómo usar
Ejecutando
oommf.tcl
nos aparece la interfaz gráfica. Para poder preparar y analizar los cálculos. Para mandar cálculos a las colas de cálculo se puede usar el comando
send_oommf
que nos crea un script adecuado y lo envía a la cola, además de asegurar la coherencia entre los cores solicitados al sistema de colas y a OOMMF.
Benchmark
Se ha realizado un pequeño benchmark con la versión 1.2. En la versión paralela en xeon OOMMF tiene un rendimiento aceptable hasta los 4 cores con el input empleado, no hemos realizado el benchmark paralelo en otras arquitecturas dado que los nodos xeon son los más adecuados.
Node type | xeon20 | xeon12 | xeon8 |
Time |
776
|
905 | 1224 |
Más información
GAMESS-US 12 JAN 2009 (R1)
Información general
Gamess es un paquete de química computacional con varios métodos para calcular propiedades de sistemas moleculares, usando descripciones mecánico-cuánticas estándar para las funciones de onda o la densidad electrónica. La versión 12 JAN 2009 (R1) se encuentra instalada en el cluster. En estos momentos, se puede ejecutar gamess en varios nodos, con 8 o más procesadores.
[intlink id=»1037″ type=»post»]Como mandar Gamess[/intlink]
En este enlace puedes ver cómo mandar cálculos de Gamess y como ir monitorizándolos.
Más información
Dirac 08
Información general
La versión que se encuentra instalada en el cluster es DIRAC08. Dirac es un paquete de química computacional con varios métodos para calcular propidedades de sistemas moleculares usando mecánica-cuántica relativista.
Como ejecutar
Para ejecutar dirac hay que crear un script para torque y utilizar la herramienta de pam de dirac. El SGI/IZO ha actualizado pam deshabilitando la opción -mpi, ya que el sistema de colas se encarga de gestionar los procesadores. Dirac (bases y pam incuidos) esta instalado en /software/Dirac08.
Un script de ejemplo se encuentra aquí.
Benchmarks
El tipo de cálculos que realiza dirac requiere de bastantes recursos computacionales, y realiza muchas operaciones I/O por ello, no paralaliza muy bien como se puede ver en la pruebas realizadas:
nproc | Itanium | Opteron | Pendulo (1:ppn=nproc) |
1 | 2176 | 4650 | 3603 |
2 | 2056 (1.04) | 3370 (1.37) | 3100 (1.16) |
4 | 990 (2.19) | 1847 (2.5) | 1840 (1.97) |
8 | 730(2.98) | 1054 (4.4) | NA |
El speed-up se muestra en negrita. |
Input y sistema utilizado para los benchmarks.
Más información
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].
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].
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.
StarCD
StarCD es un programa de Dinámica de Fluídos. Existen dos variantes del programa las dos disponibles en Arina, StarCD y StarCCM+.
Seguir leyendo StarCD
Coin-or
Información general
1.7.5 version. The Computational Infrastructure for Operations Research (COIN-OR**, or simply COIN) project is an initiative to spur the development of open-source software for the operations research community. Se ha compilado incluyendo [intlink id=»5232″ type=»post»]CPLEX[/intlink].
Cómo usar
Los ejecutables blis
, cbc
, clp
, OSSolverService
y symphony
se encuentran instalados en /software/bin/CoinAll
. Para usar, por ejemplo clp
ejecutar en los scripts de torque:
/software/bin/CoinAll/clp
Más información
GAP
Versión 4.4 del lenguaje matemático para álgebra discreta con numerosas librerías de funciones y tablas.
GAP es unas 2.5 veces más lento en itanium que en opteron o core2duo. Os recomendamos Maiz o Péndulo para ejecutar GAP en interactivo.
Se puede ejecutar directamente gap en la línea de comandos. Por defecto se crea un espacio de trabajo (workspace) de 512 MB. En los scripts del sistema de colas si es necesario incrementar la memoria que usa GAP ejecutarlo con la opción -m, por ejemplo:
/software/bin/gap -m 900m < input-file > output-file
donde input-file es el fichero con las órdenes para GAP, en output-file se guarda la salida de pantalla y se está creando un workspace de 900 MB para GAP.
Más información y documentación en GAP home page.
HTK
Versión 3.4.1 del conjunto de programas para trabajar modelos ocultos de Markov. Es principalmente usado en investigación sobre el reconocimiento del habla.
Sólamente está instalado en Péndulo y los nodos Opteron.
Para ejecutar alguna de sus programas emplear por ejemplo:
/software/bin/HDecode
Para más información Página web de HTK.
Matplotlib
Información general
Librerías para cálculo matemático con Python. Se han instalado también las librerías numphy
y el intérprete ipython
.
Se ha requerido recompilar python, se deben usar ejecutando
/software/bin/python/software/bin/ipython
Más información
Página web de Matplotlib.
Página web de Numpy.
Página web de ipython.
Grace
Información general
Está instalada la versión 5.1.19. Grace es un herramienta WYSIWYG (What you see is what you get, es decir, Lo que Ves es lo que Consigues) para hacer gráficos en dos dimensiones de datos numéricos.
Para ejecutarlo hay que utilizar el comando:
xmgrace
Más información
Más información y documentación en la página web de Grace.
P4VASP
Información general
P4vasp es un paquete para visualizar estructuras y densidades electrónicas,…de cálculos de VASP.
Como usar
Los usuarios deberán cerciorarse el poder ejecutar una aplicación gráfica de los servidores del Servicio en sus ordenadores personales. Esto se explica [intlink id=»48″ type=»post»]en la guía de acceso[/intlink] al servicio.
Para su ejecución, simplemente ejecutar
p4v
Más información
P4Vasp home page.
Molden
Información general
Molden es un paquete para visualizar estructuras y densidades electrónicas, que lee los formatos de los siguientes programas Ab-Initio: GAMESS-UK , GAMESS-US, GAUSSIAN,… desarrollado en la Radboud University Nijmegen. La versión disponible es la 4.4.
Como usar
Los usuarios deberán cerciorarse el poder ejecutar una aplicación gráfica de los servidores del Servicio en sus ordenadores personales. Esto se explica [intlink id=»48″ type=»post»]en la guía de acceso[/intlink] al servicio.
Para usar Molden ejecutar en la terminal
molden
Más información
XMakemol
Información general
Xmakemol es un paquete para visualizar estructuras atómicas. La versión disponible es la 5.14.
Como usar
Los usuarios deberán cerciorarse el poder ejecutar una aplicación gráfica de los servidores del Servicio en sus ordenadores personales. Esto se explica [intlink id=»48″ type=»post»]en la guía de acceso[/intlink] al servicio.
Para su ejecución, simplemente usar
xmakemol
Más información
NX – Server
Información general
NX es un servidor de terminal o conexión gráfica remota. Sirve para desde nuestro PC o PDA poder ver las aplicaciones gráficas ejecutadas en Maiz, Guinness, Péndulo,…. Tiene la ventaja de comprimir el tráfico, cachear información,…lo cual reduce las comunicaciones y lo hace muy adecuado para conectarse desde casa. Es válido para Windows, linux, Mac,….
Como se usa
Es necesario instalar el cliente en nuestro PC y ejecutarlo para conectarse a los servidores de cálculo. Este documento es una guía para instalar y configurar el cliente NX para conectarse a las máquinas del Servicio.
Más información
Página web para descargar el cliente NX.
Octave
Versión 3.2.3 en Itanium, Opteron y Péndulo y 3.2.4 en Xeon del programa matemático de cálculo numérico.
Seguir leyendo Octave
scilab
Versión 5.1.1 en (Itanium, Opteron y Péndulo) y 5.2.2 en Xeon del programa matemático de cálculo numérico.
Características generales
Está instalado en los nodos opteron de Arina y en Péndulo. La interfaz gráfica sólo está disponible en Péndulo y Guinness.
Similar en funcionalidades a Matlab. Incluye herramientas para:
- Visualización 2D y 3D.
- Lenguaje de programación (scripts de scilab).
- Resolución de equaciones diferenciales.
- Modelizador y simulador de sistemas híbridos: tratamiento de señal, sistemas de control, sistema biológicos,…
- Álgebra simbólica (Maple).
- …
Como ejecutar Scilab
Usar el siguiente comando:
scilab
y abrirá en Péndulo la interfaz gráfica y en Maiz una terminal. En los scripts para lanzar a las colas usar la línea
/software/bin/scilab -f script_scilab > output_file
donde script_scilab
es el archivo con las ordenes para Scilab.
Más información
Más información y documentación de Scilab en http://www.scilab.org/.
Benchmarks
Hemos realizado unos benchmarks comparando [intlink id=»606″ type=»post»]Scilab 5.2[/intlink], [intlink id=»612″ type=»post»]Octave 3.2[/intlink] y [intlink id=»600″ type=»post»]Matlab 7.10[intlink] en las máquinas del servicio. Los resultados los presentamos en 3 tablas, la primera es un resumen de los resultados, la segunda son los resultados del bencharmark grande e incluimos una tercera con los mismos benchmark pero parámetros más pequeños para poder comparar con Péndulo.
|
En resumen, las últimas versiones de Matlab y Octave tienen un rendimiento similar en los nodos Xeon (salvo por la ejecución de loops en Octave, ver más abajo). Scilab es aproximadamente un 50% más lento que los anteriores. En cuanto a las máquinas los nuevos nodos Xeon son mucho más potentes que los Itanium o los Opteron doblándoles en rendimiento (Scilab y Octave han sido compilados y linkados con librerías optimizadas, las versiones instaladas son el doble de rápidas que las versiones binarias instalables).
En la primera tabla resumen vemos la puntuación obtenida por los tres programas en las diferentes máquinas del servicio. Nos centraremos en las máquinas xeon que son las más nuevas. En ellas aparentemente Matlab es el más rápido. No obstante, si miramos detalladamente a los tiempos de ejecución de la tabla 4 vemos que los tiempos de Octave y Matlab son totalmente comparables salvo el benchmark en el que se crea una matriz de Toeplitz (Programation 4) en el que se testea la ejecución de bucles. La tecnología de Matlab permite ejecutar los loops de forma muy rápida mientras que Octave todabía no puede. En este sentido se recomienda en Octave usar operaciones vectoriales o funciones optimizadas en vez de bucles de forma intensiva (Por ejemplo, crear la misma matriz del benchmark en Octave con la función toeplitz(c,r) es casi instantáneo).
Del benchmark pequeño en el que incluímos a Péndulo vemos que obtenemos un rendimiento para Péndulo próximo a los Itanium y Opteron. En Péndulo no se han compilado sino que se han instalado los binarios.
El número de licencias de Matlab es limitado, pero la gratuicidad de Scilab y Octave le confieren ventaja en caso necesitar calcular mucho ya que no hay límite de licencias ni procesos de ejecución..
|
|
Descripción de los benchmark.
Matrix calculation | |
Matrix calc | Creation, transp., deformation of a matrix. |
Matrix calc | Normal distributed random matrix ^1000. |
Matrix calc | Sorting of random values. |
Matrix calc | Cross-product matrix (b = a’ * a). |
Matrix calc | Linear regression over a matrix (c = a b’). |
Matrix functions | |
Matrix func | FFT over random values. |
Matrix func | Eigenvalues of a random matrix. |
Matrix func | Determinant of a random matrix. |
Matrix func | Cholesky decomposition of a matrix. |
Matrix func | Inverse of a random matrix. |
Programation | |
Programation | Fibonacci numbers calculation (vector calc). |
Programation | Creation of a Hilbert matrix (matrix calc). |
Programation | Grand common divisors of pairs (recursion). |
Programation | Creation of a Toeplitz matrix (loops). |
Programation | Escoufier’s method on a matrix (mixed). |