Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning:
Added
for new features.Changed
for changes in existing functionality.Deprecated
for soon-to-be removed features.Removed
for now removed features.Fixed
for any bug fixes.Security
in case of vulnerabilities.
0.2.0 - 2020/10/20¶
Added¶
Added more types of resistive devices:
IdealResistiveDevice
,LinearStep
,SoftBounds
,ExpStep
,VectorUnitCell
,TransferCompoundDevice
,DifferenceUnitCell
. (#14)Added a new
InferenceTile
that supports basic hardware-aware training and inference using a statistical noise model that was fitted by real PCM devices. (#25)Added a new
AnalogSequential
layer that can be used in place ofSequential
for easier operation on children analog layers. (#34)
Changed¶
Specifying the tile configuration (resistive device and the rest of the properties) is now based on a new
RPUConfig
family of classes, that is passed as arpu_config
argument instead ofresistive_device
toTiles
andLayers
. Please check theaihwkit.simulator.config
module for more details. (#23)The different analog tiles are now organized into a
aihwkit.simulator.tiles
package. The internalIndexedTiles
have been removed, and the rest of previous top-level imports have been kept. (#29)
Fixed¶
Improved package compatibility when using non-UTF8 encodings (version file, package description). (#13)
The build system can now detect and use
openblas
directly 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)