Wednesday, March 4, 2015

install cloc on ubuntu 14.04 64bit

[1] dependencies
sudo apt-get install git make g++ libstdc++-4.8-dev libelf-dev libtinfo-dev re2c libbsd-dev gfortran build-essential -y

[2] HSA runtime
git clone https://github.com/HSAfoundation/HSA-Runtime-AMD.git \
&& cd HSA-Runtime-AMD && sudo mkdir -p /opt/hsa/lib && sudo cp -R include /opt/hsa && sudo cp lib/* /opt/hsa/lib

[3] HSA Kernel drivers and reboot
go back to toplevel

git clone https://github.com/HSAfoundation/HSA-Drivers-Linux-AMD.git && sudo dpkg -i HSA-Drivers-Linux-AMD/kfd-1.0/ubuntu/*.deb && echo "KERNEL==\"kfd\", MODE=\"0666\"" | sudo tee /etc/udev/rules.d/kfd.rules && sudo cp HSA-Drivers-Linux-AMD/kfd-1.0/libhsakmt/lnx64a/libhsakmt.so.1 /opt/hsa/lib && sudo reboot

[4] check intallation
go to the installation folder
cd HSA-Drivers-Linux-AMD && ./kfd_check_installation.sh

[5] install hsail compiler
git clone https://github.com/HSAfoundation/HSAIL-HLC-Stable.git && sudo mkdir -p /opt/amd && sudo cp -R HSAIL-HLC-Stable/bin /opt/amd

[6] install and test cloc
git clone https://github.com/HSAfoundation/CLOC.git && sudo cp CLOC/bin/cloc /usr/local/bin/. && sudo cp CLOC/bin/cloc_genw /usr/local/bin/.  && cp -r CLOC/examples . && cd examples/snack/helloworld && ./buildrun.sh

[7] intall c++amp
mkdir deb && cd deb 
&& wget https://bitbucket.org/multicoreware/cppamp-driver-ng/downloads/clamp-0.4.0-hsa-milestone3-Linux.deb    \ 
&& wget https://bitbucket.org/multicoreware/cppamp-driver-ng/downloads/libcxxamp-0.4.0-hsa-milestone3-Linux.deb  \
&& wget https://bitbucket.org/multicoreware/cppamp-driver-ng/downloads/clamp-bolt-1.2.0-hsa-milestone3-Linux.deb \
&& sudo dpkg -i *.deb

go to this page, to download source file
( https://bitbucket.org/multicoreware/cppamp-driver-ng/wiki/Home )
then
sudo tar zxvf boost_1_55_0-hsa-milestone3.tar.gz -C /opt/clamp


[8] install okra
git clone https://github.com/HSAfoundation/Okra-Interface-to-HSA-Device \
&& sudo mkdir /opt/amd/okra \
&& sudo cp -r Okra-Interface-to-HSA-Device/okra /opt/amd \
&& sudo cp Okra-Interface-to-HSA-Device/okra/dist/bin/libokra_x86_64.so /opt/hsa/lib/.


[9] set up environment in .bashrc

export HSA_LLVM_PATH=/opt/amd/bin
export HSA_RUNTIME_PATH=/opt/hsa
export HSA_OKRA_PATH=/opt/amd/okra
export PATH=$PATH:/opt/amd/bin
export LD_LIBRARY_PATH=/opt/hsa/lib