Skip to content

Commit 46cc69d

Browse files
Update README
1 parent fd3224c commit 46cc69d

1 file changed

Lines changed: 52 additions & 11 deletions

File tree

README.md

Lines changed: 52 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,58 @@
1-
# HWComponents
2-
The HWComponents (Hardware Components) package, part of the
3-
[CiMLoop](https://github.com/mit-emze/cimloop) project, provides an interface for the
4-
estimation of area, energy, latency, and leak power of hardware components in hardware
5-
architectures. Key features in HWComponents include:
1+
<div align="center">
62

7-
[Information about the package is available on the hwcomponents website](https://accelergy-project.github.io/hwcomponents/).
3+
<img src="https://capsule-render.vercel.app/api?type=rect&color=0:004CFF,100:00CFFF&height=100&section=header&text=HWComponents&fontSize=52&fontColor=ffffff&fontAlignY=55" alt="HWComponents" />
84

9-
## Citing HWComponents
5+
***Area, energy, latency, and leak power models for hardware components.***
106

11-
If you use this package in your work, please cite this repository and the CiMLoop project:
7+
<br>
8+
9+
[![PyPI](https://img.shields.io/pypi/v/hwcomponents?style=for-the-badge&logo=pypi&logoColor=white&labelColor=3775A9&color=0B4F6C)](https://pypi.org/project/hwcomponents/)
10+
[![Python](https://img.shields.io/badge/Python-3.12+-3776AB?style=for-the-badge&logo=python&logoColor=white&labelColor=1E415E)](https://www.python.org/)
11+
[![License](https://img.shields.io/badge/License-MIT-A31F34?style=for-the-badge&labelColor=2D2D2D)](https://opensource.org/licenses/MIT)
12+
[![Docs](https://img.shields.io/badge/Docs-online-0A7BBB?style=for-the-badge&logo=readthedocs&logoColor=white&labelColor=1A1A1A)](https://accelergy-project.github.io/hwcomponents/)
13+
14+
[![CI](https://img.shields.io/github/actions/workflow/status/Accelergy-Project/hwcomponents/publish.yaml?branch=main&style=for-the-badge&logo=githubactions&logoColor=white&label=CI&labelColor=24292F&color=2EA043)](https://github.com/Accelergy-Project/hwcomponents/actions)
15+
[![Code style: black](https://img.shields.io/badge/code_style-black-000000?style=for-the-badge&logo=python&logoColor=white&labelColor=2D2D2D)](https://github.com/psf/black)
16+
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-2EA043?style=for-the-badge&logo=github&logoColor=white&labelColor=24292F)](https://github.com/Accelergy-Project/hwcomponents/pulls)
17+
18+
</div>
19+
20+
---
21+
22+
HWComponents provides area, energy, latency, and leak power estimates for hardware components in hardware architectures. It is part of the [CiMLoop](https://github.com/mit-emze/cimloop) project and serves as the estimation backend for [AccelForge](https://github.com/Accelergy-Project/accelforge).
23+
24+
Learn more at the [website](https://accelergy-project.github.io/hwcomponents/) or on [GitHub](https://github.com/Accelergy-Project/hwcomponents).
25+
26+
## ⚡ Features
27+
28+
- **Simple Python API** for writing area, energy, latency, and leak power models. New models can be written in minutes.
29+
- **Automatic parameter scaling** across configurations, including scaling to different technology nodes.
30+
- **Plugin ecosystem** that automatically gathers components from installed Python packages.
31+
- **Included model packages** for multiple projects, plus a general-purpose component library.
32+
33+
## 📦 Install
34+
35+
```bash
36+
# Core package
37+
pip install hwcomponents
38+
39+
# Model packages
40+
pip install hwcomponents-cacti
41+
pip install hwcomponents-neurosim
42+
pip install hwcomponents-adc
43+
pip install hwcomponents-library
44+
45+
# List available models
46+
hwc --list
47+
```
48+
49+
## 🧪 Examples
50+
51+
See the [`notebooks/`](notebooks) directory for tutorials, and the [docs](https://accelergy-project.github.io/hwcomponents/) for the full API.
52+
53+
## 📚 Cite
54+
55+
If you use HWComponents in your work, please cite this repository and the CiMLoop project:
1256

1357
```bibtex
1458
@software{hwcomponents,
@@ -23,10 +67,7 @@ If you use this package in your work, please cite this repository and the CiMLoo
2367
booktitle={2024 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS)},
2468
title={CiMLoop: A Flexible, Accurate, and Fast Compute-In-Memory Modeling Tool},
2569
year={2024},
26-
volume={},
27-
number={},
2870
pages={10-23},
29-
keywords={Performance evaluation;Accuracy;Computational modeling;Computer architecture;Artificial neural networks;In-memory computing;Data models;Compute-In-Memory;Processing-In-Memory;Analog;Deep Neural Networks;Systems;Hardware;Modeling;Open-Source},
3071
doi={10.1109/ISPASS61541.2024.00012}
3172
}
3273
```

0 commit comments

Comments
 (0)