python-numba/python-numba.changes

486 lines
21 KiB
Plaintext
Raw Normal View History

-------------------------------------------------------------------
Sun Jun 24 01:05:37 UTC 2018 - arun@gmx.de
- update to version 0.38.1:
This is a critical bug fix release addressing:
https://github.com/numba/numba/issues/3006
The bug does not impact users using conda packages from Anaconda or Intel Python
Distribution (but it does impact conda-forge). It does not impact users of pip
using wheels from PyPI.
This only impacts a small number of users where:
* The ICC runtime (specifically libsvml) is present in the user's environment.
* The user is using an llvmlite statically linked against a version of LLVM
that has not been patched with SVML support.
* The platform is 64-bit.
The release fixes a code generation path that could lead to the production of
incorrect results under the above situation.
Fixes:
* PR #3007: Augment SVML detection with llvmlite SVML patch
detection.
-------------------------------------------------------------------
Fri May 18 08:06:59 UTC 2018 - tchvatal@suse.com
- Fix dependencies to match reality
- Add more items to make python2 build
-------------------------------------------------------------------
Sat May 12 16:21:24 UTC 2018 - arun@gmx.de
- update to version 0.38.0:
* highlights:
+ Numba (via llvmlite) is now backed by LLVM 6.0, general
vectorization is improved as a result. A significant long
standing LLVM bug that was causing corruption was also found and
fixed.
+ Further considerable improvements in vectorization are made
available as Numba now supports Intel's short vector math
library (SVML). Try it out with `conda install -c numba
icc_rt`.
+ CUDA 8.0 is now the minimum supported CUDA version.
* Other highlights include:
+ Bug fixes to `parallel=True` have enabled more vectorization
opportunities when using the ParallelAccelerator technology.
+ Much effort has gone into improving error reporting and the
general usability of Numba. This includes highlighted error
messages and performance tips documentation. Try it out with
`conda install colorama`.
+ A number of new NumPy functions are supported, `np.convolve`,
`np.correlate` `np.reshape`, `np.transpose`, `np.permutation`,
`np.real`, `np.imag`, and `np.searchsorted` now supports
the`side` kwarg. Further, `np.argsort` now supports the `kind`
kwarg with `quicksort` and `mergesort` available.
+ The Numba extension API has gained the ability operate more
easily with functions from Cython modules through the use of
`numba.extending.get_cython_function_address` to obtain function
addresses for direct use in `ctypes.CFUNCTYPE`.
+ Numba now allows the passing of jitted functions (and containers
of jitted functions) as arguments to other jitted functions.
+ The CUDA functionality has gained support for a larger selection
of bit manipulation intrinsics, also SELP, and has had a number
of bugs fixed.
+ Initial work to support the PPC64LE platform has been added,
full support is however waiting on the LLVM 6.0.1 release as it
contains critical patches not present in 6.0.0. It is hoped
that any remaining issues will be fixed in the next release.
+ The capacity for advanced users/compiler engineers to define
their own compilation pipelines.
-------------------------------------------------------------------
Mon Apr 23 14:55:41 UTC 2018 - toddrme2178@gmail.com
- Fix dependency versions
-------------------------------------------------------------------
Fri Mar 2 23:16:36 UTC 2018 - arun@gmx.de
- specfile:
* update required llvmlite version
- update to version 0.37.0:
* Misc enhancements:
+ PR #2627: Remove hacks to make llvmlite threadsafe
+ PR #2672: Add ascontiguousarray
+ PR #2678: Add Gitter badge
+ PR #2691: Fix #2690: add intrinsic to convert array to tuple
+ PR #2703: Test runner feature: failed-first and last-failed
+ PR #2708: Patch for issue #1907
+ PR #2732: Add support for array.fill
* Misc Fixes:
+ PR #2610: Fix #2606 lowering of optional.setattr
+ PR #2650: Remove skip for win32 cosine test
+ PR #2668: Fix empty_like from readonly arrays.
+ PR #2682: Fixes 2210, remove _DisableJitWrapper
+ PR #2684: Fix #2340, generator error yielding bool
+ PR #2693: Add travis-ci testing of NumPy 1.14, and also check on
Python 2.7
+ PR #2694: Avoid type inference failure due to a typing template
rejection
+ PR #2695: Update llvmlite version dependency.
+ PR #2696: Fix tuple indexing codegeneration for empty tuple
+ PR #2698: Fix #2697 by deferring deletion in the simplify_CFG
loop.
+ PR #2701: Small fix to avoid tempfiles being created in the
current directory
+ PR #2725: Fix 2481, LLVM IR parsing error due to mutated IR
+ PR #2726: Fix #2673: incorrect fork error msg.
+ PR #2728: Alternative to #2620. Remove dead code
ByteCodeInst.get.
+ PR #2730: Add guard for test needing SciPy/BLAS
* Documentation updates:
+ PR #2670: Update communication channels
+ PR #2671: Add docs about diagnosing loop vectorizer
+ PR #2683: Add docs on const arg requirements and on const mem
alloc
+ PR #2722: Add docs on numpy support in cuda
+ PR #2724: Update doc: warning about unsupported arguments
* ParallelAccelerator enhancements/fixes:
+ Parallel support for `np.arange` and `np.linspace`, also
`np.mean`, `np.std` and `np.var` are added. This was performed
as part of a general refactor and cleanup of the core ParallelAccelerator code.
+ PR #2674: Core pa
+ PR #2704: Generate Dels after parfor sequential lowering
+ PR #2716: Handle matching directly supported functions
* CUDA enhancements:
+ PR #2665: CUDA DeviceNDArray: Support numpy tranpose API
+ PR #2681: Allow Assigning to DeviceNDArrays
+ PR #2702: Make DummyArray do High Dimensional Reshapes
+ PR #2714: Use CFFI to Reuse Code
* CUDA fixes:
+ PR #2667: Fix CUDA DeviceNDArray slicing
+ PR #2686: Fix #2663: incorrect offset when indexing cuda array.
+ PR #2687: Ensure Constructed Stream Bound
+ PR #2706: Workaround for unexpected warp divergence due to
exception raising code
+ PR #2707: Fix regression: cuda test submodules not loading
properly in runtests
+ PR #2731: Use more challenging values in slice tests.
+ PR #2720: A quick testsuite fix to not run the new cuda testcase
in the multiprocess pool
-------------------------------------------------------------------
Thu Jan 11 19:25:55 UTC 2018 - toddrme2178@gmail.com
- Bump minimum llvmlite version.
-------------------------------------------------------------------
Thu Dec 21 18:33:16 UTC 2017 - arun@gmx.de
- update to version 0.36.2:
* PR #2645: Avoid CPython bug with "exec" in older 2.7.x.
* PR #2652: Add support for CUDA 9.
-------------------------------------------------------------------
Fri Dec 8 17:59:51 UTC 2017 - arun@gmx.de
- update to version 0.36.1:
* ParallelAccelerator features:
+ PR #2457: Stencil Computations in ParallelAccelerator
+ PR #2548: Slice and range fusion, parallelizing bitarray and
slice assignment
+ PR #2516: Support general reductions in ParallelAccelerator
* ParallelAccelerator fixes:
+ PR #2540: Fix bug #2537
+ PR #2566: Fix issue #2564.
+ PR #2599: Fix nested multi-dimensional parfor type inference
issue
+ PR #2604: Fixes for stencil tests and cmath sin().
+ PR #2605: Fixes issue #2603.
* PR #2568: Update for LLVM 5
* PR #2607: Fixes abort when getting address to
"nrt_unresolved_abort"
* PR #2615: Working towards conda build 3
* Misc fixes/enhancements:
+ PR #2534: Add tuple support to np.take.
+ PR #2551: Rebranding fix
+ PR #2552: relative doc links
+ PR #2570: Fix issue #2561, handle missing successor on loop exit
+ PR #2588: Fix #2555. Disable libpython.so linking on linux
+ PR #2601: Update llvmlite version dependency.
+ PR #2608: Fix potential cache file collision
+ PR #2612: Fix NRT test failure due to increased overhead when
running in coverage
+ PR #2619: Fix dubious pthread_cond_signal not in lock
+ PR #2622: Fix `np.nanmedian` for all NaN case.
+ PR #2633: Fix markdown in CONTRIBUTING.md
+ PR #2635: Make the dependency on compilers for AOT optional.
* CUDA support fixes:
+ PR #2523: Fix invalid cuda context in memory transfer calls in
another thread
+ PR #2575: Use CPU to initialize xoroshiro states for GPU
RNG. Fixes #2573
+ PR #2581: Fix cuda gufunc mishandling of scalar arg as array and
out argument
-------------------------------------------------------------------
Tue Oct 3 06:05:20 UTC 2017 - arun@gmx.de
- update to version 0.35.0:
* ParallelAccelerator:
+ PR #2400: Array comprehension
+ PR #2405: Support printing Numpy arrays
+ PR #2438: from Support more np.random functions in
ParallelAccelerator
+ PR #2482: Support for sum with axis in nopython mode.
+ PR #2487: Adding developer documentation for ParallelAccelerator
technology.
+ PR #2492: Core PA refactor adds assertions for broadcast
semantics
* ParallelAccelerator fixes:
+ PR #2478: Rename cfg before parfor translation (#2477)
+ PR #2479: Fix broken array comprehension tests on unsupported
platforms
+ PR #2484: Fix array comprehension test on win64
+ PR #2506: Fix for 32-bit machines.
* Additional features of note:
+ PR #2490: Implement np.take and ndarray.take
+ PR #2493: Display a warning if parallel=True is set but not
possible.
+ PR #2513: Add np.MachAr, np.finfo, np.iinfo
+ PR #2515: Allow environ overriding of cpu target and cpu
features.
* Misc fixes/enhancements:
+ PR #2455: add contextual information to runtime errors
+ PR #2470: Fixes #2458, poor performance in np.median
+ PR #2471: Ensure LLVM threadsafety in {g,}ufunc building.
+ PR #2494: Update doc theme
+ PR #2503: Remove hacky code added in 2482 and feature
enhancement
+ PR #2505: Serialise env mutation tests during multithreaded
testing.
+ PR #2520: Fix failing cpu-target override tests
* CUDA support fixes:
+ PR #2504: Enable CUDA toolkit version testing
+ PR #2509: Disable tests generating code unavailable in lower CC
versions.
+ PR #2511: Fix Windows 64 bit CUDA tests.
- changes from version 0.34.0:
* ParallelAccelerator features:
+ PR #2318: Transfer ParallelAccelerator technology to Numba
+ PR #2379: ParallelAccelerator Core Improvements
+ PR #2367: Add support for len(range(...))
+ PR #2369: List comprehension
+ PR #2391: Explicit Parallel Loop Support (prange)
* CUDA support enhancements:
+ PR #2377: New GPU reduction algorithm
* CUDA support fixes:
+ PR #2397: Fix #2393, always set alignment of cuda static memory
regions
* Misc Fixes:
+ PR #2373, Issue #2372: 32-bit compatibility fix for parfor
related code
+ PR #2376: Fix #2375 missing stdint.h for py2.7 vc9
+ PR #2378: Fix deadlock in parallel gufunc when kernel acquires
the GIL.
+ PR #2382: Forbid unsafe casting in bitwise operation
+ PR #2385: docs: fix Sphinx errors
+ PR #2396: Use 64-bit RHS operand for shift
+ PR #2404: Fix threadsafety logic issue in ufunc compilation
cache.
+ PR #2424: Ensure consistent iteration order of blocks for type
inference.
+ PR #2425: Guard code to prevent the use of parallel on win32 +
py27
+ PR #2426: Basic test for Enum member type recovery.
+ PR #2433: Fix up the parfors tests with respect to windows py2.7
+ PR #2442: Skip tests that need BLAS/LAPACK if scipy is not
available.
+ PR #2444: Add test for invalid array setitem
+ PR #2449: Make the runtime initialiser threadsafe
+ PR #2452: Skip CFG test on 64bit windows
* Misc Enhancements:
+ PR #2366: Improvements to IR utils
+ PR #2388: Update README.rst to indicate the proper version of
LLVM
+ PR #2394: Upgrade to llvmlite 0.19.*
+ PR #2395: Update llvmlite version to 0.19
+ PR #2406: Expose environment object to ufuncs
+ PR #2407: Expose environment object to target-context inside
lowerer
+ PR #2413: Add flags to pass through to conda build for buildbot
+ PR #2414: Add cross compile flags to local recipe
+ PR #2415: A few cleanups for rewrites
+ PR #2418: Add getitem support for Enum classes
+ PR #2419: Add support for returning enums in vectorize
+ PR #2421: Add copyright notice for Intel contributed files.
+ PR #2422: Patch code base to work with np 1.13 release
+ PR #2448: Adds in warning message when using parallel if
cache=True
+ PR #2450: Add test for keyword arg on .sum-like and .cumsum-like
array methods
- changes from version 0.33.0:
* There are also several enhancements to the CUDA GPU support:
+ A GPU random number generator based on xoroshiro128+ algorithm
is added. See details and examples in documentation.
+ @cuda.jit CUDA kernels can now call @jit and @njit CPU functions
and they will automatically be compiled as CUDA device
functions.
+ CUDA IPC memory API is exposed for sharing memory between
proceses. See usage details in documentation.
* Reference counting enhancements:
+ PR #2346, Issue #2345, #2248: Add extra refcount pruning after
inlining
+ PR #2349: Fix refct pruning not removing refct op with tail
call.
+ PR #2352, Issue #2350: Add refcount pruning pass for function
that does not need refcount
* CUDA support enhancements:
+ PR #2023: Supports CUDA IPC for device array
+ PR #2343, Issue #2335: Allow CPU jit decorated function to be
used as cuda device function
+ PR #2347: Add random number generator support for CUDA device
code
+ PR #2361: Update autotune table for CC: 5.3, 6.0, 6.1, 6.2
* Misc fixes:
+ PR #2362: Avoid test failure due to typing to int32 on 32-bit
platforms
+ PR #2359: Fixed nogil example that threw a TypeError when
executed.
+ PR #2357, Issue #2356: Fix fragile test that depends on how the
script is executed.
+ PR #2355: Fix cpu dispatcher referenced as attribute of another
module
+ PR #2354: Fixes an issue with caching when function needs NRT
and refcount pruning
+ PR #2342, Issue #2339: Add warnings to inspection when it is
used on unserialized cached code
+ PR #2329, Issue #2250: Better handling of missing op codes
* Misc enhancements:
+ PR #2360: Adds missing values in error mesasge interp.
+ PR #2353: Handle when get_host_cpu_features() raises
RuntimeError
+ PR #2351: Enable SVML for erf/erfc/gamma/lgamma/log2
+ PR #2344: Expose error_model setting in jit decorator
+ PR #2337: Align blocking terminate support for fork() with new
TBB version
+ PR #2336: Bump llvmlite version to 0.18
+ PR #2330: Core changes in PR #2318
-------------------------------------------------------------------
Wed May 3 18:23:09 UTC 2017 - toddrme2178@gmail.com
- update to version 0.32.0:
+ Improvements:
* PR #2322: Suppress test error due to unknown but consistent error with tgamma
* PR #2320: Update llvmlite dependency to 0.17
* PR #2308: Add details to error message on why cuda support is disabled.
* PR #2302: Add os x to travis
* PR #2294: Disable remove_module on MCJIT due to memory leak inside LLVM
* PR #2291: Split parallel tests and recycle workers to tame memory usage
* PR #2253: Remove the pointer-stuffing hack for storing meminfos in lists
+ Fixes:
* PR #2331: Fix a bug in the GPU array indexing
* PR #2326: Fix #2321 docs referring to non-existing function.
* PR #2316: Fixing more race-condition problems
* PR #2315: Fix #2314. Relax strict type check to allow optional type.
* PR #2310: Fix race condition due to concurrent compilation and cache loading
* PR #2304: Fix intrinsic 1st arg not a typing.Context as stated by the docs.
* PR #2287: Fix int64 atomic min-max
* PR #2286: Fix #2285 `@overload_method` not linking dependent libs
* PR #2303: Missing import statements to interval-example.rst
- Implement single-spec version
-------------------------------------------------------------------
Wed Feb 22 22:15:53 UTC 2017 - arun@gmx.de
- update to version 0.31.0:
* Improvements:
+ PR #2281: Update for numpy1.12
+ PR #2278: Add CUDA atomic.{max, min, compare_and_swap}
+ PR #2277: Add about section to conda recipies to identify
license and other metadata in Anaconda Cloud
+ PR #2271: Adopt itanium C++-style mangling for CPU and CUDA
targets
+ PR #2267: Add fastmath flags
+ PR #2261: Support dtype.type
+ PR #2249: Changes for llvm3.9
+ PR #2234: Bump llvmlite requirement to 0.16 and add
install_name_tool_fixer to mviewbuf for OS X
+ PR #2230: Add python3.6 to TravisCi
+ PR #2227: Enable caching for gufunc wrapper
+ PR #2170: Add debugging support
+ PR #2037: inspect_cfg() for easier visualization of the function
operation
* Fixes:
+ PR #2274: Fix nvvm ir patch in mishandling “load”
+ PR #2272: Fix breakage to cuda7.5
+ PR #2269: Fix caching of copy_strides kernel in cuda.reduce
+ PR #2265: Fix #2263: error when linking two modules with dynamic
globals
+ PR #2252: Fix path separator in test
+ PR #2246: Fix overuse of memory in some system with fork
+ PR #2241: Fix #2240: __module__ in dynamically created function
not a str
+ PR #2239: Fix fingerprint computation failure preventing
fallback
-------------------------------------------------------------------
Sun Jan 15 00:33:08 UTC 2017 - arun@gmx.de
- update to version 0.30.1:
* Fixes:
+ PR #2232: Fix name clashes with _Py_hashtable_xxx in Python 3.6.
* Improvements:
+ PR #2217: Add Intel TBB threadpool implementation for parallel
ufunc.
-------------------------------------------------------------------
Tue Jan 10 17:17:33 UTC 2017 - arun@gmx.de
- specfile:
* update copyright year
- update to version 0.30.0:
* Improvements:
+ PR #2209: Support Python 3.6.
+ PR #2175: Support np.trace(), np.outer() and np.kron().
+ PR #2197: Support np.nanprod().
+ PR #2190: Support caching for ufunc.
+ PR #2186: Add system reporting tool.
* Fixes:
+ PR #2214, Issue #2212: Fix memory error with ndenumerate and
flat iterators.
+ PR #2206, Issue #2163: Fix zip() consuming extra elements in
early exhaustion.
+ PR #2185, Issue #2159, #2169: Fix rewrite pass affecting objmode
fallback.
+ PR #2204, Issue #2178: Fix annotation for liftedloop.
+ PR #2203: Fix Appveyor segfault with Python 3.5.
+ PR #2202, Issue #2198: Fix target context not initialized when
loading from ufunc cache.
+ PR #2172, Issue #2171: Fix optional type unpacking.
+ PR #2189, Issue #2188: Disable freezing of big (>1MB) global
arrays.
+ PR #2180, Issue #2179: Fix invalid variable version in
looplifting.
+ PR #2156, Issue #2155: Fix divmod, floordiv segfault on CUDA.
-------------------------------------------------------------------
Fri Dec 2 21:07:51 UTC 2016 - jengelh@inai.de
- remove subjective words from description
-------------------------------------------------------------------
Sat Nov 5 17:53:40 UTC 2016 - arun@gmx.de
- update to version 0.29.0:
* Improvements:
+ PR #2130, #2137: Add type-inferred recursion with docs and
examples.
+ PR #2134: Add np.linalg.matrix_power.
+ PR #2125: Add np.roots.
+ PR #2129: Add np.linalg.{eigvals,eigh,eigvalsh}.
+ PR #2126: Add array-to-array broadcasting.
+ PR #2069: Add hstack and related functions.
+ PR #2128: Allow for vectorizing a jitted function. (thanks to
@dhirschfeld)
+ PR #2117: Update examples and make them test-able.
+ PR #2127: Refactor interpreter class and its results.
* Fixes:
+ PR #2149: Workaround MSVC9.0 SP1 fmod bug kb982107.
+ PR #2145, Issue #2009: Fixes kwargs for jitclass __init__
method.
+ PR #2150: Fix slowdown in objmode fallback.
+ PR #2050, Issue #1258: Fix liveness problem with some generator
loops.
+ PR #2072, Issue #1995: Right shift of unsigned LHS should be
logical.
+ PR #2115, Issue #1466: Fix inspect_types() error due to mangled
variable name.
+ PR #2119, Issue #2118: Fix array type created from record-dtype.
+ PR #2122, Issue #1808: Fix returning a generator due to
datamodel error.
-------------------------------------------------------------------
Fri Sep 23 23:38:02 UTC 2016 - toddrme2178@gmail.com
- Initial version