aihwkit icon indicating copy to clipboard operation
aihwkit copied to clipboard

Noise model fitted and characterized on RRAM devices (programming noise and output-referred read noise)

Open frmar440 opened this issue 2 years ago • 1 comments

Description and motivation

Add a new noise model based on real RRAM devices. At the moment, only a PCM statistical model is available for analog inference. A RRAM preset exists for analog training, but there are no noise models for inference only (after digital training). Since RRAM devices are promising for in-memory computing, such a model would be interesting for simulation and hardware-aware training.

Proposed solution

Extend the existing library to consider both programming and read noises of RRAM devices fitted on real hardware.

Alternatives and other information

Our research group is fabricating and characterizing RRAM devices, so I'll work on adding this feature in the library.

frmar440 avatar Jun 29 '22 18:06 frmar440

Hi @frmar440 , many thanks, that sounds like a great contribution! Please reach out if you have any questions.

maljoras avatar Jul 01 '22 14:07 maljoras

Hi @frmar440, any update on this issue?

maljoras avatar Nov 10 '22 17:11 maljoras

Looking forward to it. Also can you point out some literature regarding this? May be I can contribute for ReRam model.

matifali avatar Nov 24 '22 21:11 matifali

We have added a (rudimentary) ReRAM inference model. One can use is by setting

from aihwkit.simulator.configs import InferenceRPUConfig
from aihwkit.inference import ReRamWan2022NoiseModel

rpu_config = InferenceRPUConfig(noise_model=ReRamWan2022NoiseModel())

Note that only some times are fitted to the published data (1 second, 1 day, 2 days)

maljoras avatar Jul 13 '23 00:07 maljoras

Closing this issue since we have added the above ReRAM model. Please re-open if a new model is required.

maljoras avatar Dec 28 '23 16:12 maljoras