Skip to content

Open NPU is an open-source project dedicated to creating a flexible, extensible, and high-performance neural processing unit (NPU) architecture. Open NPU aims to democratize access to cutting-edge neural processing technology for machine learning and AI applications.

License

Notifications You must be signed in to change notification settings

popovych-labs/open-npu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Open NPU

Open NPU is an open-source initiative aiming to develop a free and open neural processing unit (NPU) architecture, much like RISC-V has done for CPUs. Our goal is to provide a flexible, extensible, and community-driven platform for developing and deploying machine learning and artificial intelligence applications.

All information below will be revised (created by chatgpt)

References

  1. Intel FPGA NPU
  2. NPU MNIST Classifier

Table of Contents

Introduction

Open NPU aims to democratize access to high-performance neural processing by providing an open-source NPU architecture. By leveraging the collective expertise of the community, we strive to create a powerful and adaptable platform that meets the needs of various AI workloads.

Features

  • Open Source: Fully open-source under a permissive license.
  • Extensible: Modular design allowing easy extensions and customizations.
  • High Performance: Optimized for a variety of AI and ML tasks.
  • Scalable: Suitable for a range of applications from edge devices to data centers.
  • Community-Driven: Contributions from developers and researchers around the world.

Architecture

Open NPU's architecture is designed to be flexible and scalable, featuring:

  • Modular Components: Separate modules for different processing tasks.
  • Customizable Pipelines: Create and modify processing pipelines to suit specific needs.
  • Interoperability: Compatible with existing AI frameworks and toolchains.

For detailed architecture information, please refer to the Architecture Document.

Getting Started

Prerequisites

  • Basic knowledge of neural networks and machine learning.
  • Familiarity with hardware design principles.
  • Development tools such as Verilog, VHDL, or high-level synthesis tools.

Installation

  1. Clone the repository:
    git clone https://github.com/yourusername/open-npu.git
  2. Follow the instructions in the Installation Guide to set up your development environment.

Usage

Refer to the User Guide for detailed usage instructions, including examples and best practices.

Contributing

We welcome contributions from the community. Whether you're interested in developing new features, fixing bugs, or improving documentation, your help is valuable.

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeature).
  3. Commit your changes (git commit -am 'Add new feature').
  4. Push to the branch (git push origin feature/YourFeature).
  5. Create a new Pull Request.

Please read our Contributing Guidelines and Code of Conduct before contributing.

License

See the LICENSE file for details.

Acknowledgments

  • Inspired by the RISC-V project.
  • Thanks to all the contributors who make this project possible.

Contact

For questions or suggestions, please open an issue or contact us at [email protected].

About

Open NPU is an open-source project dedicated to creating a flexible, extensible, and high-performance neural processing unit (NPU) architecture. Open NPU aims to democratize access to cutting-edge neural processing technology for machine learning and AI applications.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published