Just a heads up, we don't have a huge amount of space on this machine, ~750 GB for the git repos. We can include some data in the projects, but really big datasets will need to remain elsewhere. For anyone new to Git, this is a fairly good place to start: http://gitref.org/index.html Documentation for Gitlab is available here: http://doc.gitlab.com/

Commit 55508cca authored by Khalid Kunji's avatar Khalid Kunji

Update README.md

parent ee09486f
# Run GIGI Split and Merge Scripts
### Runs GIGI with multiple threads by splitting the input and merging the output.
### Runs GIGI with Multiple Threads by Splitting the Input and Merging the Output.
#### Requirements
Somewhat modern version of g++ if you need to recompile the binaries, we haven't checked how far back you can go but the default for most OS package managers should be fine.
Bash 4.3 or newer to use the -q option (wait -n was added in 4.3). The rest will work with older Bash versions but I am not sure how much older.
If you need to compile the binaries, a C++ compiler. Cmake if you want to use the included easy compilation script.
#### Getting GIGI-Quick
##### With Git
......@@ -12,30 +13,46 @@ Run the following command to clone the repository with git (git is a version man
```git clone https://cse-git.qcri.org/Imputation/GIGI-Quick.git```
##### With a browser
##### With a Browser
Go to this url: https://cse-git.qcri.org/Imputation/GIGI-Quick/tree/master
Click on the icon with the download arrow above the column "Last Update" on the right hand side.
There are several download options with different compressions. If you get run_GIGI this way, then you will need to decompress it before proceeding.
#### Installation
Once you have the files, there are executables compiled on Red Hat, 64 bit Linux, if this is not your system, then you may need to recompile them,
but this is usually not necessary unless your system has a different architecture (e.g., 32 bit x86, PowerPC, ARM):
To recompile, starting from the folder where you downloaded run_GIG:
Once you have the files, most users won't need to do anything else to use GIGI. There are executables compiled on Ubuntu 64 bit Linux for 64 bit and 32 bit (via multilib) x86 systems.
GIGI-Quick will automatically choose which of these to run. We recommend using these unless your system has a different architecture (e.g. PowerPC, ARM). When GIGI-Quick runs, if there
are locally compiled versions of the binaries then GIGI-Quick will use those, it will check for them in the following locations: ./GIGI/GIGI, ./MERGE/gigimerge, ./SPLIT/gigisplit.
```cd GIGI-Quick/SPLIT/```
##### Compiling
```g++ -O2 GIGISplit.cpp -o gigisplit```
We use cmake to create make files for the architecture being compiled on, to use that method one will need a reasonably recent cmake installed. This approach should be compiler and
architecture agnostic. To do this, one need only run the included make.sh script:
```cd ../MERGE/ ```
``` ./make.sh ```
This should create the make file then compile all three binaries. It will write a log file in ./make.log. If the cmake method is not working on your system, you can compile directly
with your compiler, we give an example with g++ from the gnu gcc:
```cd ./SPLIT/```
```g++ -O2 GIGISplit.cpp -o gigisplit```
```cd ../MERGE/```
```g++ -O2 GIGIMerge.cpp -o gigimerge```
```cd ../GIGI/src/GIGI_v1.06.1```
```g++ -O2 GIGI.cpp -o ../../GIGI```
```g++ -O2 GIGI.cpp -o ../../GIGI```
#### Extra Integration
The folder structure of GIGI-Quick should not be separated, GIGI-Quick depends on relative paths to locate the scripts and executables included other than run_GIGI.
##### As an Unprivledged User
That's it, GIGI-Quick is installed, the main file/command to run it is run_GIGI
If you like you can now add GIGI-Quick to your path, the examples assume that you have, you can do this by adding the following to your .bashrc (located in your home folder)
```export PATH=${PATH}:/path/to/folder/where/you/put/run_GIGI```
......@@ -44,7 +61,8 @@ Then source your .bashrc to apply the changes right away
```source ~/.bashrc```
The folder structure of GIGI-Quick should not be separated, GIGI-Quick depends on relative paths to locate the scripts and executables included other than run_GIGI.
##### As a Root/Sudo User
To add run_GIGI to the path system-wide for all users you can create a symlink in /usr/bin pointing to the run_GIGI script:
```ln -s /path/to/run_GIGI/script /usr/bin/run_GIGI```
......@@ -61,7 +79,7 @@ run_GIGI parameter_file -o [OUTPUT FOLDER] -n [RUN NAME] -t [THREADS] -m [MEMORY
-t [THREADS] : The number of threads to use for run_GIGI, and also the number of chunks to split the input into.
-m [MEMORY IN MB] : The amount of RAM that run_GIGI will restrict its use to, not yet implemented
-l : Specifies that the input is in the long format.
-V : Verbose mode, output from run_GIGI is much quieter now, you can see much more of what it is doing and what variables are set to at various stages with -v.
-V : Verbose mode, output from run_GIGI is much quieter now, you can see much more of what it is doing and what variables are set to at various stages with -V.
-v : Display the version of GIGI-Quick and exit.
-h : Display this help text.
-r [START] [END] : Run on only a selected region, starting at start and ending at end, this region will be selected before any further splitting.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment