Skip to content
Stan Seibert edited this page Sep 4, 2018 · 1 revision

Numba Meeting: 2018-08-30

Attendees: Todd, Ehsan, Siu, Stuart

0. Feature Discussion

  • What to do about #3195?

    • "Problems with support_literals and the Const type"
    • Problems:
      • Lowering backend mishandle Const type
        • likely caused other arguments that are not expecting a Const
      • Blocking:
        • np.dtype(str) and other str usage
    • Suggested Solution:
      1. autoconversion of Const into bare Type
        • Siu: try this by next meeting
      2. support_literals for particular argument by name or position
      3. QualType or metadata; remove Const type
  • Status and plans for threading backend work

    • Status:
      • current threading pool not threadsafe
      • replaced with parallel_for loop
      • 2 backends: TBB & OMP
      • merged+refactored gufunc and ufunc
      • Backend picking; i.e. fork-safe backend, ...
    • Problems:
      • fork+exec issues. {fork, thread}-safety different on every platform; incl python vers (esp. 2.7) and OS vers.
      • linux is most problematic, surprisingly
    • Suggestions:
      • blacklist parallel support on certain platforms
    • Moving forward:
      • Is there a backend that is better than the current one?
        • Ans: There's one
      • TBB won't be default or strict dependency yet.
    • Bumping release later by a week to give more time to get threading backend stabilized
  • Parallel Accelerator to graduate from being experimental?

    • Change doc to indicate PA is no longer experimental.
    • But, it is still not on by default, yet.

1. New issues

  • #3279 - test_fuse_argmin unexpected IR in lowering

    • Sporadic failure. Likely ordering of test is causing it.
    • Blocker.
  • #3277 - autojit crashed unexpectedly

    • Unsupported. Old versions.
  • #3271 - "Numba requires at least version 0.25.0 of llvmlite." (current is 0.24)

    • Pending user response.
  • #3267 - Automatic detection of changes to globals at call time to trigger recompilation

    • feature request.
    • nothing to do yet
  • #3265 - Unexpected results I am getting. BUG in the CUDA Simulator.

    • "bug" is Numba behavior regarding freezing globals in CUDA code vs. direct access to globals in normal Python
  • #3263 - Document known memory leak associated with exceptions

  • #3262 - Memory leak when exception occurs in np.linalg.svd bug duplicate

2. Open PRs

New

  • 3281 - Fix ds_permute types and add tests
  • 3279 -compiler threadsafety lockdown
  • 3274 -[WIP] Update installation instructions
    • WIP because instructions assume ARMv7 packages in Numba channel
    • Otherwise ready for review
  • 3273 -Refactor. Removing thread-local-storage based context nesting.
  • 3272 - Add MemInfo_data to runtime._nrt_python.c_helpers
  • 3259 - Add DeviceNDArray.view method to reinterpret data as a different type.
    • New tests need to skip CUDA simulator because they assume device array methods

Old

  • 3234 - Fix types and layout for np.where.
    • Siu will review
  • 3228 - Reduce redundant module linking
    • Stuart will review
  • 3212 - Support for np.vander
    • Stuart will review
  • 3211 - Handle unpacking in building tuple (BUILD_TUPLE_UNPACK opcode)
    • Reviewed
    • Need to verify Mac works
    • Siu will merge
  • 3209 - Support for np.tri, np.tril and np.triu
    • blocked on #3234
    • author on vacation
  • 3202 - [WIP] TBB + backend refactor... DO NOT MERGE!
    • Currently chasing different bugs on different platforms
  • 3186 Support Records in CUDA Const Memory
    • Stan needs to get back to user with PTX on failing systems
  • 3172 Use float64 add Atomics, Where Available
    • needs re-review by Siu
  • 3166 [WIP] Objmode with-block
    • Status?
  • 3162 Support constant dtype string in nopython mode in functions like numpy.empty.
    • Need to resolve #3195
  • 3160 First attempt at parallel diagnostics
    • Stuart will implement Todd's suggestion
  • 3142 Issue3139
    • Blocked on 3127
  • 3134 [WIP] Cfunc x86 abi
    • Needs re-review
  • 3124 Fix 3119, raise for 0d arrays in reductions
    • Stuart needs to implement feedback
  • 3093 [WIP] Singledispatch overload support for cuda array interface.
    • Needs review
  • 3046 Pairwise sum implementation.
  • #2999 Support LowLevelCallable
  • #2983 [WIP] invert mapping b/w binop operators and the operator module
  • #2950 Fix dispatcher to only consider contiguous-ness.
  • #2942 Fix linkage nature (declspec(dllexport)) of some test functions
  • #2894: [WIP] Implement jitclass default constructor arguments.
  • #2817: [WIP] Emit LLVM optimization remarks

===========================

4. Next Release: Version 0.40, RC=Sept 10, 2018, Final=Sept 17, 2018

  • Experimental python mode blocks
  • Refactored threadpool interface
  • AMD GPU backend
  • Parallel diagnostics
  • Usual collection of bug fixes
Clone this wiki locally