This repository was archived by the owner on Jan 25, 2023. It is now read-only.
forked from numba/numba
-
Notifications
You must be signed in to change notification settings - Fork 6
MLIR based backend for Numba #115
Draft
Hardcode84
wants to merge
278
commits into
mlir-develop-base
Choose a base branch
from
mlir-develop
base: mlir-develop-base
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* test * check getitem/setitem index type * PropagateBuildTupleTypes * multidim setitem/getitem
* test * fix CanonicalizeReduction for nested loops * math. fixes * numpy sqrt * refactor * numpy.square
* some buffer opt passes * StaticSetItem * StaticSetItem test * fix to meminfo<->memref conversion * fix lowering to tbb * generate parallel loops only loops from prange
* store context in Var * rework shape accessor * dtype accessor rework * remove unused code * refactor shape * remove unused code * fix setitem lowering * numpy empty * numpy.sum * some kwargs support * linlag resolver kwargs support * linalg resolver some literal support * work on linalg resolver * add symbolDCE pass * numpy sum axis support
* refac * proper types for numpy.sum * move test * numpy dot 1D * numpy dot 2D * adapt linalg resolver to attrs * array size support * refac * array transpose
* fix plier parallel * use loop to init reduce vars * transfor to tbb parallel if have parallel attr or outermost loop * we dont need fix_tls_observer, also do not recreate task arena each time
* use std::function * refac test * numpy operator add * fix plier binop * numpy subtract * numpy multiply
* fixes to broadcasting * fix * work on broadcast * some work on broadcast * work on broadcast * broadcasting * broadcast fix * PostFusionOptPass
* Use default values for SmallVector N * Move readme file, remove old file
* change builder func * accept list of bounds * plier::ParallelOp nested loops support * fix to nested parallel loops
…ts (#199) * some broadcoasting opt * rework broadcast * add pass * move force inline to opt pass * Proper increfs/decrefs for input arrays
* PostPlierToLinalgPass pass * refactor out populate_common_opts_patterns * propagate if const values * simplify expand dims * plier inliner interface * simplify if and select * fixes * fixes * EnforceShapeOp * copy removal pass and parallel loop fusion * fixes * more SelectOp folding * Add non-recursive CSE * more efficient reshape * run few rounds ParallelOp fusing
* refac * refac * extend CanonicalizeReduction * PromoteParallelPass pass * promote some simple loads * Rewrite single-element single-store memref * copypaste naiveParallelLoopFusion from mlir * Extend mem rewrites
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
MLIR based backend for numba
based on Numba 0.51
It is not yet integrated properly into Numba build process and require 2 verions of llvm, "usual" llvm for numba, and llvm master mlir-compiler/llvm-sha.txt for MLIR backend. Require pybind11.