Skip to content

TST: Azure testing with NumPy #12036

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
tylerjereddy opened this issue Sep 26, 2018 · 13 comments
Closed

TST: Azure testing with NumPy #12036

tylerjereddy opened this issue Sep 26, 2018 · 13 comments
Labels
57 - Close? Issues which may be closable unless discussion continued component: numpy.testing

Comments

@tylerjereddy
Copy link
Contributor

This was discussed a bit on the mailing list--I've done a little testing on my fork of NumPy.

A sample PR shows the github integration in action for a MacOS job. The numpy_azure branch contains the .yml file, and the PR is opened against that.

MacOS tests don't all pass there yet. Looks like it took 3 minutes, 17 seconds for the full run.

@charris
Copy link
Member

charris commented Sep 26, 2018

Looks like dgelsd is the problem. I'd really like to see windows testing, appveyor is a real bottleneck for us.

@rgommers
Copy link
Member

+10 for Azure Pipelines. Discussed it with quite a few people, and Steve Dower gave an overview of features, MS's motivations, and what's coming next. Everyone was very positive and enthusiastic about it.

@tylerjereddy
Copy link
Contributor Author

I'd really like to see windows testing

I added Windows / Python 3.6 full tests to matrix; 1 error and a few failures; worse if I try more than 1 core for testing; tempfile stuff and a few other things. I'll try to sort them out.

@tylerjereddy
Copy link
Contributor Author

init_dgelsd failed init issue on the macOS builds is similar to a recent bug report for clang builds with homebrew and recent NumPy, which seems to be circumvented by using a recent version of gcc

@tylerjereddy
Copy link
Contributor Author

I've been able to reduce test skips on the azure mac os image now:
26 failed, 5552 passed, 25 skipped, 12 xfailed, 1 xpassed

But the failures look real and are also reported for macos 10.13 recently for macports.

@tylerjereddy
Copy link
Contributor Author

One user tracked down the source line in Numpy -- I'll see if I can debug that if nobody beats me to it; there's a comment mentioning Fix a bug in lapack 3.0.0 just above the low-level error block -- I bet it is because of something there -- we custom modify something that is fed to malloc because of an alleged lapack bug, but maybe that bug is no longer in play with some recent mac os images / LAPACK library settings, etc.

@eric-wieser
Copy link
Member

What version of Lapack is being tested there?

That comment was introduced by me in 92f1d12. I think there are all sorts of bugs in the lapack workspace calculations, which is what motivated my upgrade of lapack_lite a while back.

I think the situation now is that OSX ships with a more broken lapack than the one bundled with numpy.

@charris
Copy link
Member

charris commented Sep 28, 2018

Can we make the Mac build with the NumPy fallback code? I know we can on Linux, but have never tried on Mac.

@tylerjereddy
Copy link
Contributor Author

tylerjereddy commented Sep 28, 2018

I'll have to check re: lapack version -- the show_config style commands don't always make this stuff obvious to me. What is meant by "fallback code?"

Are there any low-level hooks that can be used in C source files to probe LAPACK version during pre-processing / guard the logic for handling the bugs?

I see online that ilaver() function will return lapack version, but it is apparently never used in our source. Looks like scipy exposes it in scipy.linalg.lapack.ilaver

@charris
Copy link
Member

charris commented Sep 28, 2018

IIRC, on the Mac use of accelerate/veclib is hardwired in, see numpy/distutils/system_info.py. On other platforms one can do

BLAS=None LAPACK=None python setup.py build

which disables linking to the external libraries and uses unoptimized numpy code instead.

@pv
Copy link
Member

pv commented Sep 28, 2018 via email

@mattip
Copy link
Member

mattip commented Oct 8, 2018

Can we close this?

@tylerjereddy
Copy link
Contributor Author

Yeah, the broader setup effort has been completed; some more challenging refinements may remain for i.e., MacOS f2py and test thread safety, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
57 - Close? Issues which may be closable unless discussion continued component: numpy.testing
Projects
None yet
Development

No branches or pull requests

6 participants