https://snicdocs.nsc.liu.se/w/api.php?action=feedcontributions&user=Elias+Rudberg+%28UPPMAX%29&year=&month=&feedformat=atomSNIC Documentation - User contributions [en]2024-03-29T06:05:38ZUser contributionsMediaWiki 1.31.10https://snicdocs.nsc.liu.se/w/index.php?title=User:Elias_Rudberg_(UPPMAX)&diff=2855User:Elias Rudberg (UPPMAX)2011-09-29T14:34:49Z<p>Elias Rudberg (UPPMAX): Rephrasing of other activities text.</p>
<hr />
<div>{{application expert info<br />
|first name=Elias<br />
|last name=Rudberg<br />
|centre=UPPMAX<br />
|fields=Algorithm and code development<br />
|fte=50<br />
|financing=Uppsala University<br />
|general activities=I give advice to users regarding programming, compiling, debugging, optimizing, and parallelizing their code.<br />
|other activities=Works 50% with method development research in computational chemistry and numerical quantum dynamics at the Division of Scientific Computing, Department of Information Technology, Uppsala University.<br />
|image=Elias.jpg<br />
|office=ITC building 2, floor 4, room 2440;Division of Scientific Computing;Department of Information Technology;Uppsala University<br />
}}<br />
<br />
== Quick facts ==<br />
* Also working on development of the Ergo program, see http://ergoscf.org<br />
<br />
== Expertise ==<br />
* [[expertise::C]]<br />
* [[expertise::C++]]<br />
* [[expertise::MPI]]<br />
* [[expertise::pthreads]]<br />
* [[expertise::OpenMP]]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=User:Elias_Rudberg_(UPPMAX)&diff=2853User:Elias Rudberg (UPPMAX)2011-09-29T14:31:58Z<p>Elias Rudberg (UPPMAX): Added FTE and financing info.</p>
<hr />
<div>{{application expert info<br />
|first name=Elias<br />
|last name=Rudberg<br />
|centre=UPPMAX<br />
|fields=Algorithm and code development<br />
|fte=50<br />
|financing=Uppsala University<br />
|general activities=I give advice to users regarding programming, compiling, debugging, optimizing, and parallelizing their code.<br />
|other activities=Works 50% with research at Division of Scientific Computing, Department of Information Technology, Uppsala University.<br />
|image=Elias.jpg<br />
|office=ITC building 2, floor 4, room 2440;Division of Scientific Computing;Department of Information Technology;Uppsala University<br />
}}<br />
<br />
== Quick facts ==<br />
* Also working on development of the Ergo program, see http://ergoscf.org<br />
<br />
== Expertise ==<br />
* [[expertise::C]]<br />
* [[expertise::C++]]<br />
* [[expertise::MPI]]<br />
* [[expertise::pthreads]]<br />
* [[expertise::OpenMP]]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=User:Hans_Karlsson&diff=2527User:Hans Karlsson2011-09-19T09:28:22Z<p>Elias Rudberg (UPPMAX): Removed all info about Hans Karlsson since he is no longer an app expert (Hans is now director of UPPMAX)</p>
<hr />
<div><!--<br />
{{application expert info<br />
|first name=Hans<br />
|last name=Karlsson<br />
|centre=UPPMAX<br />
|fields=Computational quantum mechanics <br />
|other activities=<br />
|office=Semicolon separated lines; of visiting address; newlines<br />
are ignored<br />
|phone=Semicolon separated phone numbers (with optional <br />
explanation), newlines are ignored<br />
}}<br />
--><br />
<!--<br />
== Quick facts ==<br />
* Or any other heading. <br />
* This part is clear text and very much up to you.<br />
* Bullet lists are good <br />
* for the lazy<br />
<br />
== Expertise ==<br />
* [[expertise::Python]]<br />
* [[expertise::mass spectrometry]]<br />
* [[expertise::flux capacitor calibration]]<br />
--></div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=Halvan&diff=2075Halvan2011-09-09T13:13:16Z<p>Elias Rudberg (UPPMAX): Created page with "{{resource info |description=shared-memory computer with 64 cores and 2 TB of memory |centre=UPPMAX }} == Why the strange name? == The machine was named "Halvan" (meaning "half"..."</p>
<hr />
<div>{{resource info<br />
|description=shared-memory computer with 64 cores and 2 TB of memory<br />
|centre=UPPMAX<br />
}}<br />
<br />
== Why the strange name? ==<br />
The machine was named "Halvan" (meaning "half" in Swedish) when it only had 0.5 TB memory; later the memory was upgraded to 2 TB but the name remained the same.<br />
<br />
== Available software ==<br />
{{list software at resource}}<br />
<br />
== Links ==<br />
* [http://www.uppmax.uu.se/systems/halvan Description of Halvan at UPPMAX web page]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=Grad&diff=2069Grad2011-09-09T13:08:13Z<p>Elias Rudberg (UPPMAX): </p>
<hr />
<div>{{resource info<br />
|description=a cluster resource primarily used for SweGrid<br />
|centre=UPPMAX<br />
}}<br />
<br />
== Usage ==<br />
Primarily used for [[SweGrid]].<br />
<br />
== Available software ==<br />
{{list software at resource}}<br />
<br />
== Links ==<br />
* [http://www.uppmax.uu.se/systems/grad Description of Grad at UPPMAX web page]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=Grad&diff=2066Grad2011-09-09T13:06:00Z<p>Elias Rudberg (UPPMAX): Created page with "{{resource info |description=a cluster resource primarily used for SweGrid |centre=UPPMAX }} == Available software == {{list software at resource}} == Links == * [http://ww..."</p>
<hr />
<div>{{resource info<br />
|description=a cluster resource primarily used for [[SweGrid]]<br />
|centre=UPPMAX<br />
}}<br />
<br />
== Available software ==<br />
{{list software at resource}}<br />
<br />
== Links ==<br />
* [http://www.uppmax.uu.se/systems/grad Description of Grad at UPPMAX web page]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=HMMER&diff=2064HMMER2011-09-09T13:02:49Z<p>Elias Rudberg (UPPMAX): </p>
<hr />
<div>{{software info<br />
|description=package for working with profile hidden Markov models (HMM)<br />
|license=free<br />
|fields=bioinformatics<br />
|resources=kappa;matter;neolith;akka;kalkyl<br />
}}<br />
[http://hmmer.janelia.org {{PAGENAME}}] is a software {{#show: {{PAGENAME}} |?description}} of known regions in proteins. <br />
<br />
== Experts ==<br />
{{list experts}}<br />
<br />
== General info ==<br />
<br />
An HMM is a statistical model that describes the known sequence variations within a specific group of proteins that may be of special interest; for example a protein family with known function, or a domain containing a well studied interaction surface or an active site. HMM is a machine learning technique [http://en.wikipedia.org/wiki/Hidden_Markov_model] where the models are built from training examples that are known good members, and where the finished models can be used to reliably classify and annotate new or poorly understood protein sequences in an automated fashion. Large libraries of trusted HMMs (such as [http://pfam.sanger.ac.uk/ Pfam]) are of course immensely beneficial, as they can be used to automatically classify large portions of newly sequenced genomes, directly as they become available.<br />
<br />
The HMMER package contains applications for working with HMMs, for example for:<br />
<br />
* Building and calibrating HMMs.<br />
* Matching an HMM against a sequence database (for finding new members).<br />
* Matching a sequence against an HMM database (for finding new sequence features).<br />
<br />
<br />
== Versions ==<br />
<br />
There are two verions of HMMER that can conceivably be useful:<br />
<br />
* HMMER-2.3.2: Old stable version.<br />
* HMMER-3.0: Fast, but backwards incompatible and non-feature-complete.<br />
<br />
Their implementations and output (and potentially also the actual results) are vastly different, so ongoing projects are not recommended to switch between them. For new project, it is highly recommended to spend some time to deduce which version is the most suitable. <br />
<br />
HMMER-3 may seem like an obvious choice; it is much faster than its predecessor and it is currently used in large scale production (e.g. by [http://pfam.sanger.ac.uk/ Pfam]), and it is also promoted as the official main HMMER version. However, HMMER-3.0 is not feature complete. Especially, the old default alignment behavior (glocal, hmm_ls) is missing, so if this feature is necessary: choose HMMER-2.3.2.<br />
<br />
<br />
== Computational considerations ==<br />
<br />
=== Work locally ===<br />
<br />
Many of the features in HMMER require access to database flatfiles, and standard practice when running a compute cluster is to copy all necessary files to a node local directory before any work is done with them. This behaviour is highly encouraged on most resources, since multiple simultaneous accesses to the same large files on a shared disk is likely to cause problems for all computations currently running on the resource, and not only for the owner of the badly behaving jobs. For this reason, most SNIC resources have amenities in place to aid you in running your HMMER jobs in an optimal manner (for example <code>prepare_db</code> and <code>$HMMER_DB_DIR</code>, described for example [https://extras.csc.fi/mgrid/hmmer_re/hmmer232/index.html here]).<br />
<br />
=== Do not run out of memory ===<br />
<br />
If possible, you should ensure that you have enough RAM to hold the database as well as the results and still have some headroom. This ensures that HMMER will not need to read data from disk unnecessarily, which otherwise would cause significant slowdown. This is less important with HMMER-2.3.2, since the HMM-sequence alignment implementation is so CPU intensive that memory and disk considerations are less likely to have an impact on runtime. Nevertheless, ensuring that the database files remain cached can be done for example by:<br />
<br />
* '''Choose a system with enough RAM''' <br/> Multiprocessor systems generally have more memory than single processor systems, and the database will also require proportionally less memory, since only one copy is needed in the OS file cache regardless of the number of processors using it.<br />
* '''Partition the search space''' <br/> For huge databases or very restricted amounts available memory it may be required to split the database into manageable chunks and process them as separate jobs.<br />
<br />
=== Use your processors wisely ===<br />
<br />
Users should not have to worry about this since the HMMER default behaviour is to run on all the CPU cores it can detect on the compute node, which is nearly always the most desirable. However, should you need to control this for any reason, the behaviour can be controlled by the <code>--ncpus</code> command line option, or the <code>$HMMER_NCPUS</code> environment variable, which should already be set to the correct value if you are using a preinstalled HMMER version on a SNIC resource.<br />
<br />
<br />
== Compilation ==<br />
<br />
Benchmarks at [http://www.nsc.liu.se NSC] have shown that Intel compilers seem to produce more efficient HMMER binaries than does gcc.<br />
<br />
HMMER-2 is also extremely sensitive to hardware vectorisation optimisations, even to the extent that -xSSE4.2 produces significantly faster binaries than does -xSSE4.1, so it makes sense to set this as aggressively as possible. NSC uses icc 11.1.069 and <code>CFLAGS="-O3 -ip -xSSE4.2"</code> for the SNIC systems [http://www.nsc.liu.se/systems/snic/ Kappa] and [http://www.nsc.liu.se/systems/snic/ Matter], and <code>CFLAGS="-O3 -ip -xSSSE3"</code> for [http://www.nsc.liu.se/systems/snic/ Neolith].<br />
<br />
The official binary distribution of HMMER-3.0 is compiled with icc, and is fully adequate for threaded operation. However, some of the HMMER-3 binaries (e.g. hmmscan) have been shown to perform upward of 50% better with MPI parallelisation, so this may constitute reason to recompile locally. It may also be profitable to carefully select MPI library, as intelmpi in standard configuration can give fluctuations in runtime upwards of +~100% with hmmsearch, while openmpi seemingly performs optimally and consistently. For HMMER-3, [http://www.nsc.liu.se NSC] uses icc 11.1.069 and openmpi 1.4.1, and uses the compilator flags automatically detected by the configure script.<br />
<br />
== Availability ==<br />
{{list resources for software}}<br />
<br />
== License ==<br />
{{show license}}<br />
<br />
== Links ==<br />
* [http://hmmer.janelia.org/ Official website]<br />
* [ftp://selab.janelia.org/pub/software/hmmer3/3.0/Userguide.pdf HMMER-3 documentation]<br />
* [http://selab.janelia.org/software/hmmer/2.3.2/hmmer-2.3.2.tar.gz HMMER-2.3.2 release] (contains pdf documentation)</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=Gaussian&diff=2063Gaussian2011-09-09T13:00:49Z<p>Elias Rudberg (UPPMAX): </p>
<hr />
<div>{{software info<br />
|description=widely used quantum chemistry software<br />
|license=site license<br />
|fields=Computational chemistry<br />
|resources=kappa;matter;neolith;beda;akka;ferlin;kalkyl<br />
}}<br />
{{PAGENAME}} is a {{#show: {{PAGENAME}} |?description}}.<br />
<br />
==Tips and Tricks==<br />
*Converting checkpoint files from G03 format to G09 format:<Br><br />
G09 cannot read G03 checkpoint files, so if you wish to use a G03 checkpoint file as the starting point for a G09 calculation, you first need to convert the file to the G09 checkpoint file format. Fortunately, Gaussian provides a utility for this called [http://www.gaussian.com/g_tech/g_ur/u_c8609.htm c8609]. To use it you simply write<Br><br />
$ c8609 g03_checkpoint_file.chk<Br><br />
NOTE that this utility overwrites the original file, so if you want to keep the original file then you need to make a copy first!<br />
<br />
==Post-processing scripts and utilities==<br />
* Openbabel<br />
* cclib<br />
<br />
== Availability ==<br />
{{list resources for software}}<br />
<br />
== License ==<br />
{{show license}}<br />
<br />
[[NSC]] has a site license that allows SNIC users to run {{PAGENAME}} without restrictions.<br />
<br />
== Links ==<br />
* [http://www.gaussian.com Official website]<br />
* [http://www.gaussian.com/g_tech/g_ur/g09help.htm Online manual]<br />
* [http://www.pdc.kth.se/resources/software/installed-software/applications/gaussian/gaussian-at-pdc Guide to running Gaussian at PDC]<br />
<br />
== Experts ==<br />
{{list experts}}</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=Kalkyl&diff=2062Kalkyl2011-09-09T13:00:18Z<p>Elias Rudberg (UPPMAX): Created page with "{{resource info |description=a cluster resource of about 21 TFLOPS |centre=UPPMAX }} == Available software == {{list software at resource}} == Links == * [http://www.uppmax.uu...."</p>
<hr />
<div>{{resource info<br />
|description=a cluster resource of about 21 TFLOPS<br />
|centre=UPPMAX<br />
}}<br />
<br />
== Available software ==<br />
{{list software at resource}}<br />
<br />
== Links ==<br />
* [http://www.uppmax.uu.se/systems/kalkyl Description of Kalkyl at UPPMAX web page]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=OpenMP&diff=2061OpenMP2011-09-09T12:55:41Z<p>Elias Rudberg (UPPMAX): </p>
<hr />
<div>[[Category:Area of expertise]]<br />
<br />
OpenMP is an Application Program Interface (the OpenMP API) for shared-memory parallelism in C, C++, and Fortran programs. See also [[Pthreads]].<br />
<br />
For a detailed description of OpenMP, see http://openmp.org/.<br />
<br />
== Experts ==<br />
{{list experts}}</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=Pthreads&diff=2060Pthreads2011-09-09T12:54:52Z<p>Elias Rudberg (UPPMAX): Created page with "Category:Area of expertise Pthreads, or POSIX threads, is a commonly used approach for parallelization for shared memory multiprocessor architectures. Compared to [[OpenMP]..."</p>
<hr />
<div>[[Category:Area of expertise]]<br />
<br />
Pthreads, or POSIX threads, is a commonly used approach for parallelization for shared memory multiprocessor architectures.<br />
<br />
Compared to [[OpenMP]], Pthreads allows more detailed control of the threading. For example, when using [[OpenMP]] there is usually no need for programmer to explicitly "create" threads, while when using Pthreads threads are created by calling the function pthread_create(...).<br />
<br />
See http://openmp.org/<br />
<br />
== Experts ==<br />
{{list experts}}</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=Category:Algorithm_and_code_development&diff=2059Category:Algorithm and code development2011-09-09T12:43:46Z<p>Elias Rudberg (UPPMAX): Created page with "The description "Algorithm and code development" is used for application experts whose job is to help users with general issues of algorithms, for example how to analyse the scal..."</p>
<hr />
<div>The description "Algorithm and code development" is used for application experts whose job is to help users with general issues of algorithms, for example how to analyse the scaling of an algorithm, and coding issues such as program design, compiler issues, and strategies for optimization and debugging.<br />
<br />
== Experts ==<br />
{{list experts}}</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=OpenMP&diff=2058OpenMP2011-09-09T12:27:54Z<p>Elias Rudberg (UPPMAX): </p>
<hr />
<div>[[Category:Area of expertise]]<br />
<br />
OpenMP is an Application Program Interface (the OpenMP API) for shared-memory parallelism in C, C++, and Fortran programs. <br />
<br />
See http://openmp.org/<br />
<br />
== Experts ==<br />
{{list experts}}</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=OpenMP&diff=2057OpenMP2011-09-09T12:25:35Z<p>Elias Rudberg (UPPMAX): Created page with "Category:Area of expertise OpenMP is an Application Program Interface (the OpenMP API) for shared-memory parallelism in C, C++, and Fortran programs. See http://openmp.org/"</p>
<hr />
<div>[[Category:Area of expertise]]<br />
<br />
OpenMP is an Application Program Interface (the OpenMP API) for shared-memory parallelism in C, C++, and Fortran programs. <br />
<br />
See http://openmp.org/</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=User:Elias_Rudberg_(UPPMAX)&diff=2056User:Elias Rudberg (UPPMAX)2011-09-09T11:23:48Z<p>Elias Rudberg (UPPMAX): </p>
<hr />
<div>{{application expert info<br />
|first name=Elias<br />
|last name=Rudberg<br />
|centre=UPPMAX<br />
|fields=Algorithm and code development<br />
|other activities=<br />
|image=Elias.jpg<br />
|office=ITC building 2, floor 4, room 2440;Division of Scientific Computing;Department of Information Technology;Uppsala University<br />
}}<br />
<br />
== Quick facts ==<br />
* Also working on development of the Ergo program, see http://ergoscf.org<br />
<br />
== Expertise ==<br />
* [[expertise::C]]<br />
* [[expertise::C++]]<br />
* [[expertise::MPI]]<br />
* [[expertise::pthreads]]<br />
* [[expertise::OpenMP]]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=User:Elias_Rudberg_(UPPMAX)&diff=2055User:Elias Rudberg (UPPMAX)2011-09-09T11:22:23Z<p>Elias Rudberg (UPPMAX): Added image.</p>
<hr />
<div>{{application expert info<br />
|first name=Elias<br />
|last name=Rudberg<br />
|centre=UPPMAX<br />
|fields=Algorithm and code development<br />
|other activities=<br />
|image=Elias.jpg<br />
|office=ITC building 2, floor 4, room 2440;Division of Scientific Computing;Department of Information Technology;Uppsala University<br />
}}<br />
<br />
== Quick facts ==<br />
* Also working on development of the Ergo program, see http://ergoscf.org<br />
<br />
== Expertise ==<br />
* [[expertise::C/C++]]<br />
* [[expertise::MPI]]<br />
* [[expertise::pthreads]]<br />
* [[expertise::OpenMP]]</div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=File:Elias.jpg&diff=2054File:Elias.jpg2011-09-09T11:21:31Z<p>Elias Rudberg (UPPMAX): </p>
<hr />
<div></div>Elias Rudberg (UPPMAX)https://snicdocs.nsc.liu.se/w/index.php?title=User:Elias_Rudberg_(UPPMAX)&diff=2052User:Elias Rudberg (UPPMAX)2011-09-09T11:10:12Z<p>Elias Rudberg (UPPMAX): Added field, office info, etc.</p>
<hr />
<div>{{application expert info<br />
|first name=Elias<br />
|last name=Rudberg<br />
|centre=UPPMAX<br />
|fields=Algorithm and code development<br />
|other activities=<br />
<!--|image=name of an uploaded image file--><br />
|office=ITC building 2, floor 4, room 2440;Division of Scientific Computing;Department of Information Technology;Uppsala University<br />
}}<br />
<br />
== Quick facts ==<br />
* Also working on development of the Ergo program, see http://ergoscf.org<br />
<br />
== Expertise ==<br />
* [[expertise::C/C++]]<br />
* [[expertise::MPI]]<br />
* [[expertise::pthreads]]<br />
* [[expertise::OpenMP]]</div>Elias Rudberg (UPPMAX)