Skip to content
Valentin Haenel edited this page Dec 15, 2020 · 1 revision

Numba Meeting: 2020-12-15

Attendees: Siu, Dale, Michael, Stuart, Todd, Val, Ehsan, Guilherme, Hameer

0. Feature Discussion/admin

  • Last meeting of the year!
  • Open meetings
    • Jan 5th 2021 first open meeting
    • Zoom
    • More on weekyl themes/topics later
  • Python 3.9 update
  • Python 3.6 EOL (security support stops in Dec 2021).
    • maybe follow numpy's plan
    • needs announce if we are dropping py version. earliest to drop is Numba-0.54
  • Expose LLVM optimisation levels
    • 0.52 fixed optimization satbility issue. Details: a function optimizes differently depending on whether it is inlined into the cpython wrapper or not.
    • Because of that, some code has a different performance characteristic because the optimization pipeline changed.
    • How to?
      • Per-decorator changes are likely to be asking for trouble
      • Global switches will be easier
    • Dicussions:
      • Per-decorator opt-level allows for manual fine-tuning; i.e. a lot of functions are plumbing and few are numeric.
      • Per-decorator option will allow for opt-out from expensive passes.
      • might need a "hint" module to help marking code.
      • few projects need to opt for size; but there projects deploying to phones as well.

1. New Issues

  • #6576 - Unexpected "divide by zero" warning with numba.vectorize and np.log
    • LLVM opt
  • #6572 - Add Zenodo badge
    • Not sure about benefit and value
    • Is the maintenance burden satisfieable
    • Ask on Discourse?
    • Pandas and Numpy already doing this
  • #6571 - All Numba internal registrations should happen before extensions are run.
    • This will become a discussion
  • **** #6570 - Dicts with tuple keys not working in 0.52.0
    • Casting?
    • Code maybe illegal, typecast reckons it is safe, but probably it isn't as the values/types are being used for lookup
  • #6569 - numba.core import issues
    • problem installing numba w/o internet access or can't use prebuilt binaries
  • #6564 - Inconsistant result between numba and py_func
    • Age old request for pairwise sum
  • #6563 - CUDA: Add support for passing tuples to kernels via vectorize
    • Can be a feature request
  • #6561 - Cuda runtime errors when starting up numba
    • ISA mismatch on PTX, installation probbably broken
  • #6559 - Migrating to LLVM 11 (on 64bit RISC-V)
  • #6558 - Wheel support for linux aarch64[arm64]
    • There are containers now, so we can do this now
  • #6557 - Separate the LLVM code correction in nvvm.py into a separate function
    • PR to implement this exists already, see below
  • #6556 - Error in compiled function using CFFI to call BLAS
    • Things being free'd too early
    • Might have a good solution, adding increfs
    • Maybe try moving decref to the end of basic blocks in Numba IR

Closed Issues

  • #6568 - Why are arrays slower in parallel?
  • #6566 - Does Numba have Cooperative Groups?
  • #6565 - Incorrect compilation

2. New PRs

  • #6575 - Avoid temp variable assignments
    • *** Maybe an optimization pass
    • pending on 3.9
  • #6574 - Run parfor fusion if 2 or more parfors
    • Is fine, just needs a small fix
  • #6573 - Improve __str__ for typed.List when invoked from IPython shell
    • Maybe needs some more work to determine if this is the correct way to do this
    • Why flake8 not failing?
  • #6567 - Refactor llvm replacement code into separate function
  • #6560 - Add LLVM pass timer

Closed PRs

  • #6562 - Correcting typo in numba sysinfo output
Clone this wiki locally