Your message dated Tue, 17 Mar 2020 23:29:28 -0700
with message-id <dc7a01d58117121f9b267f4fcdadf98f4f10541b.ca...@ghic.org>
and subject line python3-numba: numba segfaults when run with python 3.7.4 at 
numba/_dynfunc.c:52
has caused the Debian Bug report #936076,
regarding python3-numba: numba segfaults when run with python 3.7.4 at 
numba/_dynfunc.c:52
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
936076: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=936076
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: python3-numba
Version: 0.42.0-1
Severity: grave
Tags: upstream
Justification: renders package unusable

Dear Maintainer,

Attempting to run any numba code immediately segfaults when running with python
3.7.4.

I found this upstream bug report.
https://github.com/numba/numba/pull/4328

"CPython 3.7.3->3.7.4 changed the size of PyGC_Head, the macro
_PyObject_GC_UNTRACK relied on calling sizeof() on that struct, as it is a
macro it got baked in at compile time and then segfaults happen across the
point version change as the struct size changed."

The simplist solution is to rebuild with python 3.7.4... though then it'll
crash with earlier versions.

Diane



-- System Information:
Debian Release: bullseye/sid
  APT prefers testing-debug
  APT policy: (500, 'testing-debug'), (500, 'oldstable-debug'), (500, 
'testing'), (500, 'stable'), (110, 'unstable'), (100, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.2.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages python3-numba depends on:
ii  libc6                               2.28-10
ii  libgcc1                             1:9.2.1-4
ii  libgomp1                            9.2.1-4
ii  libstdc++6                          9.2.1-4
ii  libtbb2                             2019~U8-1
ii  python3                             3.7.3-1
ii  python3-llvmlite                    0.27.0-2
ii  python3-numpy [python3-numpy-abi9]  1:1.16.2-1+b1

Versions of packages python3-numba recommends:
ii  numba-doc  0.42.0-1

Versions of packages python3-numba suggests:
pn  nvidia-cuda-toolkit  <none>

-- no debconf information

--- End Message ---
--- Begin Message ---
Package: python3-numba
Version: 0.48.0-1
thanks

Using the released version 0.48.0-1 I was able to run numba without it
segfaulting.

See below for example run.


Package: python3-numba
Status: install ok installed
Priority: optional
Section: python
Installed-Size: 9350
Maintainer: Debian Science Maintainers <
debian-science-maintain...@lists.alioth.debian.org>
Architecture: amd64
Source: numba
Version: 0.48.0-1
Depends: python3 (<< 3.9), python3 (>= 3.7~), python3-llvmlite (>=
0.27.0~), python3-numpy (>= 1:1.16.0~rc1), python3-numpy-abi9, python3-
pkg-resources, python3:any, libc6 (>= 2.29), libgcc-s1 (>= 3.0),
libgomp1 (>= 4.9), libstdc++6 (>= 5), libtbb2 (>= 2017~U7)
Recommends: numba-doc
Suggests: nvidia-cuda-toolkit
Description: native machine code compiler for Python 3
 Numba compiles native machine code instructions from Python programs
at
 runtime using the LLVM compiler infrastructure. It could be easily
employed
 by decorating individual computation intensive functions in the Python
code.
 Numba could significantly speed up the performance of computations,
and
 optionally supports compilation to run on GPU processors through
Nvidia's
 CUDA platform.
 It integrates well with the Python scientific software stack, and
 especially recognizes Numpy arrays.
 .
 This package contains the modules for Python 3.
Homepage: http://numba.pydata.org/
~/proj$ python3
Python 3.8.2 (default, Feb 25 2020, 13:04:52)
[GCC 9.2.1 20200220] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numba
>>> from numba import jit
>>> import numpy as np
>>>
>>> x = np.arange(100).reshape(10, 10)
>>>
>>> @jit(nopython=True) # Set "nopython" mode for best performance,
equivalent to @njit
... def go_fast(a): # Function is compiled to machine code when called
the first time
...     trace = 0
...     for i in range(a.shape[0]):   # Numba likes loops
...         trace += np.tanh(a[i, i]) # Numba likes NumPy functions
...     return a + trace              # Numba likes NumPy broadcasting
...
>>> print(go_fast(x))
[[  9.  10.  11.  12.  13.  14.  15.  16.  17.  18.]
 [ 19.  20.  21.  22.  23.  24.  25.  26.  27.  28.]
 [ 29.  30.  31.  32.  33.  34.  35.  36.  37.  38.]
 [ 39.  40.  41.  42.  43.  44.  45.  46.  47.  48.]
 [ 49.  50.  51.  52.  53.  54.  55.  56.  57.  58.]
 [ 59.  60.  61.  62.  63.  64.  65.  66.  67.  68.]
 [ 69.  70.  71.  72.  73.  74.  75.  76.  77.  78.]
 [ 79.  80.  81.  82.  83.  84.  85.  86.  87.  88.]
 [ 89.  90.  91.  92.  93.  94.  95.  96.  97.  98.]
 [ 99. 100. 101. 102. 103. 104. 105. 106. 107. 108.]]
>>>

--- End Message ---

Reply via email to