-
Notifications
You must be signed in to change notification settings - Fork 33
Feature/support numba057 #1030
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/support numba057 #1030
Conversation
|
parfor is broken due to the |
Fixed the monkey patches. However, something has changes in the typing and dpnp.ndarray is getting inferred as a |
|
Switching dpex to use Numba's default Also, debugging no longer uses dpex's DIBuilder. Need to evaluate. |
c05c817 to
e76feca
Compare
- Moves the Numba monkey patches out of _patches.py
and into separate modules in a new numba_patches sub-modules.
- Uses the refactored monkey patches modules
- Import only __version__ fron numba instead of
import whole of numba
- Fixes an issue where the Vectorize registry was getting
updated inside the dpctl libsyclinterface load function.
- Removes the in-tree copy of the parfor module with the Numba 0.57
version of the module.
- Updates imports to reflect the change in parfor module.
- Removes deprecated lowerer module.
- Replaces the dpex-speciic lowering pass with the upstream
NativeParforLowerer in the dpjit_pipeline. Our own lowering pass
is now removed.
0bf1547 to
ac67cd2
Compare
- Moves all parfor codegen files into core.parfors.
- Renames parfor_lowering_pass to parfor_lowerer as the module
no longer has a pass.
- Updates to imports
- Previously, all dpnp ufuncs were added to
numba.np.npyimpl.registry. A new registry has been added to
dpnp_iface.dpnpimpl and now the dpnp ufuncs are added to that
registry.
- The DpexKernelTarget has been updated to now load the functions
in the dpnpimpl.registry.
- Swapping of ufuncs to use OpenCL intrinsics inside DpexKernelTarget
now happens only for specific dpnp math functions. As a side effect,
numpy math functions are no longer supported inside a kernel.
ac67cd2 to
04700b1
Compare
|
Documentation preview: show. |
|
@ZzEeKkAa once you test out the docker image we are good to go. The Coverage workflow is failing temporarily due to some issues at coveralls.io's end. |
The coveralls.io glitch is gone and removing parfors gives us a 15% coverage boost! |
|
Documentation preview removed. |
Feature/support numba057 6aca7c3
Updates numba-dpex to be compatible with numba 0.57. Summary of changes:
The in-tree copies of
parformodule has been removed and numba-dpex now uses the upstreamparformodule and passes.The numba-dpex lowering pass has been removed and parfor lowerer has been updated to handle both lowering when Numba's
sroa-like optimization is enabled or disabled.The Numba monkey patches were refactored and split out of the
_patchesmodule and moved into a newnumba_pathcessub-modules.The deprecated
lowerermodule has been removed.The
NUMBA_DPEX_FALLBACK_ON_CPUconfig is removed as there is no fallback to CPU for parfor nodes generated for dpnp array expressions.All the parfor lowering modules are now organized into a
numba_dpex.core.parforsmodule.Have you added a test, reproducer or referred to an issue with a reproducer?
Have you tested your changes locally for CPU and GPU devices?
Have you made sure that new changes do not introduce compiler warnings?
If this PR is a work in progress, are you filing the PR as a draft?
Fixes #1028, #1000