Skip to main content

XForge SDK 🧠💻

BMLabs 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 YOLOv8 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: Standardized RGB channel splitting and resizing for neuromorphic inputs.

🛠 Installation

Install the latest version:

pip install BMLabs-XForge-SDK==0.1.1

📖 Quick Start

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

# Page Config
st.set_page_config(page_title="BMLabs XForge 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('yolov8n.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 BMLabs-XForge-SDK 0.1.1

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

Source distribution (sdist)

Source distribution for BMLabs-XForge-SDK 0.1.1
File Size Uploaded
bmlabs_xforge_sdk-0.1.1.tar.gz 394.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for BMLabs-XForge-SDK 0.1.1
File Interpreter ABI Platform
bmlabs_xforge_sdk-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 794.9 kB

Release files / bmlabs_xforge_sdk-0.1.1.tar.gz

Download URL bmlabs_xforge_sdk-0.1.1.tar.gz
Size 394.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f195472335b222d9c5ba489fd60e80a51b4b7d38c6ebf0930e38a8147b509ca0
BLAKE2b-256 checksum
How to use checksums
cba47f668dd8005d1ab2a4a1daf17f6eb4edec6fcfd8ba57c742a2c0bcbeea0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.2

Release files / bmlabs_xforge_sdk-0.1.1-py3-none-any.whl

Download URL bmlabs_xforge_sdk-0.1.1-py3-none-any.whl
Size 400.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0efd719693f6aa1aeddc6c5a39ae697b8d138ce361749d5b671b7acad0431d81
BLAKE2b-256 checksum
How to use checksums
1ab3dc720d368fec77c959b9572fccb0e9931a6baa903d30e29cbaa540766f4f
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.1 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