kylemcdonald / LightLeaks

An immersive installation built from a pile of mirror balls and a few projectors.
Other
93 stars 14 forks source link

check numba warnings in processScansCommand #40

Open kylemcdonald opened 3 years ago

kylemcdonald commented 3 years ago

there is some evidence that the processScansCommand might be running slower than it should:

/home/jovyan/Lightleaks/src/processScansCommand.py:214: NumbaWarning: 
Compilation is falling back to object mode WITH looplifting enabled because Function "build_pro_map" failed type inference due to: Untyped global name 'add_channel': cannot determine Numba type of <class 'function'>

File "Lightleaks/src/processScansCommand.py", line 232:
def build_pro_map(packed_vertical, packed_horizontal, confidence, w, h):
    <source elided>
                pro_confidence[idx[0], idx[1]] = pconf
    return (add_channel(pro_map), pro_confidence)
    ^

  @jit('uint16(uint16[:], uint16[:], uint16[:], int64, int64)')
/home/jovyan/Lightleaks/src/processScansCommand.py:214: NumbaWarning: 
Compilation is falling back to object mode WITHOUT looplifting enabled because Function "build_pro_map" failed type inference due to: cannot determine Numba type of <class 'numba.core.dispatcher.LiftedLoop'>

File "Lightleaks/src/processScansCommand.py", line 223:
def build_pro_map(packed_vertical, packed_horizontal, confidence, w, h):
    <source elided>

    for i in range(cam_map.shape[0]):
    ^

  @jit('uint16(uint16[:], uint16[:], uint16[:], int64, int64)')
/opt/conda/lib/python3.8/site-packages/numba/core/object_mode_passes.py:177: NumbaWarning: Function "build_pro_map" was compiled in object mode without forceobj=True, but has lifted loops.

File "Lightleaks/src/processScansCommand.py", line 216:
def build_pro_map(packed_vertical, packed_horizontal, confidence, w, h):
    packed_vertical = np.minimum(packed_vertical, w-1)
    ^

  warnings.warn(errors.NumbaWarning(warn_msg,
/opt/conda/lib/python3.8/site-packages/numba/core/object_mode_passes.py:187: NumbaDeprecationWarning: 
Fall-back from the nopython compilation path to the object mode compilation path has been detected, this is deprecated behaviour.

For more information visit https://numba.pydata.org/numba-doc/latest/reference/deprecation.html#deprecation-of-object-mode-fall-back-behaviour-when-using-jit

File "Lightleaks/src/processScansCommand.py", line 216:
def build_pro_map(packed_vertical, packed_horizontal, confidence, w, h):
    packed_vertical = np.minimum(packed_vertical, w-1)
    ^

  warnings.warn(errors.NumbaDeprecationWarning(msg,