Building ATLAS (e posterior Octave com ATLAS)

9

Estou tentando configurar o ATLAS (para que eu possa compilar mais tarde a oitava com o suporte do ATLAS).

Se eu estiver correto, ainda preciso criar isso manualmente devido às otimizações específicas do ambiente. Eu vejo um pacote para o ATLAS, mas parece que ele está usando as opções genéricas de construção de várias plataformas (por exemplo, "será lento").

Portanto, executar o script de configuração, conforme descrito nos documentos , parece sair mal. Como desenvolvedor java, nunca me dou bem em fazer cara ou coroa de erros nesses processos de construção. Estou com falta de dependências (se houver alguma documentação sobre o que eu preciso)?

allusers@vbubuntu:~/Downloads/atlas3.10.1/build_vbubuntu$ ../configure -b 64 -D c -DPentiumCPS=3000 --with-netlib-lapack-tarfile=/home/allusers/Downloads/lapack-3.5.0.tgz

make: 'xconfig' is up to date.
./xconfig -d s /home/allusers/Downloads/atlas3.10.1/build_vbubuntu/../ -d b /home/allusers/Downloads/atlas3.10.1/build_vbubuntu  -b 64 -D c -DPentiumCPS=3000 -Si lapackref 1

OS configured as Linux (1)

Assembly configured as GAS_x8664 (2)

Vector ISA Extension configured as  SSE3 (6,448)
ERROR: enum fam=3, chip=2, mach=0
make[3]: *** [atlas_run] Error 44
make[2]: *** [IRunArchInfo_x86] Error 2

Architecture configured as  Corei1 (25)
ERROR: enum fam=3, chip=2, mach=0
make[3]: *** [atlas_run] Error 44
make[2]: *** [IRunArchInfo_x86] Error 2

Clock rate configured as 2350Mhz
ERROR: enum fam=3, chip=2, mach=0
make[3]: *** [atlas_run] Error 44
make[2]: *** [IRunArchInfo_x86] Error 2

Maximum number of threads configured as  4
Parallel make command configured as '$(MAKE) -j 4'
ERROR: enum fam=3, chip=2, mach=0
make[3]: *** [atlas_run] Error 44
make[2]: *** [IRunArchInfo_x86] Error 2
Cannot detect CPU throttling.
rm -f config1.out
make atlas_run atldir=/home/allusers/Downloads/atlas3.10.1/build_vbubuntu exe=xprobe_comp redir=config1.out \
                args="-v 0 -o atlconf.txt -O 1 -A 25 -Si nof77 0 -V 448   -b 64 -d b /home/allusers/Downloads/atlas3.10.1/build_vbubuntu"
make[1]: Entering directory '/home/allusers/Downloads/atlas3.10.1/build_vbubuntu'
cd /home/allusers/Downloads/atlas3.10.1/build_vbubuntu ; ./xprobe_comp -v 0 -o atlconf.txt -O 1 -A 25 -Si nof77 0 -V 448   -b 64 -d b /home/allusers/Downloads/atlas3.10.1/build_vbubuntu > config1.out
make[2]: gfortran: Command not found
make[2]: *** [IRunF77Comp] Error 127
make[2]: g77: Command not found
make[2]: *** [IRunF77Comp] Error 127
make[2]: f77: Command not found
make[2]: *** [IRunF77Comp] Error 127


Unable to find usable compiler for F77; abortingMake sure compilers are in your path, and specify good compilers to configure
(see INSTALL.txt or 'configure --help' for details)make[1]: *** [atlas_run] Error 8
make[1]: Leaving directory '/home/allusers/Downloads/atlas3.10.1/build_vbubuntu'
make: *** [IRun_comp] Error 2
ERROR 512 IN SYSCMND: 'make IRun_comp args="-v 0 -o atlconf.txt -O 1 -A 25 -Si nof77 0 -V 448   -b 64"'
mkdir src bin tune interfaces
mkdir: cannot create directory ‘src’: File exists
mkdir: cannot create directory ‘bin’: File exists
mkdir: cannot create directory ‘tune’: File exists
mkdir: cannot create directory ‘interfaces’: File exists
make: *** [make_subdirs] Error 1
make -f Make.top startup
make[1]: Entering directory '/home/allusers/Downloads/atlas3.10.1/build_vbubuntu'
Make.top:1: Make.inc: No such file or directory
Make.top:325: warning: overriding commands for target '/AtlasTest'
Make.top:76: warning: ignoring old commands for target '/AtlasTest'
make[1]: *** No rule to make target 'Make.inc'.  Stop.
make[1]: Leaving directory '/home/allusers/Downloads/atlas3.10.1/build_vbubuntu'
make: *** [startup] Error 2
mv: cannot move ‘lapack-3.5.0’ to ‘../reference/lapack-3.5.0’: Directory not empty
mv: cannot stat ‘lib/Makefile’: No such file or directory
../configure: 450: ../configure: cannot create lib/Makefile: Directory nonexistent
../configure: 451: ../configure: cannot create lib/Makefile: Directory nonexistent
../configure: 452: ../configure: cannot create lib/Makefile: Directory nonexistent
../configure: 453: ../configure: cannot create lib/Makefile: Directory nonexistent
../configure: 509: ../configure: cannot create lib/Makefile: Directory nonexistent
DONE configure
    
por David Parks 26.05.2014 / 01:56

2 respostas

3

Parece que essas eram as dependências de que precisava, o processo de criação agora está em execução. Essas coisas nunca são facilmente documentadas em um bom formato de consumo.

Para o Ubuntu (gfortran, g77 e f77, respectivamente):

sudo apt-get install gfortran f2c libcnf-dev

Além disso, qualquer pessoa que encontre essa pergunta pode encontrar essa questão de uso stackoverflow relacionada:

link

    
por David Parks 26.05.2014 / 07:54
12

A melhor maneira de construir a biblioteca ATLAS personalizada para o seu processador em particular é seguir as instruções em /usr/share/doc/libatlas3-base/README.Debian (também disponível para leitura online) here ). As instruções dizem explicitamente como reconstruir o pacote atlas source para Debian / Ubuntu de uma forma que lhe dará pacotes customizados que podem ser instalados no lugar dos pacotes fornecidos nos repositórios oficiais.

O trecho relevante de README.Debian diz:

  

Construindo Pacotes Atlas Otimizados no seu ARCH

     

Construir seus próprios pacotes otimizados do Atlas é simples.   Basta obter as fontes do pacote e suas dependências de compilação:

# apt-get source atlas
# apt-get build-dep atlas
# apt-get install devscripts
     

e digite o seguinte no subdiretório de fontes do atlas:

# fakeroot debian/rules custom
     

deve produzir um pacote chamado:

     

../libatlas3-base_*.deb

     

, que é otimizado para a arquitetura na qual o Atlas foi desenvolvido. Então instale   o pacote usando dpkg -i .

    
por Mike Miller 28.05.2014 / 19:28