Skip to content
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

Efficiently handle Relay's simplified-for-inference batch norms #55

Open
gussmith23 opened this issue Oct 12, 2020 · 0 comments
Open

Efficiently handle Relay's simplified-for-inference batch norms #55

gussmith23 opened this issue Oct 12, 2020 · 0 comments
Labels
codegen Pertaining to Glenside's codegen stage language The design of the Glenside language itself rewrites Improve Glenside's egraph rewrites

Comments

@gussmith23
Copy link
Owner

Relay can run the SimplifyInference pass to simplify batch norm operators into a collection of primitive ops. Ideally, Glenside would intake these primitive ops and do efficient codegen for them. I don't think this is on the critical path for ISCA right now, and our workaround is to just take in opaque "BatchNormInference" nodes.

gussmith23 added a commit that referenced this issue Oct 12, 2020
We will be bringing batch norms into Glenside as these BatchNormInference nodes,
rather than running SimplifyInference in Relay and bringing them in as
adds/multiplies/divides/etc. This commit adds support for this new construct,
and parses it from Relay. I've added a flag to the Relay-to-Glenside compiler to
try and call this out specifically as a hack.

In the future, ideally, we'd bring in either batch norm nodes, or we'd bring in
the simplified components of batch norm inference and do efficient codegen for
them.

See #55
@gussmith23 gussmith23 added codegen Pertaining to Glenside's codegen stage language The design of the Glenside language itself rewrites Improve Glenside's egraph rewrites labels Oct 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
codegen Pertaining to Glenside's codegen stage language The design of the Glenside language itself rewrites Improve Glenside's egraph rewrites
Projects
None yet
Development

No branches or pull requests

1 participant