-
Notifications
You must be signed in to change notification settings - Fork 51
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 542cc57
Showing
55 changed files
with
6,283 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
*.pyd | ||
*.pt | ||
MANIFEST.in | ||
build/ | ||
!docs/build/ | ||
data/ | ||
dist/ | ||
MemTorch.egg-info/ | ||
MemTorch_cpu.egg-info/ | ||
**/__pycache__/ | ||
.ipynb_checkpoints | ||
memtorch/examples/reproduce/*.csv | ||
tmp/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Required | ||
version: 2 | ||
|
||
# Build documentation in the docs/ directory with Sphinx | ||
sphinx: | ||
configuration: docs/conf.py | ||
|
||
# Optionally build your docs in additional formats such as PDF and ePub | ||
formats: all | ||
|
||
# Optionally set the version of Python and requirements required to build your docs | ||
python: | ||
version: 3.6 | ||
install: | ||
- requirements: docs/requirements.txt | ||
- method: pip | ||
path: . | ||
extra_requirements: | ||
- memtorch |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
language: python | ||
matrix: | ||
include: | ||
- os: linux | ||
sudo: required | ||
python: 3.6 | ||
dist: xenial | ||
- os: linux | ||
sudo: required | ||
python: 3.7 | ||
dist: xenial | ||
- os: linux | ||
sudo: required | ||
python: 3.8 | ||
dist: xenial | ||
install: | ||
- sudo apt-get install -y ninja-build | ||
- python -m pip install --upgrade pip | ||
- python -m pip install numpy pandas torch torchvision matplotlib seaborn sklearn | ||
- python setup.py install | ||
script: | ||
- echo pass |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
# MemTorch | ||
![](https://img.shields.io/badge/license-GPL-blue.svg) | ||
![DOI](https://img.shields.io/badge/DOI-TBD-brightgreen.svg) | ||
[![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/memtorch/community) | ||
![](https://readthedocs.org/projects/pip/badge/?version=latest) | ||
![](https://api.travis-ci.org/coreylammie/MemTorch.svg) | ||
|
||
MemTorch is a *Simulation Framework for Memristive Deep Learning Systems* which integrates directly with the well-known *PyTorch* Machine Learning (ML) library, which is presented in *MemTorch: An Open-source Simulation Framework for Memristive Deep Learning Systems*. | ||
|
||
## Installation | ||
To install MemTorch from source: | ||
|
||
``` | ||
git clone https://github.com/coreylammie/MemTorch | ||
cd MemTorch | ||
python setup.py install | ||
``` | ||
|
||
*If CUDA is True in setup.py, CUDA Toolkit 10.1 and Microsoft Visual C++ Build Tools are required. If CUDA is False in setup.py, Microsoft Visual C++ Build Tools are required.* | ||
|
||
Alternatively, MemTorch can be installed using the *pip* package-management system: | ||
|
||
``` | ||
pip install memtorch # Supports CUDA and normal operation | ||
pip install memtorch-cpu # Supports normal operation | ||
``` | ||
|
||
## API & Example Usage | ||
A complete API is avaliable [here](https://memtorch.readthedocs.io/). To learn how to use MemTorch, and to reproduce results of ‘*MemTorch: An Open-source Simulation Framework for Memristive Deep Learning Systems*’, we provide numerous Jupyter notebooks [here](memtorch/examples). | ||
|
||
## Current Issues and Feature Requests | ||
Current issues, feature requests and improvements are welcome, and are tracked using: https://github.com/coreylammie/MemTorch/projects/1. | ||
|
||
These should be reported [here](https://github.com/coreylammie/MemTorch/issues). | ||
|
||
## Contributing | ||
Please follow the "fork-and-pull" Git workflow: | ||
1. **Fork** the repo on GitHub | ||
2. **Clone** the project to your own machine | ||
3. **Commit** changes to your own branch | ||
4. **Push** your work back up to your fork | ||
5. Submit a **Pull request** so that we can review your changes | ||
|
||
*Be sure to merge the latest from 'upstream' before making a pull request*. | ||
|
||
## License | ||
All code is licensed under the GNU General Public License v3.0. Details pertaining to this are available at: https://www.gnu.org/licenses/gpl-3.0.en.html. | ||
|
||
[![HitCount](http://hits.dwyl.io/coreylammie/MemTorch.svg)](http://hits.dwyl.io/coreylammie/MemTorch) |
Oops, something went wrong.