  Memristive devices have shown great promise to facilitate the acceleration
and improve the power efficiency of Deep Learning (DL) systems. Crossbar
architectures constructed using these Resistive Random-Access Memory (RRAM)
devices can be used to efficiently implement various in-memory computing
operations, such as Multiply Accumulate (MAC) and unrolled-convolutions, which
are used extensively in Deep Neural Networks (DNNs) and Convolutional Neural
Networks (CNNs). However, memristive devices face concerns of aging and
non-idealities, which limit the accuracy, reliability, and robustness of
Memristive Deep Learning Systems (MDLSs), that should be considered prior to
circuit-level realization. This Original Software Publication (OSP) presents
MemTorch, an open-source framework for customized large-scale memristive DL
simulations, with a refined focus on the co-simulation of device
non-idealities. MemTorch also facilitates co-modelling of key crossbar
peripheral circuitry. MemTorch adopts a modernized soft-ware engineering
methodology and integrates directly with the well-known PyTorch Machine
Learning (ML) library
