Skip to content

IBM Analog Hardware Acceleration Kit 0.2.0

Choose a tag to compare

@diego-plan9 diego-plan9 released this 20 Oct 18:12
· 387 commits to master since this release
c6cfa74

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 of Sequential
    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 a rpu_config argument instead of resistive_device to Tiles
    and Layers. Please check the aihwkit.simulator.config module for more
    details. (#23)
  • The different analog tiles are now organized into a aihwkit.simulator.tiles
    package. The internal IndexedTiles 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)