# benchmark_suite_IREU A benchmark suite for memristive and memcapacitive crossbar computing systems ## Research question How does a chosen device subcircuit affect the same computing system? The memristive computing field lacks standardized benchmarks that control for workload characteristics, expose device-type differences, and report results comparable to conventional CMOS hardware. This project designs, implements, and releases a benchmark suite targeting memristive and memcapacitive crossbar architectures on CMOS substrates. ## abstract MemDevice Benchmark is a benchmarking framework for simulated memristor crossbar's using reservoir computing tasks as standardized workloads with the goal of revealing unique device model effects. The framework evaluates memristor devices under the same circuit, network, and workload characteristics. In the proposed architecture the SPICE crossbar is implemented as the readout layer for a reservoir computer. Ridge regressiong training is done on a software reservoir, training the software weights. An input series is given to the reservoir, the resulting temporal states are converted into voltage signals applied to the crossbar rows. The trained readout weights are converted into equivalent resistances to serve as the initial device values. The crossbar columns are read and mapped back to human readable data that prove task prediciton capability. Because the reservoir, crossbar, training procedure and benchmark tasks remain fixed, different SPICE device models can be hot swapped and benchmarked in one continous process, making fair comparisons possible and observing how device model choice affects the same computing system ## Setup **Download Spires:** git clone https://github.com/txmastin/spires.git cd spires make **Download plplot:** git clone git://git.code.sf.net/p/plplot/plplot plplot.git cd plplot.git mkdir build cd build make sudo make install **Other dependencies may be required for the listed libraries** **from the projects root directory (~/MemDevice_Benchmark/)** make run ##