Skip to main content

XForge SDK 🧠💻

XForge SDK is a specialized Python library for simulating the execution of Deep Learning models (like YOLO) on Neuromorphic X2 hardware. It provides tools for image preprocessing, neural network weight binarization, and hardware performance benchmarking.


🚀 Features

  • YOLO Integration: Extract weights directly from YOLO26n models for hardware analysis.
  • Crossbar Mapping: Automatically format weights into Signed or Unsigned 64x64/64x32 crossbar grids.
  • Hardware Simulation: Benchmarks PE (Processing Element) utilization, operation counts, and L2 buffer writes.
  • Image Processing & Post-processing: Handles standardized RGB channel splitting and hardware-aligned resizing for neuromorphic inputs, alongside hardware-friendly decoding of prediction coordinates and feature maps.

🛠 Installation

Install the latest version:

pip install XForge-SDK==0.1.2

📖 Quick Start

import streamlit as st
import numpy as np
from XForge_SDK import NeuromorphicSimulator, ImageProcessor, YOLOWrapper

# Page Config
st.set_page_config(page_title="XForge SDK Dashboard", layout="wide")

# 1. Initialize SDK Components
# These replace the manual logic previously scattered in app.py and user.py
@st.cache_resource
def init_sdk():
    return {
        "sim": NeuromorphicSimulator(num_pes=64),
        "processor": ImageProcessor(),
        "yolo": YOLOWrapper('yolon26n.pt')
    }

sdk = init_sdk()

st.title("🎯 YOLO26N: Neuromorphic Analysis SDK")
st.markdown("---")

uploaded_file = st.file_uploader("Upload Image", type=["jpg", "png"])

if uploaded_file:
    # 2. Use ImageProcessor for standardized loading
    img_array, channels = sdk["processor"].load_rgb_image(uploaded_file)
    
    col1, col2 = st.columns([2, 1])
    
    with col1:
        st.subheader("Object Detection")
        results = sdk["yolo"].predict(img_array)
        st.image(results[0].plot(), caption="Detection Results")
        

🧪 Development & Testing

Run the test suite after installation:

If using the Streamlit Dashboard:

streamlit run app.py

🤝 Contributing

For internal use by BM Labs. Please ensure all hardware-specific logic is validated against the NeuromorphicX2 core modules before pushing updates.

Release files for xforgesdk 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xforgesdk 0.1.2
File Size Uploaded
xforgesdk-0.1.2.tar.gz 395.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for xforgesdk 0.1.2
File Interpreter ABI Platform
xforgesdk-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 796.0 kB

Release files / xforgesdk-0.1.2.tar.gz

Download URL xforgesdk-0.1.2.tar.gz
Size 395.4 kB
Tags Source
SHA-256 checksum
How to use checksums
099c8fc694b5069285ec2a9d9f38434195b8f64b798798d2ae7ea95af24a1066
BLAKE2b-256 checksum
How to use checksums
8f3d835cd6d5c8ac19708add6ac091b4e8ab537660708b97b55afcfb26d8a676
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.2

Release files / xforgesdk-0.1.2-py3-none-any.whl

Download URL xforgesdk-0.1.2-py3-none-any.whl
Size 400.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
008e0dcf74af6e4bad2e316b3fefcbe208db4ca41112274b8fffcd30ce27918a
BLAKE2b-256 checksum
How to use checksums
3aadd9154cf8d5f628f14e6e565b8bc94ba7ec6dd0f62417fe1a364c00db98c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.2

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page