Skip to content
Stan Seibert edited this page Feb 15, 2018 · 1 revision

Numba Meeting: 2018-02-15

Attendees: Stan, Siu, Stuart, Ehsan, Todd, Stefan, Oscar

0. 0.37 Final Release

  • Any showstoppers? No.
  • Tag and build today? Yes

1. New/outstanding issues

New:

  • numba#2736: Using numpy functions in @guvectorize-d block
    • Add to FAQ
  • numba#2742: Support ndarray.fill under parfors
    • feature request
    • Stuart will try this to see how easy it is
    • Is there a way to streamline these ndarray methods with no equivalent numpy module function?
  • numba#2743: Create better error message for testing POST failure
    • This confuses contributors when they add an invalid test
  • numba#2745: Support axes argument in transpose
    • feature request
    • New contributor is working on this right now
  • numba#2747: Wrong indexing of numpy arrays while using multiprocessing
    • needtriage
  • numba#2749: Using optional type as parameter to jitted function is troublesome
    • enhancement
    • not just jitclass limitation: general issue with autodetecting optional types
    • not easy to fix
  • numba#2750: Support np.random.permutation
    • feature request
    • also may be possibly done by #2745 contributor
  • numba#2751: Support for Numpy.ufunc.reduce
    • feature request
    • currently rely on NumPy to implement reduce, so can't call from nopython mode
  • numba#2752: 2+D indexing with arrays or list not supported
    • feature request
    • fancy indexing in ndarray not fully supported
    • not too hard to implement
  • numba#2753: Casting to int inside loop yields numpy array indexing error
    • Related to numba#2719 (variable scoping)
    • requires a more deep refactoring of Numba IR
  • numba#2754: Support generated_jit for cuda target
    • feature request
    • not hard

Outstanding:

  • numba#2723: Plan for Python 2.7 Deprecation
    • Dec 2018: Last Python 2.7 release, make python27 branch
    • Jan 2019: Drop all Python 2.7 support from master, do another release
    • Jan-Dec 2019: only backport critical bug fixes to python27 branch
    • Jan 2020: Python 2.7 support ends
    • So far only feedback has been 👍
    • If no other changes, should we put statement into Numba 0.38 docs?
      • Yes. Stan will open PR.
    • http://python3statement.org/

3. Open PRs

  • numba#2660: Support bools from cffi in nopython
    • Very close
    • What size are bools on windows?
  • numba#2734: More Constants From cuda.h
    • Ready to go
  • numba#2727: Changes to enable vectorization in ParallelAccelerator
    • In review now
    • Stuart adding more tests
  • numba#2737: Fix #2007 (part 1). Empty array handling in np.linalg.
    • NumPy behavior is inconsistent release to release
    • Current behavior in NumPy is "mostly correct"
    • We will aim for NumPy 1.14 behavior for now
  • numba#2739: Explicitly state default value of error_model in docstring
    • Looks good
  • numba#2740: Fix 2208. Generate better error message
    • Ready to merge when dev cycle opens
  • numba#2741: Enhance error message for undefined variables
    • Ready to merge
  • numba#2744: Add diagnostic error message to test suite discovery failure
    • Addresses issue 2743
    • Ready to merge
  • numba#2748: Added Intel SVML optimizations as opt-out choice working by default
    • Reviewing now, need to test further
    • Will need to refactor and add libsvml detection
    • Can we also enable similar functionality with Apple Accelerate?
    • what is enabled fastmath
  • WIP: np.correlate, np.convolve

4. Feature Discussion

  • Gufunc rewrite:
  • Pending Python 3.7 breakage:
    • New LOAD_METHOD / CALL_METHOD bytecodes
    • Python 3.7 release schedule:
      • Currently on 3.7.0 beta 1
      • Release candidate 1: 2018-05-21
      • Final: 2018-06-15
    • Add support in 0.39?
  • Community:
    • Wikipedia page
    • CI badges for travis/appveyor/codecov etc
    • Bug report template
    • New docs:
      • "Cool stuff" page
      • Explain our DSO infrastructure especially with respect to LLVM
      • "how @jit works" page, high level with pictures etc
    • numba annotation tool needs updating, demonstrating and advertising cf. cython's tool (jupyter integration?)
    • exception handling, catch all and rewrite with links to explanatory pages
    • should we do a llc, IR -> C tool
  • Lowering extensions:
    • How do we get data out of them and back up the stack
    • How do we get more information to them, closures ?

5. Next Release: Version 0.38, RC=April 4, 2018, Final=April 11, 2018

  • First gufunc improvements
  • Better SIMD generation (SVML + parfor fixes)
  • LLVM 6.0
  • Better debug/troubleshooting tools
  • Keep working through backlog of bugs and minor feature requests
Clone this wiki locally