AGILE (gpu image reconstruction library)

From Cheaha
Revision as of 21:00, 8 December 2011 by Jpr@uab.edu (talk | contribs) (→‎AGILE on Cheaha: Add section "Set up Build Environment")
Jump to navigation Jump to search


Attention: Research Computing Documentation has Moved
https://docs.rc.uab.edu/


Please use the new documentation url https://docs.rc.uab.edu/ for all Research Computing documentation needs.


As a result of this move, we have deprecated use of this wiki for documentation. We are providing read-only access to the content to facilitate migration of bookmarks and to serve as an historical record. All content updates should be made at the new documentation site. The original wiki will not receive further updates.

Thank you,

The Research Computing Team

AGILE (Environment for Linear and non-linear Image reconstruction using GPU Acceleration) is an open source library for GPU accelerated reconstruction problems in medical imaging. AGILE is developed at the Institute of Medical Engineering, Gratz University of Technology. It includes reconstruction code for Magnetic Resonance Imaging and Fluorescence Tomography, and was developed and tested on Linux systems.

Using AGILE

AGILE is available as a source code bundle and requires a GPU to execute.

AGILE on Cheaha

At this time, AGILE can only be run on Cheaha by building from source and running directly on the demonstration GPU node.

Preliminary Requirements

Before getting started, please review the Software Build Considerations to help create a sane, reproducible software product.

Using or building software for the GPU on Cheaha requires that you directly log into the GPU compute node. Start an SSH session with cheaha.uabgrid.uab.edu and after you log in execute a second SSH to the GPU compute node.

ssh cheaha-compute-1-9

Set up Build Environment

The build instructions below will assume all commands are executed from a directory dedicated to the AGILE build, after you are logged into the GPU compute node, set up your build environment. In addition to your base build environment you will need the CUDA compiler utilities.

mkdir agile-build
bash
PATH=/bin:/usr/bin; unset LD_LIBRARY_PATH
module load cuda/cuda4.0


Command to Build

The following build instructions were provided by Dr. Puri Bangalore

wget http://www.cmake.org/files/v2.8/cmake-2.8.6-Linux-i386.tar.gz
tar xvfz cmake-2.8.6-Linux-i386.tar.gz 
cd cmake-2.8.6-Linux-i386
export PATH=$PATH:/home/puri/cmake-2.8.6-Linux-i386/bin
echo $PATH
cd
wget http://downloads.sourceforge.net/project/boost/boost/1.48.0/boost_1_48_0.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fboost%2Ffiles%2Fboost%2F1.48.0%2F&ts=1322092023&use_mirror=cdnetworks-us-2
tar xvfz boost_1_48_0.tar.gz 
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/puri/boost_1_48_0/libs
cd
cd boost_1_48_0
./bootstrap.sh --prefix=/home/puri/boost
./b2 install
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/puri/boost/lib
cd
wget http://ftp.stack.nl/pub/users/dimitri/doxygen-1.7.5.1.src.tar.gz
tar xvfz doxygen-1.7.5.1.src.tar.gz 
cd doxygen-1.7.5.1
ls
more INSTALL 
cd
wget http://downloads.sourceforge.net/project/flex/flex/flex-2.5.35/flex-2.5.35.tar.gz?r=http%3A%2F%2Fflex.sourceforge.net%2F&ts=1322094898&use_mirror=voxel
tar xvfz flex-2.5.35.tar.gz 
cd flex-2.5.35
./configure --prefix=/home/puri/flex
make install
cd
cd flex
ls
ls bin/
export PATH=$PATH:/home/puri/flex/bin
cd
cd doxygen-1.7.5.1
./configure --prefix /home/puri/doxygen
make install
make 
make install
cd
export PATH=$PATH:/home/puri/doxygen/bin
cd
cd agile
mkdir build
cd build
more ../readme.txt 
cmake -DBOOST_ROOT=/home/puri/boost -DCMAKE_INSTALL_PREFIX=/home/puri/apps/ ..
ccmake .
make
make tut01
make tut01-run
cd tutorial/tut01/tut01 
cd tutorial/tut01/
ls
./tut01 
cd ../tut02
ls
./tut02 
./tut02 
cd ../tut03
./tut03 
cd ../tut04
./tut04
cd ../tut05
./tut05
mpirun -np 2 ./tut05
mpirun -np 4 ./tut05
cd ../tut06
./tut06
mpirun -np 4 ./tut06
mpirun -np 2 ./tut06
mpirun -np 1 ./tut06
mpirun -np 2 compute-0-4 compute-0-7 ./tut06
mpirun -np 2 -host compute-0-4 compute-0-7 ./tut06
mpirun -help
mpirun -host compute-0-4 compute-0-7 -np 2 ./tut06
mpirun --host compute-0-4 compute-0-7 -np 2 ./tut06
mpirun -np 2 --host compute-0-4 compute-0-7 ./tut06
mpirun -help
cat > ~/hostfile
mpirun -np 2 -hostfile ~/hostfile ./tut06
cd ../tut07
ls
cd ../tut08
ls
./tut08 
cd
cd agile/apps/tgv_radial_image_recon/
/home/puri/agile/build/apps/tgv_radial_image_recon/nfft2d_tgv_recon_nogfx -param=recon_32_param.txt

AGILE Support

AGILE is not supported on Cheaha beyond the above build instructions provided for AGILE.

AGILE Tutorials

Please visit the AGILE web site for information on use.