User:Hef/ispc on rpi2: Difference between revisions
From Pumping Station One
No edit summary |
|||
| (13 intermediate revisions by the same user not shown) | |||
| Line 4: | Line 4: | ||
<syntaxHighlight lang=bash> | <syntaxHighlight lang=bash> | ||
sudo apt-get install cmake gcc-4.8 g++-4.8 | sudo apt-get install cmake gcc-4.8 g++-4.8 bison flex libncurses5-dev subversion | ||
</syntaxHighlight> | </syntaxHighlight> | ||
== ninja == | == second attempt == | ||
<syntaxHighlight lang=bash> | |||
export LLVM_HOME=~/projects/llvm_home | |||
export ISPC_HOME=$PWD | |||
export CC=/usr/bin/gcc-4.8 | |||
export CXX=/usr/bin/g++-4.8 | |||
export CFLAGS="-march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4" | |||
export CXXFLAGS="-march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4" | |||
./alloy.py -b --version=3.5 | |||
export PATH=$PATH:$LLVM_HOME/bin-3.5/bin | |||
</syntaxHighlight> | |||
I should try adding <code>export CFLAGS="-march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4"</code> | |||
== first attempt == | |||
=== ninja === | |||
<syntaxHighlight lang=bash> | <syntaxHighlight lang=bash> | ||
git clone git://github.com/martine/ninja.git | git clone git://github.com/martine/ninja.git | ||
| Line 16: | Line 34: | ||
</syntaxHighlight> | </syntaxHighlight> | ||
== clang == | === clang === | ||
<syntaxHighlight lang=bash> | <syntaxHighlight lang=bash> | ||
git clone http://llvm.org/git/llvm.git | git clone http://llvm.org/git/llvm.git | ||
| Line 31: | Line 49: | ||
I didn't fully test the <code>-j</code> (concurrent build) options to ninja. ninja defaults to 6 on the rpi2. You will run out of memory if you do this. Even if you create larger swap for the pi, swapping to an sd card is a really major performance hit and you will be better of using fewer cores. | I didn't fully test the <code>-j</code> (concurrent build) options to ninja. ninja defaults to 6 on the rpi2. You will run out of memory if you do this. Even if you create larger swap for the pi, swapping to an sd card is a really major performance hit and you will be better of using fewer cores. | ||
== self hosted clang == | === self hosted clang === | ||
<syntaxHighlight lang=bash> | <syntaxHighlight lang=bash> | ||
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/local/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/bin/clang++ ../llvm -G Ninja | cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/local/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/bin/clang++ ../llvm -G Ninja | ||
</syntaxHighlight> | |||
=== ispc === | |||
<syntaxHighlight lang=bash> | |||
make ARM_ENABLED=1 -j4 | |||
</syntaxHighlight> | </syntaxHighlight> | ||