Softwarové aplikace pro bioinformatiku dostupné na klastrech Martin Mokrejš Zpracování biomedicínských dat Sekvence (nukleových kyselin, bílkovin) Struktury (2D, 3D) Informace (textové, obrazové, asociační/kontextové) Předpovídání (genů, funkcí/nemocí, struktur, mutací) https://en.wikipedia.org/wiki/Bioinformatics Zpracování biomedicínských dat Sekvence (nukleových kyselin, bílkovin) https://en.wikipedia.org/wiki/Bioinformatics#Sequence_analysis Bioinformatika Nadějný kandidát na největšího žrouta výpočetního času i diskové kapacity Typicky neefektivně psané programy Chybí paralelizace (příp. pouze formou vláken) Malá škálovatelnost Výjimečně podpora pro MPI, boost, BLAS/LAPACK Výjimečně kód využívající SSE2 instrukce (dynamické programování) Jak snadno nainstalovat stovky aplikací včetně závislostí? Využili jsme Gentoo Linux a jeho definice závislostí mezi balíčky Nevyužili jsme Gentoo::Prefix protože neumožňuje obejít zastaralou systémovou libc Využili jsme jeho nadstavby Gentoo::RAP (Gentoo::Android) This is a project to support libc inside a Prefix, codenamed RAP (Rap Ain't Prefix). See also Project:Android. A general use case is for Prefix on RHEL 5 (CentOS 5 ans SL 5), where the host glibc-2.5 is too old to support modern features as fortify. Srovnání způsobů řešení cest k binárkám, knihovnám https://wiki.gentoo.org/wiki/Prefix/libc Kompilace optimalizovaného kódu pro oba klastry zvlášť Využili jsme Gentoo Linux a jeho definice závislostí mezi balíčky Aktuálně binárky produktem gcc gcc-5.4.0 -O2 -pipe -march=native V plánu je rekompilace všeho pomocí icc/ifort 2016.2 Nastavení volitelných parametrů pro aplikace $ emerge -pv dev-lang/R These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] dev-lang/R-3.3.1::gentoo USE="X cairo java jpeg lapack nls openmp perl png (prefix) readline tiff tk -doc -icu -minimal -profile -static-libs" 0 KiB Total: 1 package (1 reinstall), Size of downloads: 0 KiB $ eselect Usage: eselect <global options> <module name> <module options> Global options: --brief --colour=<yes|no|auto> --debug Make output shorter Enable or disable colour output (default 'auto') Debug eselect (enable set -x) Built-in modules: help usage version print-modules print-actions print-options Display a help message Display a usage message Display version information Print eselect modules Print actions for a given module Print options for a given action Alternatives modules: blacs blas cblas lapack lapacke scalapack ... Maintain Maintain Maintain Maintain Maintain Maintain Alternatives Alternatives Alternatives Alternatives Alternatives Alternatives symlinks symlinks symlinks symlinks symlinks symlinks for for for for for for blacs blas cblas lapack lapacke scalapack $ eselect lapack list Available providers for lapack: [1] mkl-dynamic [2] mkl-dynamic-openmp [3] mkl-gfortran [4] mkl-gfortran-openmp [5] mkl-intel [6] mkl-intel-openmp [7] reference * $ eselect lapacke list Available providers for lapacke: [1] mkl-dynamic * [2] mkl-dynamic-openmp [3] mkl-gcc-openmp [4] mkl-intel [5] mkl-intel-openmp $ eselect blas list Available providers for blas: [1] mkl-dynamic [2] mkl-dynamic-openmp [3] mkl-gfortran [4] mkl-gfortran-openmp [5] mkl-intel [6] mkl-intel-openmp [7] reference * $ eselect cblas list Available providers for cblas: [1] gsl * [2] mkl-dynamic [3] mkl-dynamic-openmp [4] mkl-gcc-openmp [5] mkl-intel [6] mkl-intel-openmp $ Lokální kopie částí databází 7.9G 665G 99G 84G 849G 115G 79G 3.9G 3.2G broad_institute ftp.1000genomes.ebi.ac.uk ftp.broadinstitute.org ftp.ebi.ac.uk ftp.ensembl.org ftp.ncbi.nih.gov ftp.ncbi.nlm.nih.gov ftp.sanger.ac.uk ussd-ftp.illumina.com Applications for bioinformatics at IT4I error-correctors aligners clusterers assemblers scaffolders motif searching ORF/gene prediction/genome annotation genotype/haplotype/popullation genetics phylogenetics transcriptome analysis utilities GUI libraries Sequence assembly tools velvet, oases, STAR, megahit, edena, epga, mira Sequence alignment bwa, bowtie, gmap, abys, trans-abyss, stampy, smalt, ssaha2, shrimp, blat, fasta, blast, bfast, yasra, clustalw, lastz, muscle, mummer, mrfast, shrimp, nwalign Clustering tools cd-hit, proda, tclust, nrcl Scaffolding tools Bambus, SSAKE, BRANCH, scaffold_builder, subread, crossgenome Motif searching scan_for_matches, erpin, miranda, trf ORF/gene prediction Exonerate, eugene, ESTscan, geneid, sgp2, glimmerhmm, hexamer Genotype/haplotype prediction Plink, PlinkSeq, MERLIN, genepop Phylogenetics Clustalw, Phylip, mrbayes Transcriptome analysis R, bioconductor, cufflinks, codonw Utilities FLASH, samtools, bamtools, vcftools, bedtools, HTSeq, pysam, pysamstats, pybedtools, assembly_stats, jellyfish, biobambam2, cdbfasta, fastx_toolkit, tagdust, lucy, repeatmasker, screen, cutadapt, scythe, trimmomatic, sickle X11 GUI Tablet, igv, Gambit, AMOS (Hawkeye), R, Bioconductor Spouštění grafických aplikací (X11 windows) Požadavky pro MS Windows uživatele: Spuštěný X11 klient, například XMing ( www.straightrunning.com/XmingNotes ) Putty se zapnutým "X11 port forwarding" ( www.chiark.greenend.org.uk/~sgtatham/putty ) Spuštění grafické aplikace IGV $ java -Xmx16G -jar /scratch/mmokrejs/IGV_2.3.81/igv.jar & INFO [2016-09-22 10:48:23,990] [DirectoryManager.java:169] [main] IGV Directory: /home/mmokrejs/igv INFO [2016-09-22 10:48:23,990] [DirectoryManager.java:169] IGV Directory: /home/mmokrejs/igv INFO [2016-09-22 10:48:23,996] [Main.java:133] [main] Startup IGV Version 2.3.81 (127)08/30/2016 02:20 PM INFO [2016-09-22 10:48:23,996] [Main.java:134] [main] Java 1.8.0_101 INFO [2016-09-22 10:48:23,996] [DirectoryManager.java:72] [main] Fetching user directory... INFO [2016-09-22 10:48:24,577] [Main.java:135] [main] Default User Directory: /home/mmokrejs INFO [2016-09-22 10:48:24,578] [Main.java:136] [main] OS: Linux INFO [2016-09-22 10:48:41,035] [GenomeManager.java:145] [main] Loading genome: /home/mmokrejs/igv/genomes/hg38.genome INFO [2016-09-22 10:48:42,687] [GenomeManager.java:192] [main] Genome loaded. id= hg38 INFO [2016-09-22 10:48:42,880] [CommandListener.java:106] [Thread-6] Listening on port 60151 Spouštění dávkových úloh v prostředí Gentoo::RAP $ cat my_PBS_job.pbs #PBS -S /scratch/mmokrejs/gentoo_rap/bin/sh #PBS -l nodes=1:ppn=16,walltime=48:00:00 #PBS -q qprod #PBS -M [email protected] #PBS -m ea #PBS -N sample1-PB #PBS -A DD-16-33 #source ~/.bashrc cd $PBS_O_WORKDIR || exit 255 myscript.sh $ head myscript.sh #! /scratch/mmokrejs/gentoo_rap/bin/sh printenv myapplication -arg1 -arg2 Interaktivní spuštění prostředí Gentoo::RAP oldshell $ /scratch/mmokrejs/gentoo_rap/startprefix Entering Gentoo Prefix /scratch/mmokrejs/gentoo_rap newshell $ newshell $ gcc-config -l newshell $ newshell $ icc -help newshell $ newshell $ R --version | head -n 3 R version 3.3.1 (2016-06-21) -- "Bug in Your Hair" Copyright (C) 2016 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu (64-bit) newshell $ Co je v plánu? Uživatelská dokumentace Seznam aplikací Rekompilace pomocí icc/ifort Instalace dosud chybějících programů Potenciálně přechod na EasyBuild balíčky a integrace do modules Děkuji za pozornost
© Copyright 2026 Paperzz