Skip to content

AIESW-6823, AIESW-6824: Optimize cmd_chain latency and throughput tes…#44

Merged
aktondak merged 1 commit intoXilinx:mainfrom
sandilya-xilinx:cmd_chain
Jan 21, 2026
Merged

AIESW-6823, AIESW-6824: Optimize cmd_chain latency and throughput tes…#44
aktondak merged 1 commit intoXilinx:mainfrom
sandilya-xilinx:cmd_chain

Conversation

@sandilya-xilinx
Copy link
Contributor

@sandilya-xilinx sandilya-xilinx commented Jan 20, 2026

…t configurations

[WHY]

  • Default configurations showed high variance and suboptimal performance
  • Throughput mode defaulted to depth=2, causing performance degradation
  • Needed stable, repeatable configurations for validation testing
  • Required sufficient iterations for framework warm-up and measurement stability

[HOW]

  • Conducted extensive empirical testing (27+ samples per configuration)
  • Set latency: 20 iterations x 1000 runs (depth=1 automatic in latency mode)
  • Set throughput: 20 iterations x 1000 runs x depth=1 (explicit override)
  • Validated depth=1 is mandatory for optimal throughput (depth>1 degrades 47-99%)
  • Confirmed 20 iterations minimum for stable measurements (10 iters = +/-47% variance)
  • Verified 1000 runs optimal for peak performance

[RESULTS]

  • Latency: 14.2 us average, range 13-16 us, +/-3 us variance
  • Throughput: 71,673 ops/s average, range 66,764-75,508 ops/s, +/-13% variance
  • Peak throughput: 75,508 ops/s (highest observed across all testing)
Run # Latency (µs) Throughput (ops/s)
1 16.0 73,432
2 13.0 67,221
3 15.0 75,508
4 13.0 66,764
5 14.0 75,442
Average 14.2 71,673
Best 13.0 75,508
Worst 16.0 66,764
Range 3 µs 8,744 ops/s
Variance ±21% (±3 µs) ±13%

Processing 1 folder(s)...
Updating xrt_smi_npu3.a from 30 files...
✓ Updated: npu3\xrt_smi_npu3.a
🔄 Files updated (4):
~ profile_cmd_chain_latency.json
~ profile_cmd_chain_throughput.json
~ recipe_cmd_chain_latency.json
~ recipe_cmd_chain_throughput.json

============================================================
SUMMARY:
Archives processed: 1/1
Total new files: 0
Total updated files: 4

Archive changes:
xrt_smi_npu3.a: 4 updated

AIESW-6823
AIESW-6824

…t configurations

[WHY]
- Default configurations showed high variance and suboptimal performance
- Throughput mode defaulted to depth=2, causing performance degradation
- Needed stable, repeatable configurations for validation testing
- Required sufficient iterations for framework warm-up and measurement stability

[HOW]
- Conducted extensive empirical testing (27+ samples per configuration)
- Set latency: 20 iterations x 1000 runs (depth=1 automatic in latency mode)
- Set throughput: 20 iterations x 1000 runs x depth=1 (explicit override)
- Validated depth=1 is mandatory for optimal throughput (depth>1 degrades 47-99%)
- Confirmed 20 iterations minimum for stable measurements (10 iters = +/-47% variance)
- Verified 1000 runs optimal for peak performance

[RESULTS]
- Latency: 14.2 us average, range 13-16 us, +/-3 us variance
- Throughput: 71,673 ops/s average, range 66,764-75,508 ops/s, +/-13% variance
- Peak throughput: 75,508 ops/s (highest observed across all testing)
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR optimizes cmd_chain performance test configurations based on empirical testing to achieve stable, repeatable results with minimal variance. The changes address high variance issues and suboptimal defaults by setting iterations to 20 and depth to 1 for both latency and throughput modes.

Changes:

  • Increased iterations from 1 to 20 for stable measurements
  • Set depth=1 for throughput mode (previously defaulted to 2, causing degradation)
  • Removed explicit depth parameter from latency mode (automatically uses depth=1)

Reviewed changes

Copilot reviewed 2 out of 5 changed files in this pull request and generated no comments.

File Description
profile_cmd_chain_throughput.json Updated iterations to 20, added explicit mode="throughput", and set depth=1 for optimal performance
profile_cmd_chain_latency.json Updated iterations to 20 and removed explicit depth parameter (latency mode auto-sets depth=1)

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@aktondak aktondak merged commit e998fb1 into Xilinx:main Jan 21, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants