Minutes_2024_07_02 - numba/numba GitHub Wiki

Numba Meeting: 2024-07-02

Attendees: Siu Kwan Lam, Da Li, Todd Anderson, Guilherme, stuart, Emergency Self-Construct FPOC (last week): Graham FPOC (incoming): Siu

NOTE: All communication is subject to the Numba Code of Conduct.

Please refer to this calendar for the next meeting date.

0. Discussion

  • RTM? https://github.com/numba/llvmlite/pull/1046

  • Partial type inference for dead branch pruning. Related to literal config:

    if config.enable_something:
        do_extra_work
    else 
        a = numba.list()
        if config.track_number:
            a.append(1)
        else:
            a.append('other value of different type')
    
    • TODO: LiteralPropagationSubPipelinePass requires a getattr or isinstance to work. So maybe we can hack in one of those to test if the pass already works.
  • Stuart: Summary of PIXIE status:

    • context:
    • repo: https://github.com/numba/pixie
    • What's working:
      • ISA dispatcher; e.g. detect & dispatch base on cpu features (SSE, AVX)
      • DSO with inlineable LLVM bitcode (works with Numba to inline AOT code into JIT code)
    • Upcoming Scipy talk: https://cfp.scipy.org/2024/speaker/NNCGZA/
    • Will be interesting to compile typed containers with it
      • Should elide overhead of not being able to see through pointers and get better performance
      • Will also enable "Portable NRT" that can be used / distributed outside of Numba
    • Post-SciPy demo to follow in a future meeting
    • System programming with LLVM builders now easier
      • e.g. can call snprintf() from builder code through "C Layer" (note: is that name correct?)
    • Dispatch on page size possible!
      • Could make an interesting experiment towards getting the best out of the memory hierarchy

New "Ready for Review" PRs

1. New Issues

  • numba#9632 - Tuples and inline = 'always' don't play together
  • numba#9633 - sign with complex values does not match numpy 2.0
  • numba#9634 - AttributeError: 'Integer' object has no attribute 'literal_value' #115
  • numba#9635 - Can Numba use c++functions?
  • numba#9637 - objects from the jitclass lose dynamic features about the class attributions
  • llvmlite#1065 - macOS CI needs updating: macOS builds browning out

Closed Issues

  • numba#9638 - unchecked out of bound when enable jit

2. New PRs

  • numba#9630 - Allow numba functions within zip files to be cached
  • numba#9636 - Fix #8975: Exception raised when calling np.random.uniform with size being an empty tuple
  • llvmlite#1064 - Add support for opaque pointers
  • llvmlite#1067 - [WIP] Use LLVM 15 by default

Closed PRs

(last numba: 9638; llvmlite 1067)

3. Short-term Roadmap

2024-gantt: https://github.com/numba/numba/issues/9540