This post is just some quick documentation for myself as well as others as to how to get ATLAS to compile on the Wandboard, Cubieboard A20 and the Applied Micro X-Gene (Mustang).
In all cases I found that the recipe for success is to manually specify the compilers. Of course, setting the CPU frequency governor to performance is also required.
The Tegra-K1 compile doesn't seem to be working yet. I'll post as soon as I'm successful!
On all of the boards the following commands work to set the CPU governors:
sudo su
echo "performance" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
and on the Tegra-K1 it's required to turn off the power saver core:
echo 0 > /sys/devices/system/cpu/cpu0/cpuquiet/...
When you are done setting up the CPU governors, find out the running frequency and exit the su:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
exit
Go ahead and create a directory where you would like to download and build ATLAS to. Inside that directory, fetch the latest unstable version of atlas and if required, rename it.
wget http://sourceforge.net/projects/math-atlas/files/Developer%20%28unstable%29/3.11.32/atlas3.11.32.tar.bz2/download
Extract it and head to a build directory:
tar xf ./atlas3.11.32.tar.bz2
cd ATLAS
mkdir build
cd build
Now the magic happens... The configure command has loads of options but I find that in the unstable (3.11) range, the defaults work well for ARM. It just needs a little help. We have to manually specify the CPU frequency and since I am using gcc-4.9 and gfortran-4.9 I force them. I found that even if you tell the system that gcc and gfortran are the respective -4.9 versions, it doesnt always work.
Go ahead and type the following command to do the configure:
../configure -m <fpu_freq> -C acg gcc-4.9 -C if gfortran-4.9 -D c -DWALL
Everything should work out with no errors. If there are, then you need to delete the contents of the build directory and start again. Try different configure flags.
When the configure is done with no errors simply run
make build
and give it an hour or two!
No comments:
Post a Comment