<?xml version='1.0'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:atom="http://www.w3.org/2005/Atom" >
<channel>
	<title><![CDATA[BOL: Related items]]></title>
	<link>https://bioinformaticsonline.com/related/26424?offset=10</link>
	<atom:link href="https://bioinformaticsonline.com/related/26424?offset=10" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/22572/clump-finding-problem-solved-with-perl</guid>
	<pubDate>Wed, 10 Jun 2015 00:17:17 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/22572/clump-finding-problem-solved-with-perl</link>
	<title><![CDATA[Clump Finding Problem Solved with Perl]]></title>
	<description><![CDATA[<p>The question at http://rosalind.info/problems/1d/</p><p>Script are moved to&nbsp;http://bioinformaticsonline.com/snippets/view/34633/clump-finding-problem-solved-with-perl</p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/22569/reverse-complement-problem-solved-with-perl</guid>
	<pubDate>Tue, 09 Jun 2015 23:37:23 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/22569/reverse-complement-problem-solved-with-perl</link>
	<title><![CDATA[Reverse Complement Problem Solved with Perl]]></title>
	<description><![CDATA[<p>Question at http://rosalind.info/problems/1b/</p><p>#Find the reverse complement of a DNA string.<br />#Given: A DNA string Pattern.<br />#Return: Pattern, the reverse complement of Pattern.<br /><br />use strict;<br />use warnings;<br /><br />my $string="AAAACCCGGT";<br />my $finalString="";<br />my %hash = (<br />&nbsp;&nbsp; &nbsp;"C" =&gt; "G", <br />&nbsp;&nbsp; &nbsp;"A" =&gt; "T", <br />&nbsp;&nbsp; &nbsp;"T" =&gt; "A", <br />&nbsp;&nbsp; &nbsp;"G" =&gt; "C",<br />);<br /><br />for (my $aa=0; $aa&lt;=(length($string)-1); $aa++) {<br />&nbsp;&nbsp; &nbsp;my $char=substr $string, $aa, 1;<br />&nbsp;&nbsp; &nbsp;#print $hash{$char};<br />&nbsp;&nbsp; &nbsp;$finalString="$hash{$char}"."$finalString";<br />}<br /><br />print $finalString;<br />print "\n";</p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/22567/rosalind-problem-solution-with-perl</guid>
	<pubDate>Tue, 09 Jun 2015 23:35:18 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/22567/rosalind-problem-solution-with-perl</link>
	<title><![CDATA[Rosalind Problem Solution with Perl]]></title>
	<description><![CDATA[<p>Rosalind is a platform for learning bioinformatics and programming through problem solving. <a href="http://rosalind.info/problems/list-view/?location=bioinformatics-textbook-track">Take a tour</a> to get the hang of how Rosalind works.</p><p>Bioinformatics Textbook Track</p><p>Find more about Rosalind puzzle at http://rosalind.info/problems/list-view/?location=bioinformatics-textbook-track</p><p>I will provide solution of all the Rosalind problem with Perl for community.</p><p>Check out the right sidebar for more links ...</p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/27104/gatb-genome-analysis-toolbox-with-de-bruijn-graph</guid>
	<pubDate>Thu, 28 Apr 2016 11:16:51 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/27104/gatb-genome-analysis-toolbox-with-de-bruijn-graph</link>
	<title><![CDATA[GATB : Genome Analysis Toolbox with de-Bruijn graph]]></title>
	<description><![CDATA[<p>The&nbsp;<strong><strong>Genome Analysis Toolbox with de-Bruijn graph</strong> (GATB)</strong> provides a set of <a href="https://gatb.inria.fr/gatb-global-architecture/">highly efficient algorithms to analyse NGS data sets</a>. These methods enable the analysis of data sets of any size on multi-core desktop computers, including very huge amount of reads data coming from any kind of organisms such as bacteria, plants, animals and even complex samples (<em>e.g.</em> metagenomes).</p>
<p>More at https://gatb.inria.fr/</p><p>Address of the bookmark: <a href="https://gatb.inria.fr/" rel="nofollow">https://gatb.inria.fr/</a></p>]]></description>
	<dc:creator>Jit</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/428/five-unique-traits-of-effective-computational-biologist</guid>
	<pubDate>Thu, 11 Jul 2013 13:12:51 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/428/five-unique-traits-of-effective-computational-biologist</link>
	<title><![CDATA[Five unique traits of effective computational biologist]]></title>
	<description><![CDATA[<p>Bioinformatics research is driven by large set of software, scripts, and tools to analyse gigantic biological data. Being a great biological programmer or bioinformatician involves more than writing code that works. The biological programmers who rise to the top ranks of their profession are not only good programmer but also expert in biological stuff. Moreover, In order to be a good and effective biological programmer, you need to possess a combination of traits that allow your computational as well as biological skill, experience, and knowledge to produce working code. There are some technically skilled biological programmers who will never be effective because they lack the other important traits needed. Here are top five traits that are necessary to become a great biological programmer.</p><p><strong>1. Learn and get updated</strong></p><p>Some of the bad biological programmers only learn new technical or non-technical things when it&rsquo;s absolutely necessary. The good biological programmers learn new technical skills proactively. But great biological programmers not only learn new technical skills on their own but also learn non-technical skills, and have an open mind to sources of knowledge that others may shut out.</p><p>In other concrete term, the bad biological programmer learn Perl's regular expression when they started a project on comparative genomics; the good biological programmer learned it a year before because it looked interesting; and the great biological programmer also read about the BioPerl packages, genomics, DNA string, genomic theories, or some similar course of study so that they could understand the results and explain it biologically.</p><p><strong>2. Not a merely coder!!!</strong></p><p>I often encountered with biological programmer who call themself a hard-core computer programmer and avoid biology. I can almost guarantee that if you are one of them then you are not doing research but merely writing "dry" codes.</p><p>According to my supervisor most of the computational biologist, don't know what they are doing biologically. Even they struggle to explain their own programs output and results. Therefore, It is highly advisable to learn basic of biology which can assist you to explain the result and understand your discovery. Always remember you are a researcher not a coder.</p><p><strong>3. Be Social with biologist</strong></p><p>The computational biologist spends most of the time in from of computers, writing codes. They always think their job is to produce working codes, not technical research perfections. But, they are completely wrong. You should not forget that apart from your computational skills you also need some biologist, other than your supervisor, to explain and make you understand the complex biological mechanism.</p><p>I highly recommend your to interact with biotech researchers and learn how do they explain their one graph (which they generally produce after one year of work) biologically. Remember, the origin of your research project is complex biological phenomenon, which is more complex than that of your limited programming rules.</p><p><strong>4. Do not search, research for answers</strong></p><p>Researching for answers means more than typing several keywords into a search engine or posting a question at Stack Overflow or the BioStars forums. I have entered problems into search engines that generate no results, and every question I posted on Stack Overflow or the BioStars forums never got anything resembling an answer, yet I solved the issues and moved on. I&rsquo;m not a magician &mdash; I just know how to find answers or discover root causes.</p><p>Many problems are situational, and if you depend on search engines and forums, you can waste a lot of time going down a rabbit hole and possibly never getting a solution. Learn to perform root cause analysis, learn enough about the underlying system to look for other clues and solutions, and learn to take a long distance view of an issue before deep diving into it.</p><p><strong>5. Love and defend your research</strong></p><p>You cannot rise to the top in this research profession without loving your work. There are some very good &ldquo;it&rsquo;s just a job&rdquo; biological programmers (I&rsquo;ve been one at times), but if that is your outlook, you won&rsquo;t be willing to do whatever it takes to succeed. This idea gets a lot of folks in a huff, because they feel it is a personal insult. &ldquo;I&rsquo;m a good programmer, but I have other priorities and can&rsquo;t make work my life.&rdquo; I understand completely; I have other priorities too. As much as I hate to say it, when I am passionate about my work, I am willing (though not eager) to abandon my other priorities to finish the job. It is not an insult to say that if you aren&rsquo;t willing to pull out all the stops you can&rsquo;t be the best, it is a fact.</p><p>You must be passionate about more than programming &mdash; you must also be excited about your research, the tools and technology you are using, and so on. I have seen very good and even great biological programmers operating at mediocre levels because something was not a good fit, such as they hated the project or were using a technology they disliked. Therefore, like your research project and get excited about your discoveries. You have not only to discover but also defend your finding with scientific words.</p><p>Thanks to all of you for reading.</p>]]></description>
	<dc:creator>Jitendra Narayan</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/32399/mapping-ngs</guid>
	<pubDate>Tue, 02 May 2017 07:58:07 -0500</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/32399/mapping-ngs</link>
	<title><![CDATA[Mapping NGS]]></title>
	<description><![CDATA[<p>NGS data are just a bunch of sequences, you have no idea which region in the genome each sequences comes from, which gene it represents...<br>To know that you have to align the sequences to the reference sequence. The reference sequence is in most cases the full genome sequence but sometimes, a library of EST sequences is used.<br>In either way, aligning your sequence reads to the reference sequence is called mapping.</p>
<p>The most used mappers of DNA-seq data are&nbsp;<a href="http://bio-bwa.sourceforge.net/" target="_blank">BWA</a>&nbsp;and&nbsp;<a href="http://bowtie-bio.sourceforge.net/bowtie2/index.shtml" target="_blank">Bowtie</a>&nbsp;for DNA-Seq data and&nbsp;<a href="http://tophat.cbcb.umd.edu/" target="_blank">Tophat</a>,&nbsp;<a href="https://github.com/alexdobin/STAR" target="_blank">STAR</a>&nbsp;or&nbsp;<a href="http://www.ccb.jhu.edu/software/hisat/index.shtml" target="_blank">HISAT</a>&nbsp;for RNA-Seq data. Mappers differ in which options they can take in, how fast and how accurate they are. Bowtie is faster than BWA, but looses some sensitivity (does not map an equal amount of reads to the correct position in the genome).</p><p>Address of the bookmark: <a href="http://wiki.bits.vib.be/index.php/Mapping_of_NGS_data" rel="nofollow">http://wiki.bits.vib.be/index.php/Mapping_of_NGS_data</a></p>]]></description>
	<dc:creator>Abhimanyu Singh</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/1161/genomics-for-bioinformatician</guid>
	<pubDate>Sat, 20 Jul 2013 07:03:00 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/1161/genomics-for-bioinformatician</link>
	<title><![CDATA[Genomics for Bioinformatician]]></title>
	<description><![CDATA[<p>Genomics is the study of the genomes of organisms. The field includes intensive efforts to determine the entire DNA sequence of organisms and fine-scale genetic mapping efforts. The field also includes studies of intragenomic phenomena such as heterosis, epistasis, pleiotropy and other interactions between loci and alleles within the genome. In contrast, the investigation of the roles and functions of single genes is a primary focus of molecular biology or genetics and is a common topic of modern medical and biological research. Research of single genes does not fall into the definition of genomics unless the aim of this genetic, pathway, and functional information analysis is to elucidate its effect on, place in, and response to the entire genome's networks.<br /><br />Genomics was established by Fred Sanger when he first sequenced the complete genomes of a virus and a mitochondrion. His group established techniques of sequencing, genome mapping, data storage, and bioinformatic analyses in the 1970-1980s. A major branch of genomics is still concerned with sequencing the genomes of various organisms, but the knowledge of full genomes has created the possibility for the field of functional genomics, mainly concerned with patterns of gene expression during various conditions. The most important tools here are microarrays and bioinformatics. Study of the full set of proteins in a cell type or tissue, and the changes during various conditions, is called proteomics. A related concept is materiomics, which is defined as the study of the material properties of biological materials (e.g. hierarchical protein structures and materials, mineralized biological tissues, etc.) and their effect on the macroscopic function and failure in their biological context, linking processes, structure and properties at multiple scales through a materials science approach. The actual term 'genomics' is thought to have been coined by Dr. Tom Roderick, a geneticist at the Jackson Laboratory (Bar Harbor, ME) over beer at a meeting held in Maryland on the mapping of the human genome in 1986.<br /><br />The outcome of almost two years of intense discussions with literally hundreds of scientists and members of the public, has three major areas of focus: Genomics to Biology, Genomics to Health, and Genomics to Society.<br /><br /><strong><em>Genomics to Biology:</em></strong>&nbsp;<br />The human genome sequence provides foundational information that now will allow development of a comprehensive catalog of all of the genome's components, determination of the function of all human genes, and deciphering of how genes and proteins work together in pathways and networks.<br /><br /><strong><em>Genomics to Health:<br /></em></strong>Completion of the human genome sequence offers a unique opportunity to understand the role of genetic factors in health and disease, and to apply that understanding rapidly to prevention, diagnosis, and treatment. This opportunity will be realized through such genomics-based approaches as identification of genes and pathways and determining how they interact with environmental factors in health and disease, more precise prediction of disease susceptibility and drug response, early detection of illness, and development of entirely new therapeutic approaches.<br /><br /><strong><em>Genomics to Society:</em>&nbsp;<br /></strong>Just as the HGP has spawned new areas of research in basic biology and in health, it has created new opportunities in exploring the ethical, legal, and social implications (ELSI) of such work. These include defining policy options regarding the use of genomic information in both medical and non-medical settings and analysis of the impact of genomics on such concepts as race, ethnicity, kinship, individual and group identity, health, disease, and "normality" for traits and behaviors.<br /><br />This vision for the future of genomics is not just about the NHGRI. It encompasses the whole field of genomics, including the work of all the other Institutes and Centers at the NIH and of a number of other federal agencies. All of the NIH Institutes are already taking full advantage of the sequence and will apply its data to the better understanding of both rare and common diseases, almost all of which have a genetic component. A recent example of the way that the HGP and the knowledge and new technologies it has spawned are already facilitating science is the extremely rapid sequencing by groups in Canada and at the Centers for Disease Control and Prevention (CDC) in Atlanta of the genome of the virus that causes Severe Acute Respiratory Syndrome (SARS). The sequencing of the SARS virus genome provides insight into this new and deadly disease at a speed never before possible in science. In turn, this should lead to the rapid development of diagnostic tests and, in time, vaccines and effective treatments.<br /><br /><strong>Links for the addition material available on Net</strong></p><p><a href="http://pevsnerlab.kennedykrieger.org/bioinformatics/bioinf10_genomes.htm">Genomes and genomics:</a></p><p><a href="http://www.123genomics.com/learning.html">Bioinformatics and Genomics:</a></p><p><a href="http://www.ebi.ac.uk/pdbe/docs/roadshow_tutorial/strgenomics/tutorial.html">Structural genomics tutorial:</a></p><p><a href="http://www.hgu.mrc.ac.uk/Users/Philippe.Gautier/tutorial/index.html">Comparative Genomics Tutorial:</a></p><p><a href="http://www.scfbio-iitd.res.in/tutorial/genomics.html">GENOME TUTORIAL:</a></p><p><a href="http://genomebiology.com/content/pdf/gb-2001-3-1-reviews2001.pdf">Tools and resources for identifying protein families, domains and motifs</a></p><p><a href="http://www.ornl.gov/sci/techresources/Human_Genome/posters/chromosome/tools.shtml">Bioinformatics Tools</a><a href="http://www.ornl.gov/sci/techresources/Human_Genome/posters/chromosome/tools.shtml">&nbsp;<br />Tips, Tutorials, and Terminology for Using Selected Resources in Genome Database Guide:</a></p><p><a href="http://www.doe-mbi.ucla.edu/Reprints/R31%20Strong%20A%20Web-based%20Comparative%20Genomics%20tutorial%20Microbiology%20Eduction%202004.pdf">A Web-Based Comparative Genomics Tutorial for Investigating Microbial Genomes:</a></p><p><a href="http://www.genome.gov/27530225">Free Online Tutorials Teach Anyone How to Use Genome Databases:</a></p><p><a href="http://mkweb.bcgsc.ca/circos/?tutorials">Circos to create concise, explanatory, unique and print-ready visualizations of your data:</a></p><p><a href="http://www.igd.cornell.edu/Comparative%20Genomics/Comparative%20Genomics%20Proj.html">Genomics and Comparative Genomics</a><a href="http://www.igd.cornell.edu/Comparative%20Genomics/Comparative%20Genomics%20Proj.html">&nbsp;Learning Module:</a></p><p><a href="http://psb.stanford.edu/psb10/conference-materials/tutorials/compgen-notes.pdf">Computational Challenges in Comparative Genomics</a></p><p><a href="http://psb.stanford.edu/psb10/conference-materials/tutorials/compgen-notes.pdf">A Tutorial:</a></p><p><a href="http://gramene.agrinome.org/tutorials/modules_tutorial.pdf">A Comparative Genomics Resource for Grains</a>:</p><p><a href="http://www.plantcell.org/cgi/content/full/21/12/3718">PLAZA: A Comparative Genomics Resource to Study Gene and Genome Evolution in Plants:</a></p><p><a href="http://en.wikipedia.org/wiki/VISTA_(comparative_genomics)">VISTA</a><a href="http://en.wikipedia.org/wiki/VISTA_(comparative_genomics)">:</a></p><p>Software for Genomics</p><ol>
<li><strong>Artemis</strong>&nbsp;Artemis is a free genome viewer and annotation tool that allows visualization of sequence features and the results of analyses within the context of the sequence, and its six-frame translation.</li>
<li><strong>Chromas&nbsp;</strong>It will display and prints chromatogram files from ABI automated DNA sequencers, and Staden SCF files which the analysis programs for ALF, Li-Cor and Visible Genetics OpenGene sequencers can create.</li>
<li><strong>Glimmer</strong>&nbsp;A system for finding genes in microbial DNA, especially the genomes of bacteria and archaea.Glimmer (Gene Locator and Interpolated Markov Modeler) uses interpolated Markov models (IMMs) to identify the coding regions and distinguish them from noncoding DN</li>
<li><strong>Glimmer</strong>&nbsp;HMM&nbsp;A fast and accurate gene finder based on a GHMM architecture, developed specifically for eukaryotes. It incorporates splice site models adapted from the GeneSplicer program and uses interpolated Markov models for evaluating the coding regions.</li>
<li><strong>Glimmer</strong>&nbsp;M&nbsp;A gene finder derived from Glimmer, but developed specifically for eukaryotes. It is based on a dynamic programming algorithm that considers all combinations of possible exons for inclusion in a gene model and chooses the best of these combinations. The d</li>
<li><strong>MUMmer</strong>&nbsp;MUMmer is a system for rapidly aligning entire genomes, whether in complete or draft form.</li>
<li><strong>pDRAW</strong>&nbsp;pDRAW32 is being developed as a free time hobby project. It is far from finished, but as it has reached a point where it could be helpful for many labs, it is now available to the scientific community.</li>
<li><strong>Sequin</strong>&nbsp;Sequin is a stand-alone software tool developed by the NCBI for submitting and updating entries to the GenBank, EMBL, or DDBJ sequence databases. It is capable of handling simple submissions that contain a single short mRNA sequence, and complex submissio</li>
<li><strong>Staden&nbsp;</strong>The Staden Package consists of a series of tools for DNA sequence preparation (pregap4), assembly (gap4), editing (gap4) and DNA/protein sequence analysis (spin).</li>
</ol><p>For more software @&nbsp;<a href="http://bioinformaticsonline.com/bookmarks/view/926/list-of-popular-bioinformatics-softwaretools">http://bioinformaticsonline.com/bookmarks/view/926/list-of-popular-bioinformatics-softwaretools</a></p>]]></description>
	<dc:creator>Jitendra Narayan</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/37590/parallel-processing-with-perl</guid>
	<pubDate>Sat, 25 Aug 2018 11:32:40 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/37590/parallel-processing-with-perl</link>
	<title><![CDATA[Parallel Processing with Perl !]]></title>
	<description><![CDATA[<p>Here is a small tutorial on how to make best use of multiple processors for bioinformatics analysis. One best way is using perl threads and forks. Knowing how these threads and forks work is very important before implementing them. Getting to know how these work would be really useful before reading this tutorial.</p><p>Many times in bioinformatics we need to deal with huge datasets which&nbsp; are more than 100GB size. The traditional way to analysis a file is using the while loop</p><p>while (FILE){</p><p>Do something;</p><p>}</p><p>This is very slow(since we are using only one processor) and if we have 500 million lines in the dataset it takes more than a day to iterate through the whole dataset. So how do we make best use of all our processors and get the work done quickly?</p><p>Here is a very simple and efficient technique with perl which i have been using. I am&nbsp; more inclined towards using perl fork than perl threads.</p><p>One of the oldest way to fork is</p><blockquote><p>my $fork = fork();<br />if($fork){&nbsp;&nbsp;&nbsp;<br />push (@childs,$fork);&nbsp;<br />}<br />elseif($fork==0){<br /><strong>your code here;</strong><br />exit(0);<br />}<br />else{die &ldquo;Couldnt fork : $!&rdquo;;}</p><p>## wait for the child process to finish<br />foreach(@childs){<br />my $tmp=waitid($_,0);<br />}</p></blockquote><p>what a fork does is it creates a child process and takes the variables and code with it to analyze it separately (detached from the parent process) and thus a separate process is created( which usually runs on a separate processor). Thats it!! One big disadvantage of forking is its very difficult to share variables among the different processes. I will show you how to do it easily but still it has its own drawbacks.</p><blockquote><p>Okie, now if you really do not want to use fork in your code, that&rsquo;s okie too..There are many useful modules which do it for you very efficiently. One really useful module is Parallel::ForkManager. You can use Parallel::ForkManager to manage the number of forks you want to generate (number of processors you want to use).</p><p><strong>Simple usage:</strong><br />use Parallel::ForkManager;<br />my $max_processors=8;<br />my $fork= new Parallel::ForkManager($max_processors);<br />foreach (@dna) {<br />$fork-&gt;start and next; # do the fork<br /><strong>you code here;</strong><br />$fork-&gt;finish; # do the exit in the child process<br />}<br />$pm-&gt;wait_all_children;</p></blockquote><p>so you will be generating 8 forks which do the same thing for your each element of array. when one child finishes, Parallel::ForkManager generates a new one and thus you will be using all your processors to analyze the data. Now, if you have generated 8 child processes and want to write the data to one file. You need to lock the file to do this, because you will have problems with the buffering. You can lock the file using flock command.</p><blockquote><p>open (my $QUAL, &ldquo;myfile.txt&rdquo;);<br />flock $QUAL, LOCK_EX or die &ldquo;cant lock file $!&rdquo;;<br />print $QUAL &ldquo;$output&rdquo;;<br />flock $QUAL, LOCK_UN or die &ldquo;$!&rdquo;;<br />close $QUAL;</p></blockquote><p>I would not suggest using flock when dealing with multiple processes because it will decrease the processing efficiency( each child process must wait for the lock to be released by the other child process). Instead, I would suggest each fork writing to a separate file and after the processing just concatenating them.</p><p><strong>Putting it all together, If you have 100GB data you can do this</strong></p><blockquote><p><strong>step 1</strong>&nbsp;: split the dataset equally according to number of processors you have. this may take a few hours(about 2-3 hrs for 100GB file)<br />You can use unix &ldquo;split&rdquo; command for this<br />for example:<br />my $number_split=int($number_of_entries_in_your_dataset/$max_processors);<br />my $split_Files=`split -l $number_split &ldquo;your_file.fasta&rdquo; &ldquo;file_name&rdquo;`;</p><p><strong>step2</strong>: open you directory comtaining you split files and start Parallel::ForkManager.<br /><strong>For example:</strong><br />opendir(DIRECTORY, $split_files_directory) or die $!; ### open the directory<br />my $fork= new Parallel::ForkManager($max_processors);<br />while (my $file = readdir(DIRECTORY)) { ### read the directory<br />if($file=~/^\./){next;}<br />print $file,&rdquo;\n&rdquo;;<br />########## Start fork ##########<br />my $pid= $super_fork-&gt;start and next;<br /><strong>Whatever you want to do with the split file ;</strong><br /><strong>analyze my piece of $file;</strong><br />######### end fork ###############<br />$super_fork-&gt;finish;<br />}<br />$super_fork-&gt;wait_all_children;</p></blockquote><p>So basically each processor will be active with its piece of data (split file) and thus you have created 8 processes at one time which run without interfering with the other process. I again will not suggest writing output from each child process to one file(for reasons above). Write output from each fork to a separate file and finally concatenate them. Thats it, you have just increased your program speed by 8 times!! Isnt it easy?</p><p><strong>Note:</strong><br />You may worry about concatenation of the output each child generates, since it does take some time(remember 100GB). I think now you can use a mysql database LOAD DATA LOCAL INFILE command to load all the files into a single table(Should take about 3hrs for 100Gb dataset) and then export the whole table into one file. This should be faster than just concatenating them using &ldquo;cat&rdquo; command.(correct me if I am wrong)</p><p>Or much simpler way is to use pipes</p><p>cat output_dir/* | my_pipe or my_pipe &lt;(file1) final_file;</p><p>Thats it guys!! Enjoy programming and please do comment. I am not a computer scientist so forgive me for any mistakes and if any please report them. Thank you.</p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>

<item>
  <guid isPermaLink='true'>https://bioinformaticsonline.com/opportunity/view/41905/research-associate-bioinformatics-in-iisc-recruitment-2020</guid>
  <pubDate>Tue, 23 Jun 2020 21:53:34 -0500</pubDate>
  <link></link>
  <title><![CDATA[Research Associate Bioinformatics in IISc Recruitment 2020]]></title>
  <description><![CDATA[
<p>Research Associate Bioinformatics in IISc Recruitment 2020</p>

<p>Essential Qualifications: Ph.D. (Bioinformatics/ Biophysics/ Biotechnology or any other stream of biological/ physical sciences) with a minimum of two publications in reputed peer reviewed journals in the area of structural bioinformatics or biophysics or biomolecular modeling/ simulation.</p>

<p>Job description: Development of bioinformatics tools and algorithms/software for structure based analysis of biomolecular systems. Programmatic access to major biomolecular databases using APIs Knowledge based prediction and analysis of biomolecular structure, function and interactions. Docking/simulations for inhibitor design.</p>

<p>Desirable Qualifications (Research Associate/s): i)  Strong computer programming skills (in Python/PERL/PHP or C++ or object oriented database management systems like MySQL etc or scripting languages under LINUX/UNIX environment). </p>

<p>ii) Extensive experience in computational analysis of biomolecular structure/interactions and usage of advanced biomolecular simulation softwares. iii) Adequate knowledge of major databases, webservers and softwares in the area of biomolecular structure/function and drug design. iv)  Familiarity with Parallel Programming environments and experience in usage of high-end HPC clusters.</p>

<p>The candidates must highlight their experience in above mentioned fields/topics in their CV. Initial appointment will be for a period of 1 year, subject to extension after review of performance.</p>

<p>Emoluments: As per DST, GOI norms and commensurate with experience.</p>

<p>More at https://www.iisc.ac.in/positions-open/</p>
]]></description>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/bookmarks/view/42552/bioinformatics-workbook</guid>
	<pubDate>Tue, 05 Jan 2021 22:42:32 -0600</pubDate>
	<link>https://bioinformaticsonline.com/bookmarks/view/42552/bioinformatics-workbook</link>
	<title><![CDATA[bioinformatics workbook]]></title>
	<description><![CDATA[<p><span>This books assumes that the reader has some knowledge of biology and basic understanding of the Unix command line. However, for the beginner, the appendix contains introductory material and tips/tricks for common bioinformatic problems, that is referred to for more information throughout the book.</span></p>
<p>https://bioinformaticsworkbook.org/</p><p>Address of the bookmark: <a href="https://bioinformaticsworkbook.org/" rel="nofollow">https://bioinformaticsworkbook.org/</a></p>]]></description>
	<dc:creator>biogeek</dc:creator>
</item>

</channel>
</rss>