Readme for GBOOST

GBOOST is a GPU-implementation of BOOST based on the CUDA technology by Nvidia. GBOOST 
has been tested on a machine with Nvidia GTX 285 display card with Window Vista x64 and 
CUDA 2.3. To launch GBOOST, your computer should be installed with CUDA 2.3 or above. 
If you encounter any problems about using GBOOST, you are welcome to contact the author 
at timyung@ust.hk.

===== Recommended platform, software version and hardware for GBOOST =====================
CPU : Intel CPU 2.13GHz or above
Main Memory : 2 GB or above
Display Card : Nvidia GTX 285
Operating System : Windows Vista x64
CUDA Driver : 2.3 or above
Please refer to http://www.nvidia.com/object/cuda_gpus.html for a list of CUDA Enabled GPUs.
==========================================================================================

===== Notes for compiling on Linux =======================================================
Before you try to compile GBOOST, please ensure
1. GCC and G++ compiler is correctly installed
2. A CUDA with version 2.3 or above and a corresponding Nvidia driver are installed
3. CUDA_INSTALL_PATH (Line 1 of the Makefile) is correctly set
4. CUDA_LIB_PATH (Line 19 of the Makefile) is correctly set

To compile 32 bit version, you should first check related options of gcc and nvcc 
1. Add corresponding flags option (i.e. -m32) to gcc, g++ and nvcc compilers
   -- Line 15 for nvcc flags
   -- Line 16 for C++ flags
2. Edit CUDA_LIB_PATH for 32-bit CUDA library
   -- Line 19 for the included lib directory)
==========================================================================================

===== Program Usage ======================================================================
Usage is 

	GBOOST	-i listFile -m workmode -p testmode -o outputPrefix
		-i Input List File
		-wm work mode (default : CPU)
			CPU -- CPU mode
			GPU -- GPU mode
		-pt Pre-filtering Threshold (default : 99999)
		-sm screen mode (default : SCREENING_KSA)
			SCREENING_KSA -- KSA Approximation in screening step
			SCREENING_CHISQUARE -- Chisquare in screening step
		-st Screen Threshold (default : 30.0)
		-tm test mode (default : EXACT_GUESS)
			EXACT_GUESS -- Exact guess for log-linear
			MODEL_SELECTION -- Model selection
		-tt Test Threshold
			Default : 30.0 for EXCESS_GUESS
			Fixed :	10.828 for MODEL_SELECTION
		-o Output files' prefixs (default : )
Examples : 
	GBOOST -i .\filenameList.txt -wm CPU -o output

	The program will output three file 
		'OutputDistrCollection.txt' 
		'OutputInteraction.txt'
		'OutputMarginalAssociation.txt'
==========================================================================================