[AstroPy] Astropy 0.2.5 compilation error using Intel compilers under Mac OS Mavericks and python under Homebrew

Derek Homeier derek at astro.physik.uni-goettingen.de
Mon Nov 25 20:55:45 EST 2013


Hi Mike,

On 19.11.2013, at 2:50PM, Michael Droettboom <mdroe at stsci.edu> wrote:

> On 11/18/2013 09:46 AM, Jean-Baptiste Marquette wrote:
>> 
>> Hi again,
>> 
>>> If the latter, then we should open a general issue to support the
>>> intel C compiler (I think no one had requested it so far, hence why it
>>> went unnoticed). Try setting your compiler to clang instead to see if
>>> it helps.
>> 
>> clang successful, thus we are facing an icc compiler issue. Supporting it would be great. Emmanuel Bertin told me it is much more efficient in some situations, for example with sine or cosine functions.
> 
> We'll need some way to provide the financial support for this, of course.  ICC is far from free.  It doesn't appear on paper that STScI would be eligible for academic pricing or non-commercial pricing by Intel's definition [1] [2], so it's $699/box or $2,499 for 2-concurrent floating site license.  It might be worth experimenting with the 30-day evaluation license to see what the performance benefits are before committing to long-term support of that compiler.  That kind of money actually goes a real long way toward hosted testing solutions etc. which would benefit a lot more users than supporting a commercial compiler.  All that said, we can always accept small patches to support ICC even if none of the core developers have a copy.
> 
> [1] " For faculty or staff at degree-granting institutions of higher learning"
> [2] " Non-commercial software development means you are not paid and/or compensated in any form, by anyone, for software development using the Intel® Software Development Products under the terms of the non-commercial license."

for the record, on Linux I was able to build astropy-0.3 with the Intel 13.1 compiler suite by simply
stealing numpy's compiler setup. After configuring and building numpy and scipy as described at
http://software.intel.com/en-us/articles/numpyscipy-with-intel-mkl

I changed astropy/setup_helpers.py to

from distutils import log, sysconfig
from numpy.distutils import ccompiler

and 
> python setup.py build --help-compiler                       
List of available compilers:
  --compiler=bcpp     Borland C++ Compiler
  --compiler=cygwin   Cygwin port of GNU C Compiler for Win32
  --compiler=emx      EMX port of GNU C Compiler for OS/2
  --compiler=intel    Intel C Compiler for 32-bit applications
  --compiler=intele   Intel C Itanium Compiler for Itanium-based applications
  --compiler=intelem  Intel C Compiler for 64-bit applications
  --compiler=mingw32  Mingw32 port of GNU C Compiler for Win32
  --compiler=msvc     Microsoft Visual C++
  --compiler=pathcc   PathScale Compiler for SiCortex-based applications
  --compiler=unix     standard UNIX-style compiler

> python setup.py build --compiler=intelem --fcompiler=intelem

did the job on our cluster!
The same trick did not work so neatly for building some other prerequisites like cython and h5py, 
but I managed to force those with

LDSHARED='icc -shared [myoptions]' CC='icc [myoptions]' python setup.py build

I could certainly offer to test on our system for the regular releases.

The current release returns the same xFails that I get with the gcc-compiled version under OS X;
with the latest git master (0.4.dev6652) I got 4 additional Failures + 1 Error.

HTH,
					Derek


platform linux2 -- Python 2.7.5 -- pytest-2.4.0

Running tests with Astropy version 0.3.
Running tests in /usr/users/dhomeie/lib/python2.7/site-packages/astropy-0.3-py2.7-linux-x86_64.egg/astropy.

Platform: Linux-2.6.32-358.14.1.el6.x86_64-x86_64-with-redhat-6.4-Carbon

Executable: /home/product/applsw/python-2.7.5/bin/python2.7

Full Python Version: 
2.7.5 (default, Sep 23 2013, 14:39:38) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]

encodings: sys: ascii, locale: ANSI_X3.4-1968, filesystem: ANSI_X3.4-1968, unicode bits: 15
byteorder: little
float info: dig: 15, mant_dig: 15

Numpy: 1.8.0
Scipy: 0.13.1
Matplotlib: not available
h5py: 2.2.0

collected 4898 items / 5 skipped 
astropy/table/tests/test_table.py ..................................................................................................................................................................................x..............
astropy/time/tests/test_precision.py ...….x.
astropy/time/tests/test_quantity_interaction.py ..........x.
astropy/units/tests/test_quantity_array_methods.py .......x..............x..........x.x..........
astropy/units/tests/test_quantity_non_ufuncs.py xx
astropy/vo/client/tests/test_vo.py sssssssssss…x
astropy/wcs/tests/test_wcsprm.py ...........................................................................................x
===
4803 passed, 89 skipped, 11 xfailed in 182.16 seconds


 




More information about the AstroPy mailing list