All notable changes to this project will be documented in this file.
Addedfor new features.
Changedfor changes in existing functionality.
Deprecatedfor soon-to-be removed features.
Removedfor now removed features.
Fixedfor any bug fixes.
Securityin case of vulnerabilities.
Added more types of resistive devices:
Added a new
InferenceTilethat supports basic hardware-aware training and inference using a statistical noise model that was fitted by real PCM devices. (#25)
Added a new
AnalogSequentiallayer that can be used in place of
Sequentialfor easier operation on children analog layers. (#34)
Specifying the tile configuration (resistive device and the rest of the properties) is now based on a new
RPUConfigfamily of classes, that is passed as a
rpu_configargument instead of
Layers. Please check the
aihwkit.simulator.configmodule for more details. (#23)
The different analog tiles are now organized into a
aihwkit.simulator.tilespackage. The internal
IndexedTileshave been removed, and the rest of previous top-level imports have been kept. (#29)
Improved package compatibility when using non-UTF8 encodings (version file, package description). (#13)
The build system can now detect and use
openblasdirectly when using the conda-installable version. (#22)
When using analog layers as children of another module, the tiles are now correctly moved to CUDA if using
AnalogSequential(or by the optimizer if using regular torch container modules). (#34)