#请注意,本ATLAS配置只配置了C接口而没有配置Fortran接口(疑似没有找到合适的Fortran编译器或者没有配置好config)
一.首先需要关闭cpu throtting,不然将无法生成MAKE.INC导致安装失败
1. Edit /etc/default/grub
2. Find line with: GRUB_CMDLINE_LINUX_DEFAULT
3. Append the following to args: intel_pstate=disable
4. Update grub: update-grub
5. Reboot
安装:sudo apt-get install cpufrequtils
信息:cpufreq-info
确认安装好了以后,执行:
cpufreq-set -g performance
到这里,CPU已经被调成了一直保持最高频率,这样子CPU温度将会较高,你可以选择安装完成后将其频率调回正常状态。
二.安装 gfortran
gfortran可以编译fortran文件
sudo apt-get gfortran
二.安装ATLAS
这里本人使用的是默认安装
**************************************************
mkdir my_build_dir ; cd my_build_dir
/path/to/ATLAS/configure -C if gfortran
make ! tune and compile library
make check ! perform sanity tests
make ptcheck ! checks of threaded code for multiprocessor systems
make time ! provide performance summary as % of clock rate
make install ! Copy library and include files to other directories
**************************************************
安装完成后执行
make check
结果如下:
DONE BUILDING TESTERS, RUNNING:
SCOPING FOR FAILURES IN BIN TESTS:
fgrep -e fault -e FAULT -e error -e ERROR -e fail -e FAIL \
bin/sanity.out
8 cases: 8 passed, 0 skipped, 0 failed
4 cases: 4 passed, 0 skipped, 0 failed
8 cases: 8 passed, 0 skipped, 0 failed
4 cases: 4 passed, 0 skipped, 0 failed
8 cases: 8 passed, 0 skipped, 0 failed
4 cases: 4 passed, 0 skipped, 0 failed
8 cases: 8 passed, 0 skipped, 0 failed
4 cases: 4 passed, 0 skipped, 0 failed
DONE
SCOPING FOR FAILURES IN CBLAS TESTS:
fgrep -e fault -e FAULT -e error -e ERROR -e fail -e FAIL \
interfaces/blas/C/testing/sanity.out | \
fgrep -v PASSED
Make.top:27: recipe for target 'sanity_test' failed
make[1]: [sanity_test] Error 1 (ignored)
DONE
SCOPING FOR FAILURES IN F77BLAS TESTS:
fgrep -e fault -e FAULT -e error -e ERROR -e fail -e FAIL \
interfaces/blas/F77/testing/sanity.out | \
fgrep -v PASSED
Make.top:27: recipe for target 'sanity_test' failed
make[1]: [sanity_test] Error 1 (ignored)
DONE
make[1]: Leaving directory '/home/masterz/ATLAS'
这里要注意的是,此时的ATALS已经完全配置成功了,输出的 Make.top:27: recipe for target 'sanity_test' failed指的是没有找到错误,这和官方文档有些出入,一开始本人还以为配置fortran出现了问题,但是查询后发现对应的测试样例日志已经生成,并且测试样例全部通过。而bash中如果没有找到匹配项就会输出receipe failed,不用担心。
更详细的配置内容可以参考下载的ATALS解压后目录下的./doc/atlas_install.pdf