lava-nc / lava

A Software Framework for Neuromorphic Computing
https://lava-nc.org
Other
529 stars 136 forks source link

Alternative to Injector/Extractor Processes #835

Closed gkarray closed 3 months ago

gkarray commented 4 months ago

Issue Number:

Objective of pull request: Give an alternative (better) implementation of Injector and Extractor main functionality without wrapping it into a Lava Process.

Pull request checklist

Your PR fulfills the following requirements:

Pull request type

Please check your PR type:

What is the current behavior?

What is the new behavior?

Does this introduce a breaking change?

bamsumit commented 4 months ago

This looks nice guys. Does it mean that we will get rid of injector and extractor processes as it is now? I would not delete them right now and maybe provide deprecation warning that it will be removed in lava vX.Y.Z. This will allow all the subsequent apps to make the transition.

PhilippPlank commented 3 months ago

This looks nice guys. Does it mean that we will get rid of injector and extractor processes as it is now? I would not delete them right now and maybe provide deprecation warning that it will be removed in lava vX.Y.Z. This will allow all the subsequent apps to make the transition.

We have rewritten the Injector/Extractor classes, so they are fully backwards compatible with the new change. They do offer some functionality which might be handy, e.g., what happens to the data when the buffer is full (drop, stall, etc.). So one could continue using this processes in the future, but it is not needed anymore. I am open to deprecate them in the future, but can also see value in keeping them.

bamsumit commented 3 months ago

This looks nice guys. Does it mean that we will get rid of injector and extractor processes as it is now? I would not delete them right now and maybe provide deprecation warning that it will be removed in lava vX.Y.Z. This will allow all the subsequent apps to make the transition.

We have rewritten the Injector/Extractor classes, so they are fully backwards compatible with the new change. They do offer some functionality which might be handy, e.g., what happens to the data when the buffer is full (drop, stall, etc.). So one could continue using this processes in the future, but it is not needed anymore. I am open to deprecate them in the future, but can also see value in keeping them.

Great. In that case we do not need to deprecate injector and extractor.