====== Differences ====== This shows you the differences between two versions of the page.
parafetch [2011/04/17 06:15] sbwood created |
parafetch [2012/01/10 00:44] (current) wikihelp007 |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | E-rauchen tut nicht nicht geruchlos sein. Das kannst du hier nachlesen [[http://www.elektrische-zigaretten-kaufen.info/|e Zigarette]] . Elektro Zigaretten sollen nicht schädlich sein. Deshalb kannst du es ja mal versuchen. | ||
====== paraFetch ====== | ====== paraFetch ====== | ||
The paraFetch source code can be found [[http://genome.ucsc.edu/admin/git.html|here]], while the binary can be found [[http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/paraFetch|here]]. | The paraFetch source code can be found [[http://genome.ucsc.edu/admin/git.html|here]], while the binary can be found [[http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/paraFetch|here]]. | ||
+ | |||
+ | <code> | ||
+ | mkdir ~/parafetch | ||
+ | cd ~/parafetch | ||
+ | wget http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/paraFetch | ||
+ | </code> | ||
+ | |||
+ | paraFetch fetches files behind an HTTP server, hence we use [[http://nginx.org/|nginx]] since it is relatively easy to install without root. | ||
+ | |||
+ | <code> | ||
+ | mkdir ~/nginx | ||
+ | cd ~/nginx | ||
+ | wget http://nginx.org/download/nginx-1.0.0.tar.gz | ||
+ | tar zxvf nginx-1.0.0.tar.gz | ||
+ | cd nginx-1.0.0/ | ||
+ | ./configure --prefix=$HOME/nginx --without-http_rewrite_module --without-http-cache | ||
+ | make | ||
+ | make install | ||
+ | </code> | ||
+ | |||
+ | Edit ~/nginx/conf/nginx.conf to use port 8080. | ||
+ | |||
+ | In order to use more than 50 streams you must edit the paraFetch source and recompile. To do this for x86_64, with 600 streams: | ||
+ | |||
+ | 1. Download the kent source | ||
+ | <code> | ||
+ | git clone git://genome-source.cse.ucsc.edu/kent.git | ||
+ | </code> | ||
+ | |||
+ | |||
+ | 2. Edit lines 1804-1808 in "kent/src/lib/net.c": | ||
+ | |||
+ | <code> | ||
+ | if (numConnections > PARCONN)/* ignore high values for numConnections */ | ||
+ | { | ||
+ | warn("Currently maximum number of connections is %d. You requested %d. Will proceed with %d on %s",PARCONN, numConnections, PARCONN, url); | ||
+ | numConnections = PARCONN; | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | 3. Add a #define at the top of "kent/src/lib/net.c": | ||
+ | |||
+ | <code> | ||
+ | #define PARCONN 600 /*This is the maximum no. of parallel streams supported*/ | ||
+ | </code> | ||
+ | |||
+ | 4. Compile the common libraries for x86_64 (jkweb.a): | ||
+ | |||
+ | <code> | ||
+ | cd kent/src/lib/ | ||
+ | make x86_64/jkweb.a | ||
+ | </code> | ||
+ | |||
+ | 5. Compile paraFetch: | ||
+ | |||
+ | <code> | ||
+ | cd kent/src/utils/paraFetch/ | ||
+ | make | ||
+ | </code> | ||
+ | |||
+ | 6. Copy from your bin: | ||
+ | |||
+ | <code> | ||
+ | cp ~/bin/x86_64/paraFetch ~/ | ||
+ | </code> | ||
+ | |||
+ |