Final Project • COSC 480 Embedded AI • Winter 2026

nn_dataflow Tools

Extended an open-source neural-network dataflow scheduling tool with per-layer visualization scripts and a full MobileNetV2 architecture definition.

Python Matplotlib MobileNetV2 Embedded AI Tangram

Visualization output coming soon

Overview

For my Embedded AI final project, I extended nn_dataflow, an academic dataflow-scheduling tool for neural-network accelerators, so that it could (a) target a modern mobile-optimized network and (b) communicate its scheduling decisions visually instead of as raw JSON. The visualization scripts produce per-layer energy, latency, and cost breakdowns that make it much easier to reason about trade-offs.

Approach

  • Implemented Python visualization scripts that parse JSON search results from the scheduler and generate per-layer energy, latency, and cost breakdowns using Matplotlib.
  • Defined a full MobileNetV2 architecture within the existing layer API, enabling dataflow scheduling on a mobile-optimized network that the tool didn't previously support.
  • Validated the new network definition against the original MobileNetV2 paper's published layer dimensions and verified correctness through the project's built-in test suite.

Results & Learnings

  • Reading and extending a research codebase taught me to map an unfamiliar architecture quickly: find the entry points, follow the data, then add capability without disturbing existing tests.
  • Producing readable charts from raw JSON made the tool noticeably more useful for the rest of the class. Visualization is a force multiplier on any analysis tool.

Media

← Back to all projects