Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
f5a8dad
Initial commit
microsoft-github-operations[bot] Oct 8, 2024
1b7ec21
CODE_OF_CONDUCT.md committed
microsoftopensource Oct 8, 2024
7a66bac
SECURITY.md committed
microsoftopensource Oct 8, 2024
019a370
LICENSE committed
microsoftopensource Oct 8, 2024
3c8a7da
README.md committed
microsoftopensource Oct 8, 2024
095e4e9
SUPPORT.md committed
microsoftopensource Oct 8, 2024
426e89d
Created branch, added codeowners
Jan 30, 2025
10d7bb3
Initial migration from internal repo (#5)
STFleming Jan 30, 2025
5ba98f9
BERT builder flow arguments for fifosim n_inferences (#6)
STFleming Feb 17, 2025
ccd023b
[SoftMax] New Improved SoftMax (#11)
STFleming Mar 7, 2025
ad639bc
[BugFix] Issues with incorrect configuration of SIMD for ShuffleB nod…
STFleming Mar 7, 2025
4afffcd
Adding cycle testing to custom op test scripts (#7)
penrosed Mar 7, 2025
fcd7bc3
Added a custom step that extracts metadata for the shell integration …
STFleming Mar 13, 2025
fab2842
[TinyBERT] Removing accidentally included start_step in the endtoend …
STFleming Mar 18, 2025
d7fb002
Removing rtlsim_backend after pyverilator deprecation (#16)
STFleming Mar 19, 2025
0c72dda
Name stylize BrainSmith --> Brainsmith (#17)
tafk7 Mar 20, 2025
dbfbe67
[TinyBERT] Add ref IO to stitched_ip as part of metadata handover (#18)
STFleming Mar 27, 2025
3d8aac0
[Testing] Created OpTest class for abstracting CustomOp tests (#19)
penrosed Apr 3, 2025
99e2aa2
Initial repository structure (#20)
tafk7 Apr 11, 2025
15fb647
Add Custom ONNXSCRIPT repository to BrainSmith (#21)
jsmonson Apr 17, 2025
752bd39
Revert "Add Custom ONNXSCRIPT repository to BrainSmith (#21)" (#22)
tafk7 Apr 18, 2025
17fc5ca
[CustomOps] Update brainsmith custom ops with changes on finn side (#25)
auphelia Apr 28, 2025
3dcfe0b
Initial continuous integration tests (#24)
tafk7 Apr 29, 2025
ff45805
Revert onnxscript add Revert (#26)
jsmonson May 2, 2025
ec39f0d
Fix Dynamic Matmul Initial Config For BERT-Large (#28)
jsmonson May 2, 2025
fc73217
fix argparse arg that could never be false (#30)
jsmonson May 27, 2025
4530385
Patch Pull Request #30: Update args variable to match new argument na…
jsmonson May 28, 2025
7a410b2
update pytorch to 2.7 (#34)
jsmonson May 29, 2025
30e48ad
[Hotfix] Cleanup CI runner artifacts (#33)
tafk7 May 29, 2025
40abeed
update brevitas commit hash (#36)
jsmonson May 30, 2025
937a639
Set onnxscript to a fixed commit id (#37)
jsmonson Jun 2, 2025
84b5301
Hardware Kernel Generator: RTL Parser & wrapper generation (#32)
tafk7 Jun 4, 2025
3b50184
Add BERT-Large CI Test (#40)
jsmonson Jun 11, 2025
9dc7ae8
Docker workflow modernization (#38)
tafk7 Jun 17, 2025
d14fbba
Update FINN (#41)
auphelia Jun 25, 2025
56b90fd
Core DSE & Plugin Library (#44)
tafk7 Aug 1, 2025
cee12b7
Version 0.1.0a1 - Initial Closed Alpha Release (#45)
tafk7 Aug 1, 2025
1ebf35c
[Deps] Update and fix finn and qonnx deps
auphelia Aug 27, 2025
d3e9f4d
Merge remote-tracking branch 'origin/main' into develop-branch-update
Aug 29, 2025
dedc4cc
Merge branch 'dev/update_finn_qonnx' of github.com:microsoft/Brainsmi…
Aug 29, 2025
eee7ee0
Merge branch 'main' of github.com:microsoft/Brainsmith into develop
Aug 29, 2025
b2e4c44
[Deps] Update and fix finn and qonnx deps (#54)
jsmonson Aug 29, 2025
87493eb
Kernel Integrator (#48)
tafk7 Sep 1, 2025
216cbb0
Merge pull request #58 from microsoft/develop-branch-update
tafk7 Sep 19, 2025
729d969
Integration tests & updated docs (#59)
tafk7 Sep 22, 2025
b22054b
Merge branch 'develop' of github.com:microsoft/Brainsmith into dev/jo…
Oct 22, 2025
b6a8dd0
remove extra files and bring into alignmnet with develop
Oct 22, 2025
e8022d9
additional conformance
Oct 22, 2025
2c3858c
Merge remote-tracking branch 'origin/develop' into dev/joshmonson/add…
Oct 27, 2025
ffd90d7
save some data
Oct 31, 2025
95f837f
other
Oct 31, 2025
64153e2
save my current efforts
Oct 31, 2025
5c73527
save the file to generate my pytorch model.
Oct 31, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/CI_README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ Fast validation for pull requests and develop branch pushes.
### Biweekly Tests (`biweekly-tests.yml`)
Comprehensive testing for large model validation.

**Triggers**: Biweekly schedule (Monday/Thursday 00:00 UTC)
**Runtime**: ~24 hours
**Triggers**: Biweekly schedule (Monday/Thursday 00:00 UTC)
**Runtime**: ~24 hours
**Job**: `bert-large-comprehensive-test` (BERT Large Model Comprehensive Test)

**Steps**:
Expand Down Expand Up @@ -95,7 +95,7 @@ Complete test lifecycle with conditional artifact collection.
- `docker-cleanup` - Cleans containers AND persistent build directories
- `collect-artifacts` - Collects system info, container logs, and test artifacts

#### Docker Actions
#### Docker Actions
- `build-docker` - Builds image with verification and timing fixes
- `docker-exec` - Executes commands with container lifecycle management

Expand Down
10 changes: 5 additions & 5 deletions .github/actions/build-docker/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,17 @@ runs:
chmod +x ctl-docker.sh
echo "=== Building Docker image ==="
./ctl-docker.sh build

echo "=== Verifying image was built ==="
echo "Expected image tag: $BSMITH_DOCKER_TAG"

# Wait a moment for Docker to register the image
sleep 2

# Show all docker images for debugging
echo "All Docker images:"
docker images

# Check for the specific tag
if docker images --format "{{.Repository}}:{{.Tag}}" | grep -q "microsoft/brainsmith:"; then
echo "✓ Docker image built and verified successfully"
Expand All @@ -29,4 +29,4 @@ runs:
echo "Looking for images matching: microsoft/brainsmith:"
docker images | grep "microsoft/brainsmith" || echo "No matching images found"
exit 1
fi
fi
14 changes: 7 additions & 7 deletions .github/actions/collect-artifacts/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,32 +13,32 @@ runs:
shell: bash
run: |
ARTIFACT_DIR="${{ inputs.artifact-directory }}"

# Validate directory name
if [[ ! "$ARTIFACT_DIR" =~ ^[a-zA-Z0-9_\-]+$ ]]; then
echo "ERROR: Artifact directory contains invalid characters"
echo "Allowed: alphanumeric, underscore, hyphen"
exit 1
fi

# Prevent path traversal
if [[ "$ARTIFACT_DIR" =~ \.\./|^/ ]]; then
echo "ERROR: Invalid artifact directory path (path traversal detected)"
exit 1
fi

echo "✓ Artifact directory validated: $ARTIFACT_DIR"

- name: Collect artifacts
shell: bash
run: |
ARTIFACT_DIR="${{ inputs.artifact-directory }}"
mkdir -p "$ARTIFACT_DIR"

echo "=== Collecting system info ==="
df -h > "$ARTIFACT_DIR/disk_usage.txt" 2>/dev/null || true
free -h > "$ARTIFACT_DIR/memory_usage.txt" 2>/dev/null || true

echo "=== Collecting container info ==="
if [ -x ./ctl-docker.sh ]; then
./ctl-docker.sh status > "$ARTIFACT_DIR/container_status.txt" 2>&1 || echo "Status failed" > "$ARTIFACT_DIR/container_status.txt"
Expand All @@ -57,4 +57,4 @@ runs:
echo "No container diagnostics found (expected if test succeeded or COLLECT_DIAGNOSTICS not enabled)"
fi

echo "✓ Artifacts collected in $ARTIFACT_DIR"
echo "✓ Artifacts collected in $ARTIFACT_DIR"
2 changes: 1 addition & 1 deletion .github/actions/docker-cleanup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,4 @@ runs:
# Note: BuildKit cache layers are preserved automatically
echo "✓ BuildKit cache layers preserved for future builds"

echo "Available space: $(df -h / | tail -1 | awk '{print $4}')"
echo "Available space: $(df -h / | tail -1 | awk '{print $4}')"
10 changes: 5 additions & 5 deletions .github/actions/run-test-with-artifacts/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ runs:
- name: Collect artifacts
id: collect-artifacts
if: |
always() &&
(inputs.collect-on == 'always' ||
always() &&
(inputs.collect-on == 'always' ||
(inputs.collect-on == 'failure' && steps.test-execution.outcome == 'failure'))
uses: ./.github/actions/collect-artifacts
with:
Expand All @@ -56,8 +56,8 @@ runs:
- name: Upload artifacts
id: upload-artifacts
if: |
always() &&
(inputs.collect-on == 'always' ||
always() &&
(inputs.collect-on == 'always' ||
(inputs.collect-on == 'failure' && steps.test-execution.outcome == 'failure'))
uses: actions/upload-artifact@v4
with:
Expand All @@ -67,4 +67,4 @@ runs:

- name: Final cleanup
if: always()
uses: ./.github/actions/docker-cleanup
uses: ./.github/actions/docker-cleanup
2 changes: 1 addition & 1 deletion .github/workflows/biweekly-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,4 @@ jobs:
timeout-minutes: 1400
artifact-name: "biweekly-artifacts"
collect-on: "always"
retention-days: 14
retention-days: 14
2 changes: 1 addition & 1 deletion docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,4 @@ RUN chmod 755 /usr/local/bin/entrypoint.sh /usr/local/bin/entrypoint-exec.sh /us

# Set default entrypoint
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
CMD ["bash"]
CMD ["bash"]
6 changes: 3 additions & 3 deletions docker/entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ fi
# Run one-stop setup (unless explicitly skipped)
if [ "$BSMITH_SKIP_SETUP" != "1" ]; then
log "Running setup..."

# Build setup flags
SETUP_FLAGS="--docker" # Always use docker mode
[ -n "$BSMITH_FORCE_SETUP" ] && SETUP_FLAGS="$SETUP_FLAGS --force"
Expand All @@ -39,7 +39,7 @@ if [ "$BSMITH_SKIP_SETUP" != "1" ]; then
if [ -n "$BSMITH_SKIP_COMPONENTS" ]; then
SETUP_FLAGS="$SETUP_FLAGS --skip $BSMITH_SKIP_COMPONENTS"
fi

# Run setup
if ./setup-venv.sh $SETUP_FLAGS; then
log "✓ Setup completed successfully"
Expand All @@ -56,4 +56,4 @@ source /usr/local/bin/setup-shell.sh

# Keep container alive in daemon mode
log "Container ready"
exec tail -f /dev/null
exec tail -f /dev/null
Loading