-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Invokation of certain methods result in an immediate crash of the python interpreter: Illegal instruction (core dumped)
#811
Comments
At matplotlib/matplotlib#13458 it was said that the reason for the crash should be found here. |
matplotlib/matplotlib#13458 (comment) suggests the stock jupyter/scipy-notebook image is working (or was working, given we don't know what
@1kastner can you explain or share the alterations? |
@parente I copy some local files into the image, add a label etc. |
The latest guess at the other thread was that the nesting inside a not-suitably-configured VM might be the deal-breaker.
I will check whether the VM used at the cluster provides some kind of CPU which is not supported by the binaries installed through conda. |
I could temporarily solve the issue by noting: |
Btw, the same error popped up when I was using |
Illegal instruction (core dumped)
Illegal instruction (core dumped)
Here's what I get from running the matplotlib code in an ipython shell using the latest scipy-notebook image on my local VM. All versions / SHAs are shown in the log below for comparison. The result is what I would expect: matplotlib fails to use the default backend because there is no X session running in the container.
If I run |
The image itself is working, I can use the same image on my Windows computer perfectly. I am not saying that it is as such broken. I would be glad if I had a simple error message like yours which is quite obious to deal with. As said before, the python interpreter crashes, most likely due to issues related to the pre-compiled libraries of conda which do not suit to the local machine. Therefore, it would be interesting to see whether and how the creation of the image altered. And to figure out why the behavior changed over updates. |
Other places where
So maybe it is rather an issue of conda at this place. |
At numpy/numpy#9532 they mention it as well. |
conda-forge went through a jump to a new compiler version in recent history. It may be tied to that. Old versions of the images are always available with git sha's as tags. We can't stick with older versions of packages on master indefinitely, however, for reasons like #819. |
I definitely do not want insecure software and at the conda issue (see conda/conda#8373) the option is mentioned that docker might be misconfigured. |
Let's see what will show up at https://forums.docker.com/t/70718 |
I'm having a similar issue after trying to update numpy/pandas. One of the telltale signs is that |
I just stepped through with pdb and found the line where things broke:
So yes, most likely it is related to numpy |
Sadly your suggestions @prusswan were not successful, thanks anyways. I derived my image from it and added (1) Those were the updates run:
PS: I also tried
as suggested in conda-forge/numpy-feedstock#108 - No improve either |
The np.dot operation further leads to numpy/numpy#11517: This makes it crash: import numpy as np
A = np.matrix([[1.], [3.]])
B = np.matrix([[2., 3.]])
np.dot(A, B) import os
os.environ["OPENBLAS_CORETYPE"] = "nehalem"
import numpy as np
A = np.matrix([[1.], [3.]])
B = np.matrix([[2., 3.]])
np.dot(A, B) And this finally works! |
I am not sure if you have the correct openblas packages, do you have the hash of the specific docker image you used? From what I can tell, problems start when the mkl/openblas packages get mixed up, and in my case, once I lost the openblas numpy through some update, I cannot get conda to install it again. Right now I am using a slightly older version of conda list# packages in environment at /opt/conda: # # Name Version Build Channel _r-mutex 1.0.0 anacondar_1 defaults alembic 0.9.9 py_0 conda-forge arrow-cpp 0.12.1 py36h0e61e49_0 conda-forge asn1crypto 0.24.0 py36_1003 conda-forge async_generator 1.10 py_0 conda-forge attrs 18.2.0 py_0 conda-forge autovizwidget 0.12.6 py36_0 anaconda backcall 0.1.0 py_0 conda-forge beautifulsoup4 4.6.3 py36_1000 conda-forge blas 1.1 openblas conda-forge bleach 3.0.2 py_1 conda-forge bokeh 0.13.0 py36_1000 conda-forge boost-cpp 1.68.0 h3a22d5f_0 conda-forge bwidget 1.9.11 1 defaults bzip2 1.0.6 h470a237_2 conda-forge ca-certificates 2019.3.9 hecc5488_0 conda-forge cairo 1.14.12 h276e583_5 conda-forge certifi 2019.3.9 py36_0 conda-forge cffi 1.11.5 py36h5e8e0c9_1 conda-forge chardet 3.0.4 py36_1003 conda-forge cloudpickle 0.5.6 py_0 conda-forge conda 4.6.8 py36_0 conda-forge conda-env 2.6.0 1 conda-forge configurable-http-proxy 3.1.0 node8_1 conda-forge cryptography 2.5 py36hb7f436b_1 conda-forge cryptography-vectors 2.3.1 py36_1000 conda-forge curl 7.64.0 h646f8bb_0 conda-forge cycler 0.10.0 py_1 conda-forge cython 0.28.5 py36hfc679d8_0 conda-forge cytoolz 0.9.0.1 py36h470a237_1 conda-forge dask-core 1.0.0 py_0 conda-forge dbus 1.13.0 h3a4f0e9_0 conda-forge decorator 4.3.0 py_0 conda-forge dill 0.2.8.2 py36_1000 conda-forge entrypoints 0.3 py36_1000 conda-forge expat 2.2.5 hfc679d8_2 conda-forge fastcache 1.0.2 py36h470a237_1 conda-forge findspark 1.3.0 py_1 conda-forge fontconfig 2.13.1 h65d0f4c_0 conda-forge freetype 2.9.1 h6debe1e_4 conda-forge gettext 0.19.8.1 h5e8e0c9_1 conda-forge glib 2.56.2 h464dc38_1 conda-forge gmp 6.1.2 hfc679d8_0 conda-forge gmpy2 2.0.8 py36hb705a9b_2 conda-forge graphite2 1.3.13 hfc679d8_0 conda-forge gsl 2.2.1 blas_openblashddceaf2_6 [blas_openblas] conda-forge gst-plugins-base 1.12.5 hde13a9d_0 conda-forge gstreamer 1.12.5 h5856ed1_0 conda-forge h5py 2.7.1 py36_2 conda-forge harfbuzz 1.9.0 h04dbb29_1 conda-forge hdf5 1.10.1 2 conda-forge hdijupyterutils 0.12.6 py36_0 anaconda icu 58.2 hfc679d8_0 conda-forge idna 2.8 py36_1000 conda-forge imageio 2.4.1 py36_1000 conda-forge ipykernel 4.9.0 py36_0 conda-forge ipython 7.2.0 py36h24bf2e0_1000 conda-forge ipython_genutils 0.2.0 py_1 conda-forge ipywidgets 7.4.2 py_0 conda-forge jedi 0.13.2 py36_1000 conda-forge jinja2 2.10 py_1 conda-forge jpeg 9c h470a237_1 conda-forge jsonschema 3.0.0a3 py36_1000 conda-forge jupyter_client 5.2.4 py_0 conda-forge jupyter_core 4.4.0 py_0 conda-forge jupyterhub 0.9.4 py36_1000 conda-forge jupyterlab 0.35.4 py36_0 conda-forge jupyterlab_server 0.2.0 py_0 conda-forge kiwisolver 1.0.1 py36h2d50403_2 conda-forge krb5 1.16.3 hc83ff2d_1000 conda-forge libcurl 7.64.0 h01ee5af_0 conda-forge libedit 3.1.20170329 haf1bffa_1 conda-forge libevent 2.0.22 hb7f436b_1002 conda-forge libffi 3.2.1 hfc679d8_5 conda-forge libgcc 7.2.0 h69d50b8_2 conda-forge libgcc-ng 7.3.0 hdf63c60_0 conda-forge libgfortran 3.0.0 1 conda-forge libgfortran-ng 7.2.0 hdf63c60_3 conda-forge libiconv 1.15 h470a237_4 conda-forge libpng 1.6.36 ha92aebf_0 conda-forge libprotobuf 3.6.1 hd28b015_0 conda-forge libsodium 1.0.16 h470a237_1 conda-forge libssh2 1.8.0 h1ad7b7a_1003 conda-forge libstdcxx-ng 7.3.0 hdf63c60_0 conda-forge libtiff 4.0.10 he6b73bb_1 conda-forge libuuid 2.32.1 h470a237_2 conda-forge libxcb 1.13 h470a237_2 conda-forge libxml2 2.9.8 h422b904_5 conda-forge llvmlite 0.23.0 py36_1 conda-forge make 4.2.1 h470a237_1003 conda-forge mako 1.0.7 py_1 conda-forge markupsafe 1.1.0 py36h470a237_0 conda-forge matplotlib 2.2.3 py36h8e2386c_0 conda-forge metakernel 0.20.14 py_0 conda-forge mistune 0.8.4 py36h470a237_0 conda-forge mpc 1.1.0 hb705a9b_6 conda-forge mpfr 4.0.1 h16a7912_0 conda-forge mpmath 1.1.0 py_0 conda-forge nbconvert 5.3.1 py_1 conda-forge nbformat 4.4.0 py_1 conda-forge ncurses 6.1 hfc679d8_2 conda-forge networkx 2.2 py_1 conda-forge nodejs 8.10.0 0 conda-forge notebook 5.7.2 py36_1000 conda-forge numba 0.38.1 py36_0 conda-forge numexpr 2.6.9 py36hf8a1672_0 conda-forge numpy 1.16.2 py36_blas_openblash1522bff_0 [blas_openblas] conda-forge olefile 0.46 py_0 conda-forge openblas 0.3.3 ha44fe06_1 conda-forge openssl 1.0.2r h14c3975_0 conda-forge packaging 18.0 py_0 conda-forge pamela 0.3.0 py_1001 conda-forge pandas 0.24.2 py36hf484d3e_0 conda-forge pandoc 2.5 0 conda-forge pandocfilters 1.4.2 py_1 conda-forge pango 1.40.14 he752989_2 conda-forge parquet-cpp 1.5.1 2 conda-forge parso 0.3.1 py_0 conda-forge patsy 0.5.1 py_0 conda-forge pcre 8.41 hfc679d8_3 conda-forge pexpect 4.6.0 py36_1000 conda-forge pickleshare 0.7.5 py36_1000 conda-forge pillow 5.4.1 py36hc736899_0 conda-forge pip 18.1 py36_1000 conda-forge pixman 0.34.0 h470a237_3 conda-forge plotly 3.6.1 py36_0 anaconda prometheus_client 0.5.0 py_0 conda-forge prompt_toolkit 2.0.7 py_0 conda-forge protobuf 3.6.1 py36hfc679d8_1 conda-forge pthread-stubs 0.4 h470a237_1 conda-forge ptyprocess 0.6.0 py36_1000 conda-forge pyarrow 0.12.1 py36hbbcf98d_0 conda-forge pycosat 0.6.3 py36h470a237_1 conda-forge pycparser 2.19 py_0 conda-forge pycurl 7.43.0.2 py36hb7f436b_0 defaults pygments 2.3.1 py_0 conda-forge pykerberos 1.1.14 py36h84109d8_2 anaconda pyopenssl 18.0.0 py36_1000 conda-forge pyparsing 2.3.0 py_0 conda-forge pyrsistent 0.14.9 py36h470a237_0 conda-forge pysocks 1.6.8 py36_1002 conda-forge python 3.6.7 hd21baee_1002 conda-forge python-dateutil 2.7.5 py_0 conda-forge python-editor 1.0.3 py_0 conda-forge python-oauth2 1.0.1 py36_0 conda-forge pytz 2018.9 py_0 conda-forge pywavelets 1.0.1 py36h7eb728f_0 conda-forge pyyaml 3.13 py36h470a237_1 conda-forge pyzmq 17.1.2 py36hae99301_1 conda-forge r-askpass 1.1 r351h96ca727_0 conda-forge r-assertthat 0.2.0 r351h6115d3f_1001 conda-forge r-backports 1.1.3 r351hc070d10_0 conda-forge r-base 3.5.1 h391c2eb_5 conda-forge r-base64enc 0.1_3 r351hc070d10_2 conda-forge r-bh 1.66.0_1 r351_2001 conda-forge r-bindr 0.1.1 r351h6115d3f_1001 conda-forge r-bindrcpp 0.2.2 r351h9d2a408_1 conda-forge r-bitops 1.0_6 r351hc070d10_2 conda-forge r-broom 0.5.1 r351h6115d3f_1000 conda-forge r-cli 1.0.1 r351h6115d3f_1000 conda-forge r-colorspace 1.3_2 r351hc070d10_2 conda-forge r-config 0.3 r351h6115d3f_1001 conda-forge r-crayon 1.3.4 r351h6115d3f_1001 conda-forge r-curl 3.2 r351hc070d10_2 conda-forge r-dbi 1.0.0 r351h6115d3f_1001 conda-forge r-dbplyr 1.2.2 r351h6115d3f_1001 conda-forge r-digest 0.6.18 r351hc070d10_0 conda-forge r-dplyr 0.7.8 r351h9d2a408_0 conda-forge r-evaluate 0.12 r351h6115d3f_1000 conda-forge r-fansi 0.4.0 r351hc070d10_0 conda-forge r-forge 0.1.0 r351h6115d3f_1000 conda-forge r-generics 0.0.2 r351h6115d3f_1001 conda-forge r-ggplot2 3.1.0 r351h6115d3f_1000 conda-forge r-glue 1.3.0 r351h470a237_2 conda-forge r-gtable 0.2.0 r351h6115d3f_1001 conda-forge r-htmltools 0.3.6 r351hfc679d8_2 conda-forge r-htmlwidgets 1.3 r351h6115d3f_1000 conda-forge r-httpuv 1.4.5.1 r351hfc679d8_0 conda-forge r-httr 1.4.0 r351h6115d3f_1000 conda-forge r-irdisplay 0.7 r351_1000 conda-forge r-irkernel 0.8.14 r351h6115d3f_1000 conda-forge r-jsonlite 1.6 r351hc070d10_0 conda-forge r-labeling 0.3 r351h6115d3f_1001 conda-forge r-later 0.7.5 r351h9d2a408_0 conda-forge r-lattice 0.20_38 r351hc070d10_0 conda-forge r-lazyeval 0.2.1 r351hc070d10_2 conda-forge r-magrittr 1.5 r351h6115d3f_1001 conda-forge r-mass 7.3_51.1 r351hc070d10_0 conda-forge r-matrix 1.2_15 r351hc070d10_0 conda-forge r-mgcv 1.8_26 r351hc070d10_0 conda-forge r-mime 0.6 r351hc070d10_0 conda-forge r-munsell 0.5.0 r351h6115d3f_1001 conda-forge r-nlme 3.1_137 r351h364d78e_0 conda-forge r-openssl 1.1 r351hff1dc39_1001 conda-forge r-pbdzmq 0.3_3 r351hc862886_0 conda-forge r-pillar 1.3.1 r351h6115d3f_1000 conda-forge r-pkgconfig 2.0.2 r351h6115d3f_1001 conda-forge r-plogr 0.2.0 r351h6115d3f_1001 conda-forge r-plyr 1.8.4 r351h9d2a408_2 conda-forge r-promises 1.0.1 r351h9d2a408_0 conda-forge r-purrr 0.2.5 r351hc070d10_2 conda-forge r-r2d3 0.2.3 r351h6115d3f_1000 conda-forge r-r6 2.3.0 r351h6115d3f_1000 conda-forge r-rappdirs 0.3.1 r351hc070d10_2 conda-forge r-rcolorbrewer 1.1_2 r351h6115d3f_1001 conda-forge r-rcpp 1.0.0 r351h9d2a408_0 conda-forge r-rcurl 1.95_4.11 r351hc070d10_3 conda-forge r-repr 0.19.1 r351h6115d3f_1000 conda-forge r-reshape2 1.4.3 r351h9d2a408_2 conda-forge r-rlang 0.3.0.1 r351h470a237_0 conda-forge r-rprojroot 1.3_2 r351h6115d3f_1001 conda-forge r-rstudioapi 0.8 r351h6115d3f_1001 conda-forge r-scales 1.0.0 r351h9d2a408_1 conda-forge r-shiny 1.2.0 r351_1000 conda-forge r-sourcetools 0.1.7 r351hfc679d8_0 conda-forge r-sparklyr 0.9.3 r351h6115d3f_1000 conda-forge r-stringi 1.2.4 r351h9d2a408_1 conda-forge r-stringr 1.3.1 r351h6115d3f_1001 conda-forge r-sys 2.1 r351h96ca727_1000 conda-forge r-tibble 2.0.0 r351hc070d10_0 conda-forge r-tidyr 0.8.2 r351h9d2a408_2 conda-forge r-tidyselect 0.2.5 r351h9d2a408_0 conda-forge r-utf8 1.1.4 r351hc070d10_0 conda-forge r-uuid 0.1_2 r351hc070d10_1 conda-forge r-viridislite 0.3.0 r351h6115d3f_1001 conda-forge r-withr 2.1.2 r351h6115d3f_1000 conda-forge r-xml2 1.2.0 r351h9d2a408_2 conda-forge r-xtable 1.8_3 r351_2000 conda-forge r-yaml 2.2.0 r351hc070d10_1 conda-forge readline 7.0 haf1bffa_1 conda-forge requests 2.21.0 py36_1000 conda-forge requests-kerberos 0.12.0 py36_0 anaconda retrying 1.3.3 py36_2 anaconda ruamel_yaml 0.15.71 py36h470a237_0 conda-forge scikit-image 0.14.1 py36hfc679d8_4 conda-forge scikit-learn 0.20.2 py36_blas_openblash00c3548_400 [blas_openblas] conda-forge scipy 1.1.0 py36_blas_openblashb06ca3d_202 [blas_openblas] conda-forge seaborn 0.9.0 py_0 conda-forge send2trash 1.5.0 py_0 conda-forge setuptools 40.6.3 py36_0 conda-forge sip 4.18.1 py36hfc679d8_0 conda-forge six 1.12.0 py36_1000 conda-forge sparkmagic 0.12.7 py36_1001 anaconda spylon 0.3.0 py_1 conda-forge spylon-kernel 0.4.1 py_1000 conda-forge sqlalchemy 1.2.15 py36h470a237_0 conda-forge sqlite 3.26.0 hb1c47c0_0 conda-forge statsmodels 0.9.0 py36h7eb728f_0 conda-forge sympy 1.1.1 py36_0 conda-forge terminado 0.8.1 py36_1001 conda-forge testpath 0.4.2 py36_1000 conda-forge thrift-cpp 0.12.0 h23e226f_1001 conda-forge tini 0.18.0 h470a237_1 conda-forge tk 8.6.9 ha92aebf_0 conda-forge tktable 2.10 h14c3975_0 defaults toolz 0.9.0 py_1 conda-forge toree 0.3.0 pypi_0 pypi tornado 5.1.1 py36h470a237_0 conda-forge traitlets 4.3.2 py36_1000 conda-forge urllib3 1.24.1 py36_1000 conda-forge vincent 0.4.4 py_1 conda-forge wcwidth 0.1.7 py_1 conda-forge webencodings 0.5.1 py_1 conda-forge wheel 0.32.3 py36_0 conda-forge widgetsnbextension 3.4.2 py36_1000 conda-forge xlrd 1.2.0 py_0 conda-forge xorg-kbproto 1.0.7 h470a237_2 conda-forge xorg-libice 1.0.9 h470a237_4 conda-forge xorg-libsm 1.2.3 h8c8a85c_0 conda-forge xorg-libx11 1.6.6 h470a237_0 conda-forge xorg-libxau 1.0.8 h470a237_6 conda-forge xorg-libxdmcp 1.1.2 h470a237_7 conda-forge xorg-libxext 1.3.3 h470a237_4 conda-forge xorg-libxrender 0.9.10 h470a237_2 conda-forge xorg-renderproto 0.11.1 h470a237_2 conda-forge xorg-xextproto 7.3.0 h470a237_2 conda-forge xorg-xproto 7.0.31 h470a237_7 conda-forge xz 5.2.4 h470a237_1 conda-forge yaml 0.1.7 h470a237_1 conda-forge zeromq 4.2.5 hfc679d8_6 conda-forge zlib 1.2.11 h470a237_3 conda-forge |
So now I added
This is now the minimal Jupyter Notebook I can use on a JupyterHub. |
@prusswan as it is working now, I will give it a rest. Obviously it is some kind of bug somewhere as I did not setup something myself, it is all self-configured. |
@parente Thank you very much for your patience. I guess my case is too specific so nothing needs to be adjusted on your side. |
Further information on this can be found at: |
Just fyi, the issue I encountered is probably this one: conda-forge/openblas-feedstock#60. Not the same issue but related to CPU detection within VMs Edit: It could be the same issue, just that we get different symptoms - you were able to load numpy except that certain methods failed, while I could not load numpy at all |
Your explanation seems likely to me. |
OpenMathLib/OpenBLAS#2067 is closed and openblas 0.3.6 is online on https://anaconda.org/conda-forge/openblas - that should be solved by now. I will try it out on the corresponding server soon and leave some feedback here. |
Hi! Thanks for using the Jupyter Docker Stacks.
What docker image you are using?
jupyter/scipy-notebook
What complete docker command do you run to launch the container (omitting sensitive values)?
Have it started by an image derived and only slightly altered from
jupyterhub/jupyterhub
running version0.9.4
What steps do you take once the container is running to reproduce the issue?
Tell matplotlib to plot anything, e.g.
What actually happens?
In JupyterHub the kernel just crashes and needs to be restarted, the ipython output looks like this:
For more communication and details see jupyterhub/jupyterhub#2411
The text was updated successfully, but these errors were encountered: