Update device-model matrix with Qualcomm TTS component evidence
This commit is contained in:
1 parent
152d67ab86
commit
e4a4477929
24 files changed
+460
-8
No files matched your search
@@ -1,3 +1,5 @@
|
||||
# 2026-09-24 Qualcomm component expansion
|
||||
|
||||
The [Qwen3-TTS vocoder study](evidence/qwen_tts_vocoder_qualcomm/README.md) reuses a retained fixed-shape Code2Wav export and historical Workbench input to test numerical behavior on SA8775P and other Qualcomm settings. The fresh SA8775P GPU inference produces a saturated waveform, so its historical profile must not be interpreted as a usable TTS path. Workbench jobs for RB3, X Elite and SA8775P controls were still pending when this snapshot was written; their submission IDs are retained for completion. No complete on-device TTS stream or model-quality qualification is claimed.
|
||||
The [Qwen3-TTS vocoder study](evidence/qwen_tts_vocoder_qualcomm/README.md) reuses a retained fixed-shape Code2Wav export and historical Workbench input to test numerical behavior on SA8775P and other Qualcomm settings. The fresh SA8775P GPU inference produces a saturated waveform; RB3 produces an unsaturated but divergent waveform. Neither is numerically qualified as a usable TTS path. X Elite ONNX CPU output matches the local ONNX Runtime reference on the retained fixture; its profile and DirectML retry remain pending. Other Workbench jobs for RB3 profiling and SA8775P controls are also pending; their submission IDs are retained for completion. No complete on-device TTS stream or model-quality qualification is claimed.
|
||||
|
||||
The [talker decode-step attempt](evidence/qwen_tts_talker_qualcomm/README.md) pins a separate 28-layer source and synthetic cache fixture. Historical FP16 QNN context-binary compiles passed for S24, S25, SA8775P and X Elite, with same-fixture inference pending; RB3 rejected that floating-point-input artifact. Compile success is not a numerical or end-to-end pass.
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
# Qwen3-TTS talker decode-step Qualcomm qualification attempt
|
||||
|
||||
This is **one fixed-cache-bucket talker decode step**, not complete Qwen3-TTS generation. The retained 28-layer ONNX source model `mq3xre4rq` has SHA256 `41feb08517678e94d9301e992d0df610fc60e7c9faba5600703298c86554fd22`, FP32 hidden input `[1,1,1024]`, rotary and mask inputs, 28 K/V cache pairs at length 256, and outputs `[1,3072]` logits plus 56 cache tensors. Its historical export identifies the Qwen3-TTS 0.6B CustomVoice family but does not attest an exact checkpoint revision. The 1.78 GB source and test arrays remain outside Git under `/home/zhout/project/edge_infer/models/`.
|
||||
|
||||
The deterministic synthetic input dataset `d7dw6pgy2` has SHA256 `0bf538e1b64dfc9737dc4f925d61c6e4ffa5075a5dcd7afb1e85ac3bd2d9afea`. A local ONNX Runtime 1.29 CPU reference output has SHA256 `ee0ead70e33c02c7d3d6bcb757c5cf0fcbb9eb6fc75c34abfbe8a4479657d5be`. The fixture exercises the stated tensor shapes, but does not represent a real text-to-speech request or establish token/audio quality.
|
||||
|
||||
Historical FP16 QNN context-binary [S24](s24/compile_report.json), [S25](s25/compile_report.json), [SA8775P](sa8775p/compile_report.json), and [Snapdragon X Elite](xelite/compile_report.json) compile jobs succeeded. Their same-fixture NPU inference jobs were [submitted](s24/inference_submission.json), [submitted](s25/inference_submission.json), [submitted](sa8775p/inference_submission.json), and [submitted](xelite/inference_submission.json), respectively; none had a terminal result at this snapshot. The [RB3 compile](rb3/compile_report.json) rejected the floating-point input on this device. These are artifact-specific compile dispositions, not full-model support claims.
|
||||
|
||||
Next: retrieve terminal inference tensors, compare logits and every K/V output against the pinned CPU reference with an explicit tolerance, inspect actual placement, then profile a quality-passing decode step. Full device-local talker/predictor/vocoder streaming and power/memory qualification remain separate gates.
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"retrieved_utc": "2026-09-23T23:02:02.601946+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "jpx42jx1g",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jpx42jx1g/",
|
||||
"status": "FAILED",
|
||||
"status_message": "Tensor 'x' has a floating-point type which is not supported by the targeted device.\nPlease quantize the model including its I/O and try again.",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": null,
|
||||
"device": {
|
||||
"name": "Dragonwing RB3 Gen 2 Vision Kit",
|
||||
"os": "1.6",
|
||||
"attributes": [
|
||||
"os:qc_linux",
|
||||
"framework:tflite",
|
||||
"framework:onnx",
|
||||
"vendor:qualcomm",
|
||||
"abi:aarch64-oe-linux-gcc11",
|
||||
"format:iot",
|
||||
"chipset:qualcomm-qcs6490",
|
||||
"chipset:qcs6490",
|
||||
"chipset:qualcomm-dragonwing-qcs6490",
|
||||
"hexagon:v68",
|
||||
"soc-model:93",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"options": "--target_runtime qnn_context_binary --quantize_full_type float16",
|
||||
"hub_version": "aihub-2026.08.28.1"
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"retrieved_utc": "2026-09-23T23:01:57.519134+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "jpvdx28zp",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jpvdx28zp/",
|
||||
"status": "SUCCESS",
|
||||
"status_message": "",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mnowr3epq",
|
||||
"device": {
|
||||
"name": "Samsung Galaxy S24",
|
||||
"os": "14",
|
||||
"attributes": [
|
||||
"os:android",
|
||||
"framework:tflite",
|
||||
"framework:onnx",
|
||||
"abi:aarch64-android",
|
||||
"vendor:samsung",
|
||||
"format:phone",
|
||||
"chipset:qualcomm-snapdragon-8gen3",
|
||||
"chipset:sm8650",
|
||||
"hexagon:v75",
|
||||
"soc-model:57",
|
||||
"htp-supports-fp16:true",
|
||||
"htp-supports-weight-sharing:true",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"options": "--target_runtime qnn_context_binary --quantize_full_type float16",
|
||||
"hub_version": "aihub-2026.08.28.1"
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:56:26.151990+00:00",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"source_compile_job_id": "jpvdx28zp",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mnowr3epq",
|
||||
"input_dataset_id": "d7dw6pgy2",
|
||||
"device": "Samsung Galaxy S24",
|
||||
"options": "--compute_unit npu",
|
||||
"kind": "inference",
|
||||
"status": "SUBMITTED",
|
||||
"job_id": "j5687dyng",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/j5687dyng/"
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"retrieved_utc": "2026-09-23T23:01:59.036078+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "jgj74391g",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jgj74391g/",
|
||||
"status": "SUCCESS",
|
||||
"status_message": "",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mqv3y4xlm",
|
||||
"device": {
|
||||
"name": "Samsung Galaxy S25",
|
||||
"os": "15",
|
||||
"attributes": [
|
||||
"os:android",
|
||||
"framework:tflite",
|
||||
"framework:onnx",
|
||||
"abi:aarch64-android",
|
||||
"vendor:samsung",
|
||||
"format:phone",
|
||||
"chipset:qualcomm-snapdragon-8-elite-for-galaxy",
|
||||
"chipset:sm8750-ac",
|
||||
"hexagon:v79",
|
||||
"soc-model:69",
|
||||
"htp-supports-fp16:true",
|
||||
"htp-supports-weight-sharing:true",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"options": "--target_runtime qnn_context_binary --quantize_full_type float16",
|
||||
"hub_version": "aihub-2026.08.28.1"
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:56:23.375508+00:00",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"source_compile_job_id": "jgj74391g",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mqv3y4xlm",
|
||||
"input_dataset_id": "d7dw6pgy2",
|
||||
"device": "Samsung Galaxy S25",
|
||||
"options": "--compute_unit npu",
|
||||
"kind": "inference",
|
||||
"status": "SUBMITTED",
|
||||
"job_id": "jglyx1v25",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jglyx1v25/"
|
||||
}
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"retrieved_utc": "2026-09-23T23:02:00.249802+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "j5743w9l5",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/j5743w9l5/",
|
||||
"status": "SUCCESS",
|
||||
"status_message": "",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mqe0krw7n",
|
||||
"device": {
|
||||
"name": "SA8775P ADP",
|
||||
"os": "14",
|
||||
"attributes": [
|
||||
"os:android",
|
||||
"framework:tflite",
|
||||
"framework:onnx",
|
||||
"vendor:qualcomm",
|
||||
"abi:aarch64-android",
|
||||
"format:auto",
|
||||
"chipset:qualcomm-sa8775p",
|
||||
"hexagon:v73",
|
||||
"soc-model:52",
|
||||
"htp-supports-fp16:true",
|
||||
"htp-supports-weight-sharing:true",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"options": "--target_runtime qnn_context_binary --quantize_full_type float16",
|
||||
"hub_version": "aihub-2026.08.28.1"
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:56:16.513285+00:00",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"source_compile_job_id": "j5743w9l5",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mqe0krw7n",
|
||||
"input_dataset_id": "d7dw6pgy2",
|
||||
"device": "SA8775P ADP",
|
||||
"options": "--compute_unit npu",
|
||||
"kind": "inference",
|
||||
"status": "SUBMITTED",
|
||||
"job_id": "jgk249evg",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jgk249evg/"
|
||||
}
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"retrieved_utc": "2026-09-23T23:02:01.435333+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "jp1jxl62p",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jp1jxl62p/",
|
||||
"status": "SUCCESS",
|
||||
"status_message": "",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mqv3y1g0m",
|
||||
"device": {
|
||||
"name": "Snapdragon X Elite CRD",
|
||||
"os": "11",
|
||||
"attributes": [
|
||||
"os:windows",
|
||||
"format:compute",
|
||||
"framework:onnx",
|
||||
"vendor:qualcomm",
|
||||
"abi:aarch64-windows",
|
||||
"chipset:qualcomm-snapdragon-x-elite",
|
||||
"chipset:sc8380xp",
|
||||
"hexagon:v73",
|
||||
"soc-model:60",
|
||||
"htp-supports-fp16:true",
|
||||
"htp-supports-weight-sharing:true",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"options": "--target_runtime qnn_context_binary --quantize_full_type float16",
|
||||
"hub_version": "aihub-2026.08.28.1"
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:56:20.578740+00:00",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"source_compile_job_id": "jp1jxl62p",
|
||||
"source_model_id": "mq3xre4rq",
|
||||
"target_model_id": "mqv3y1g0m",
|
||||
"input_dataset_id": "d7dw6pgy2",
|
||||
"device": "Snapdragon X Elite CRD",
|
||||
"options": "--compute_unit npu",
|
||||
"kind": "inference",
|
||||
"status": "SUBMITTED",
|
||||
"job_id": "j5qlym6ep",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/j5qlym6ep/"
|
||||
}
|
||||
+7
-3
@@ -1,13 +1,17 @@
|
||||
# Qwen3-TTS Code2Wav component across Qualcomm devices
|
||||
|
||||
**The retained Qwen3-TTS Code2Wav export does not yet have a numerically qualified SA8775P GPU path.** A fresh inference on the exact hosted SA8775P ADP returned a severely saturated waveform on the same input for which original ONNX Runtime CPU and prior S25 GPU outputs remained unsaturated. Other submitted device jobs were pending at this evidence snapshot; they are not counted as passes.
|
||||
**The retained Qwen3-TTS Code2Wav export does not yet have a numerically qualified SA8775P or RB3 GPU path.** A fresh inference on the exact hosted SA8775P ADP returned a severely saturated waveform on the same input for which original ONNX Runtime CPU and prior S25 GPU outputs remained unsaturated. RB3 produced an unsaturated but divergent waveform. Other submitted profiles and device controls were pending at this evidence snapshot; they are not counted as passes.
|
||||
|
||||
The historical Workbench source model `mqyer339n` is a 423,655,047-byte ONNX graph with one FP32 input `[1,512,97]` and one 48,000-sample output. The [manifest](artifact_manifest.json) pins its SHA256, the retained Workbench fixture dataset `d7m80jl32`, a local ONNX Runtime 1.29 CPU output, compiled target downloads, and the prior [S25 GPU output](s25_reference_output.npz). The source export script identifies the Qwen3-TTS 0.6B CustomVoice model family, but did not attest the exact checkpoint revision; these results must not be promoted to a revision-qualified release claim. Large source/target artifacts and the fixture remain outside Git under `/home/zhout/project/edge_infer/models/`.
|
||||
|
||||
The [S25 historical inference](s25_reference_inference.json) on the same fixture differed from local FP32 ONNX CPU by **4.24% relative L2 / 27.46 dB SNR** ([comparison](s25_cpu_comparison.json)); that waveform has no listening-quality tolerance. A fresh [SA8775P inference](sa8775p/inference_report.json) used historical compiled TFLite model `mnze95don` and requested GPU. Its [output](sa8775p/device_output.npz) had **96.63%** of samples at absolute amplitude at least 0.999, RMS **0.989** versus CPU **0.0837**, relative L2 **11.832**, and SNR **−21.46 dB**. The fresh [profile](sa8775p/profile_report.json) attributed 403 execution-detail rows to CPU and 335 to GPU; 100 component samples had nearest-rank p50/p95 **1.776/1.880 s** (minimum 1.675 s). The [audit](sa8775p/audit_report.json) pins all output hashes, waveform differences and placement. This is measured execution of a **numerically failed** output, not a usable TTS performance result. The [SA8775P compile record](sa8775p/compile_report.json) pins the artifact and source IDs.
|
||||
|
||||
The re-fetched *historical* [SA8775P profile](sa8775p/historical_profile_report.json) has 100 component samples, nearest-rank p50/p95 **1.751/1.874 s**, and 403 CPU plus 335 GPU execution-detail rows. The *historical* [RB3 profile](rb3/historical_profile_report.json) has 100 samples, p50/p95 **3.143/3.189 s**, also with 403 CPU plus 335 GPU rows. Their previously quoted 1.701/3.107 s estimated-time fields are sample minima, not medians. Both profiles exclude talker/predictor, stage handoff, streaming and full-request time. The SA and RB3 TFLite target downloads are bitwise identical, but that does not establish matching runtime outputs or quality.
|
||||
The fresh [RB3 inference](rb3/inference_report.json) on the same fixture returned a finite, **unsaturated** waveform ([output](rb3/device_output.npz)). Its [comparison](rb3/inference_comparison.json) against original ONNX CPU was **15.73% relative L2 / 16.06 dB SNR**, still without a listening-quality threshold. Thus the bitwise identical SA and RB3 TFLite target downloads produce materially different outputs on their respective devices; target file identity does not establish runtime numerical parity. The fresh RB3 profile was still pending at this snapshot.
|
||||
|
||||
Current [RB3](rb3/inference_submission.json) fresh job submissions, [SA CPU](sa8775p/cpu_control/inference_submission.json) and [FP32-preserving GPU](sa8775p/gpu_fp32/inference_submission.json) controls, and X Elite [DirectML GPU](xelite/gpu/inference_submission.json) and [CPU](xelite/cpu/inference_submission.json) submissions remain pending in this snapshot. The [X Elite ONNX compile](xelite/compile_report.json) passed after the older TFLite target was rejected on Windows ARM. Pending jobs have no numerical or latency conclusion. The [collector](../../../../experiments/collect_aihub_component.py) retrieves their terminal reports without resubmitting jobs, and the [audit script](../../../../experiments/audit_qwen_tts_vocoder_qualcomm.py) checks source/fixture hashes, device and model IDs, actual placement, waveform error, saturation and sample percentiles.
|
||||
The re-fetched *historical* [SA8775P profile](sa8775p/historical_profile_report.json) has 100 component samples, nearest-rank p50/p95 **1.751/1.874 s**, and 403 CPU plus 335 GPU execution-detail rows. The *historical* [RB3 profile](rb3/historical_profile_report.json) has 100 samples, p50/p95 **3.143/3.189 s**, also with 403 CPU plus 335 GPU rows. Their previously quoted 1.701/3.107 s estimated-time fields are sample minima, not medians. Both profiles exclude talker/predictor, stage handoff, streaming and full-request time.
|
||||
|
||||
The X Elite [ONNX CPU inference](xelite/cpu/inference_report.json) succeeded on the pinned fixture. Its [waveform comparison](xelite/cpu/inference_comparison.json) to the original local ONNX Runtime CPU output was **8.09e-7 relative L2 / 121.84 dB SNR**, with no saturation. This is near-source component parity on one fixture; the CPU profile and listening-quality gate remain open. The first X Elite [GPU inference](xelite/gpu/inference_report.json) and [profile](xelite/gpu/profile_report.json) jobs failed because Workbench rejects specifying both compute unit and ONNX execution provider; the [DirectML retry](xelite/directml/inference_submission.json) specifies DirectML alone. The [X Elite ONNX compile](xelite/compile_report.json) passed after the older TFLite target was rejected on Windows ARM.
|
||||
|
||||
The fresh [RB3 profile](rb3/profile_submission.json), [SA CPU](sa8775p/cpu_control/inference_submission.json) and [FP32-preserving GPU](sa8775p/gpu_fp32/inference_submission.json) controls, X Elite [DirectML retry](xelite/directml/inference_submission.json) and [CPU profile](xelite/cpu/profile_submission.json) remained pending in this snapshot. Pending jobs have no numerical or latency conclusion. The [collector](../../../../experiments/collect_aihub_component.py) retrieves their terminal reports without resubmitting jobs, and the [audit script](../../../../experiments/audit_qwen_tts_vocoder_qualcomm.py) checks source/fixture hashes, device and model IDs, actual placement, waveform error, saturation and sample percentiles.
|
||||
|
||||
This is one fixed vocoder component with a retained input, not complete Qwen3-TTS. The next gates are a quality-passing SA/RB3/X Elite target, talker and code predictor numerical checks, device-resident handoff/co-residency, playable streaming, cancellation, memory admission and sustained power/thermal profiling.
|
||||
BIN
Binary file not shown.
+30
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"scope": "one Qwen3-TTS Code2Wav output on retained fixture; no complete TTS or profile",
|
||||
"status": "component_executed_quality_unqualified",
|
||||
"inference_job_id": "jg9zmkv8p",
|
||||
"model_id": "mn0wyzd3q",
|
||||
"input_dataset_id": "d7m80jl32",
|
||||
"output_sha256": "476cae29892fbd6d93b8b4f3790e26bc6907cc2c8987bab3c141e1a585aea23a",
|
||||
"cpu_source_vs_rb3": {
|
||||
"relative_l2": 0.15731895608191257,
|
||||
"snr_db": 16.06437888182974,
|
||||
"max_abs": 0.11359542608261108,
|
||||
"cosine": 0.988868865169743,
|
||||
"reference_rms": 0.08373439205485074,
|
||||
"output_rms": 0.07852377091606144,
|
||||
"output_saturated_fraction_abs_ge_0_999": 0.0
|
||||
},
|
||||
"s25_gpu_vs_rb3": {
|
||||
"relative_l2": 0.1529833843922324,
|
||||
"snr_db": 16.307114711572623,
|
||||
"max_abs": 0.11407470703125,
|
||||
"cosine": 0.9896069628698109,
|
||||
"reference_rms": 0.08376787228276501,
|
||||
"output_rms": 0.07852377091606144,
|
||||
"output_saturated_fraction_abs_ge_0_999": 0.0
|
||||
},
|
||||
"limits": [
|
||||
"No listening or task-level waveform tolerance.",
|
||||
"Profile job was pending at this evidence snapshot."
|
||||
]
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:49:40.022849+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "jg9zmkv8p",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jg9zmkv8p/",
|
||||
"status": "SUCCESS",
|
||||
"status_message": "",
|
||||
"options": "--compute_unit gpu",
|
||||
"hub_version": "aihub-2026.09.11.0",
|
||||
"device": {
|
||||
"name": "Dragonwing RB3 Gen 2 Vision Kit",
|
||||
"os": "1.6",
|
||||
"attributes": [
|
||||
"os:qc_linux",
|
||||
"framework:tflite",
|
||||
"framework:onnx",
|
||||
"vendor:qualcomm",
|
||||
"abi:aarch64-oe-linux-gcc11",
|
||||
"format:iot",
|
||||
"chipset:qualcomm-qcs6490",
|
||||
"chipset:qcs6490",
|
||||
"chipset:qualcomm-dragonwing-qcs6490",
|
||||
"hexagon:v68",
|
||||
"soc-model:93",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"model_id": "mn0wyzd3q",
|
||||
"input_dataset_id": "d7m80jl32",
|
||||
"outputs": "device_output.npz"
|
||||
}
|
||||
BIN
Binary file not shown.
+30
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"scope": "one Qwen3-TTS Code2Wav output on retained fixture; no complete TTS or profile",
|
||||
"status": "component_inference_numerically_compared",
|
||||
"inference_job_id": "j5wl78nmp",
|
||||
"model_id": "mnz079ezm",
|
||||
"input_dataset_id": "d7m80jl32",
|
||||
"output_sha256": "de7e4605bc6508c19c22ca3e3f5d2d67c1002908aa1e3cebfe7f40bd040f304a",
|
||||
"cpu_source_vs_xelite_cpu": {
|
||||
"relative_l2": 8.086912399814565e-07,
|
||||
"snr_db": 121.84434522578867,
|
||||
"max_abs": 9.5367431640625e-07,
|
||||
"cosine": 0.9999999999996769,
|
||||
"reference_rms": 0.08373439205485074,
|
||||
"output_rms": 0.0837343848397309,
|
||||
"output_saturated_fraction_abs_ge_0_999": 0.0
|
||||
},
|
||||
"s25_gpu_vs_xelite_cpu": {
|
||||
"relative_l2": 0.04236831072350974,
|
||||
"snr_db": 27.45917703014474,
|
||||
"max_abs": 0.10591856762766838,
|
||||
"cosine": 0.9991021841139998,
|
||||
"reference_rms": 0.08376787228276501,
|
||||
"output_rms": 0.0837343848397309,
|
||||
"output_saturated_fraction_abs_ge_0_999": 0.0
|
||||
},
|
||||
"limits": [
|
||||
"No listening or task-level waveform tolerance.",
|
||||
"Profile job was pending at this evidence snapshot."
|
||||
]
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:58:54.978588+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "j5wl78nmp",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/j5wl78nmp/",
|
||||
"status": "SUCCESS",
|
||||
"status_message": "",
|
||||
"options": "--compute_unit cpu",
|
||||
"hub_version": "aihub-2026.09.11.0",
|
||||
"device": {
|
||||
"name": "Snapdragon X Elite CRD",
|
||||
"os": "11",
|
||||
"attributes": [
|
||||
"os:windows",
|
||||
"format:compute",
|
||||
"framework:onnx",
|
||||
"vendor:qualcomm",
|
||||
"abi:aarch64-windows",
|
||||
"chipset:qualcomm-snapdragon-x-elite",
|
||||
"chipset:sc8380xp",
|
||||
"hexagon:v73",
|
||||
"soc-model:60",
|
||||
"htp-supports-fp16:true",
|
||||
"htp-supports-weight-sharing:true",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"model_id": "mnz079ezm",
|
||||
"input_dataset_id": "d7m80jl32",
|
||||
"outputs": "device_output.npz"
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:53:20.155041+00:00",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"source_compile_job_id": "j5qlyz8op",
|
||||
"target_model_id": "mnz079ezm",
|
||||
"input_dataset_id": "d7m80jl32",
|
||||
"device": "Snapdragon X Elite CRD",
|
||||
"options": "--onnx_execution_providers directml",
|
||||
"kind": "inference",
|
||||
"status": "SUBMITTED",
|
||||
"job_id": "jp2rwvy6g",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jp2rwvy6g/",
|
||||
"reason": "retry without conflicting compute_unit option"
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:53:22.805694+00:00",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"source_compile_job_id": "j5qlyz8op",
|
||||
"target_model_id": "mnz079ezm",
|
||||
"input_dataset_id": null,
|
||||
"device": "Snapdragon X Elite CRD",
|
||||
"options": "--onnx_execution_providers directml",
|
||||
"kind": "profile",
|
||||
"status": "SUBMITTED",
|
||||
"job_id": "jpyox7305",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jpyox7305/",
|
||||
"reason": "retry without conflicting compute_unit option"
|
||||
}
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:53:05.002306+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "jpe7z83v5",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jpe7z83v5/",
|
||||
"status": "FAILED",
|
||||
"status_message": "Must specify only one of --compute_unit and --onnx_execution_providers. They set the same options, with the latter giving more control.",
|
||||
"options": "--compute_unit gpu --onnx_execution_providers directml",
|
||||
"hub_version": "aihub-2026.09.11.0",
|
||||
"device": {
|
||||
"name": "Snapdragon X Elite CRD",
|
||||
"os": "11",
|
||||
"attributes": [
|
||||
"os:windows",
|
||||
"format:compute",
|
||||
"framework:onnx",
|
||||
"vendor:qualcomm",
|
||||
"abi:aarch64-windows",
|
||||
"chipset:qualcomm-snapdragon-x-elite",
|
||||
"chipset:sc8380xp",
|
||||
"hexagon:v73",
|
||||
"soc-model:60",
|
||||
"htp-supports-fp16:true",
|
||||
"htp-supports-weight-sharing:true",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"model_id": "mnz079ezm",
|
||||
"input_dataset_id": "d7m80jl32"
|
||||
}
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"timestamp_utc": "2026-09-23T22:53:06.078386+00:00",
|
||||
"qai_hub_version": "0.55.0",
|
||||
"facility": "Qualcomm AI Hub Workbench",
|
||||
"job_id": "jgzlm8kx5",
|
||||
"url": "https://workbench.aihub.qualcomm.com/jobs/jgzlm8kx5/",
|
||||
"status": "FAILED",
|
||||
"status_message": "Must specify only one of --compute_unit and --onnx_execution_providers. They set the same options, with the latter giving more control.",
|
||||
"options": "--compute_unit gpu --onnx_execution_providers directml",
|
||||
"hub_version": "aihub-2026.09.11.0",
|
||||
"device": {
|
||||
"name": "Snapdragon X Elite CRD",
|
||||
"os": "11",
|
||||
"attributes": [
|
||||
"os:windows",
|
||||
"format:compute",
|
||||
"framework:onnx",
|
||||
"vendor:qualcomm",
|
||||
"abi:aarch64-windows",
|
||||
"chipset:qualcomm-snapdragon-x-elite",
|
||||
"chipset:sc8380xp",
|
||||
"hexagon:v73",
|
||||
"soc-model:60",
|
||||
"htp-supports-fp16:true",
|
||||
"htp-supports-weight-sharing:true",
|
||||
"framework:qnn"
|
||||
]
|
||||
},
|
||||
"model_id": "mnz079ezm",
|
||||
"shapes": {}
|
||||
}
|
||||
@@ -12,7 +12,9 @@ On a hosted [Galaxy S24 Spark attention-layer experiment](../../../e2e_expansion
|
||||
|
||||
The same W8A16 layer also ran on hosted [Snapdragon X Elite CRD](../../../e2e_expansion_20260923/evidence/spark_xelite_full_attention/README.md) and [SA8775P ADP](../../../e2e_expansion_20260923/evidence/spark_sa8775_full_attention/README.md) NPUs, with pinned-fixture outputs identical to S24/S25; the 100-sample component p50/p95 was 1.433/1.606 ms and 1.837/2.079 ms, respectively. On [RB3 Gen 2 / QCS6490](../../../e2e_expansion_20260923/evidence/spark_rb3_full_attention/README.md), that W8A16 graph failed QNN DLC loading even after target-specific recompilation. An FP32 ONNX CPU layer then passed with source-relative L2 below 9e-7, while a calibrated W8A8 NPU layer executed but had 20.9% hidden-state relative L2 and remains numerically unqualified. These hosted component outcomes do not establish full generation or comparable device speed.
|
||||
|
||||
A [Qwen3-TTS Code2Wav follow-up](../../../e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md) recovered source and target artifacts, a retained fixture, and raw historical profiles. On SA8775P, fresh GPU-requested inference saturated 96.63% of waveform samples and differed from original ONNX CPU by 11.832 relative L2; this tested vocoder path is numerically unqualified. Historical SA8775P/RB3 profile p50/p95 values were 1.751/1.874 s and 3.143/3.189 s, respectively, with both CPU and GPU rows; earlier estimated-time fields were minima. X Elite ONNX compile passed after the old TFLite rejection. Fresh profile/control/other-device jobs remain pending, so they have no new execution conclusion.
|
||||
A [Qwen3-TTS Code2Wav follow-up](../../../e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md) recovered source and target artifacts, a retained fixture, and raw historical profiles. On SA8775P, fresh GPU-requested inference saturated 96.63% of waveform samples and differed from original ONNX CPU by 11.832 relative L2; this tested vocoder path is numerically unqualified. Fresh RB3 inference was unsaturated but differed from CPU by 15.73% relative L2 (16.06 dB SNR), also without a listening-quality gate. Historical SA8775P/RB3 profile p50/p95 values were 1.751/1.874 s and 3.143/3.189 s, respectively, with both CPU and GPU rows; earlier estimated-time fields were minima. X Elite ONNX CPU vocoder inference passed on the same fixture with 8.09e-7 relative L2 versus local ONNX CPU; its profile and DirectML retry were pending. None is a complete TTS stream.
|
||||
|
||||
A separate [Qwen3-TTS talker decode-step attempt](../../../e2e_expansion_20260924/evidence/qwen_tts_talker_qualcomm/README.md) recovered a 28-layer ONNX export and synthetic fixed-cache fixture. Historical FP16 QNN context-binary compiles passed for S24, S25, SA8775P and X Elite, but the same-fixture inference jobs were pending. An RB3 compile rejected floating-point input. No talker runtime or numerical pass is implied by those compile outcomes.
|
||||
|
||||
## Configuration × model
|
||||
|
||||
@@ -79,7 +81,7 @@ NOT E2E means no complete device/model workload was verified. “Scoped E2E” i
|
||||
| PC CPU+iGPU+NPU +/- discrete GPU, joint model execution | MiniCPM-o 4.5 | NOT_E2E_PROFILEABLE | No qualifying same-model multi-accelerator deployment/artifact plan or overlap/recovery evidence. Individual routes are not a joint pipeline. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| PC CPU+iGPU+NPU +/- discrete GPU, joint model execution | InternVLA-A1 | NOT_E2E_PROFILEABLE | No qualifying same-model multi-accelerator deployment/artifact plan or overlap/recovery evidence. Individual routes are not a joint pipeline. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| PC Snapdragon X Elite CRD / AI Hub | Spark-X2.5 | COMPONENT_NPU_INFERENCE_PROFILED; NOT_E2E_PROFILEABLE | A real Spark-X2.5-1.7B one-layer W8A16 QDQ attention artifact, compiled as QNN DLC, ran on the exact hosted Snapdragon X Elite CRD (Windows 11 ARM64). Inference returned finite hidden/new-K/new-V tensors bitwise identical to the prior S24/S25 NPU outputs on the same fixture; the profile attributed all 73 execution-detail rows to NPU. Across 100 component samples, nearest-rank p50/p95 was 1.433/1.606 ms; the 1.346 ms estimated-time field is the minimum. Hidden/K/V relative L2 versus original FP32 ONNX CPU was 1.351%/0.377%/0.650%, without a next-token quality tolerance. There is no complete 28-layer prefill/decode/KV-ring/sampling loop, resident Omni controller or complete-request timing. | Qualify a complete X Elite resident artifact/controller with state, token quality, memory admission/cancel and sustained power; [X Elite NPU raw evidence](../../../e2e_expansion_20260923/evidence/spark_xelite_full_attention/README.md). |
|
||||
| PC Snapdragon X Elite CRD / AI Hub | Qwen3-TTS 0.6B CustomVoice | COMPONENT_ONNX_VOCODER_COMPILE_PASS; NOT_E2E_PROFILEABLE | Historical QNN talker profiling exists without a numerical or full-pipeline gate. The older TFLite vocoder target was rejected on this Windows ARM device; a fresh ONNX vocoder compile passed, but its explicit DirectML GPU and CPU inference/profile jobs were pending at this snapshot. No waveform or actual placement conclusion follows from compile alone. | Retrieve and audit the pending ONNX vocoder jobs, qualify talker/predictor and complete local streaming, memory and sustained behavior; [vocoder evidence](../../../e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md). |
|
||||
| PC Snapdragon X Elite CRD / AI Hub | Qwen3-TTS 0.6B CustomVoice | COMPONENT_ONNX_CPU_VOCODER_PARITY_PASS; NOT_E2E_PROFILEABLE | The fresh ONNX vocoder inference on the exact Windows 11 ARM64 X Elite CRD requested CPU and returned an unsaturated waveform on the pinned fixture, matching local ONNX Runtime CPU with 8.09e-7 relative L2 and 121.84 dB SNR. This is one component output, without a listening-quality gate. CPU profile and corrected DirectML inference/profile jobs were pending; the initial DirectML submissions failed because mutually exclusive run options were specified. Historical QNN talker profiling lacks a same-fixture numerical or full-pipeline gate. The older TFLite vocoder target was rejected on Windows ARM; no complete stream exists. | Audit CPU profile and DirectML retry, qualify talker/predictor and complete local streaming, memory and sustained behavior; [vocoder evidence](../../../e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md). |
|
||||
| PC Snapdragon X Elite CRD / AI Hub | Qwen3.8-27B | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| PC Snapdragon X Elite CRD / AI Hub | MiniCPM-o 4.5 | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| PC Snapdragon X Elite CRD / AI Hub | InternVLA-A1 | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
@@ -99,7 +101,7 @@ NOT E2E means no complete device/model workload was verified. “Scoped E2E” i
|
||||
| Embedded SA8775P ADP / AI Hub | MiniCPM-o 4.5 | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| Embedded SA8775P ADP / AI Hub | InternVLA-A1 | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| Embedded RB3 Gen 2 / QCS6490 / AI Hub | Spark-X2.5 | COMPONENT_CPU_PARITY_PASS; COMPONENT_NPU_NUMERIC_UNQUALIFIED; NOT_E2E_PROFILEABLE | On the exact hosted Dragonwing RB3 Gen 2 Vision Kit (QCS6490, QC Linux 1.6), the reused S24 W8A16 QNN DLC and a separately RB3-compiled W8A16 DLC each failed inference/profile at QnnModel_composeGraphsFromDlc: MODEL_GRAPH_ERROR. An FP32 ONNX one-layer CPU route passed with all 56 profile rows on CPU, source-relative hidden/K/V L2 of 8.73e-7/2.98e-7/3.37e-7 and 100-sample component p50/p95 19.304/21.113 ms. A calibrated W8A8 QNN DLC ran with all 61 rows on NPU and p50/p95 5.610/5.761 ms, but hidden/K/V relative L2 was 20.914%/1.702%/4.413% versus FP32 CPU, without a next-token quality gate. These are different precisions, not a qualified speedup; no complete 28-layer prefill/decode/KV-ring/sampling, local Omni controller or complete-request timing exists. | Improve representative W8A8 calibration or find another compatible quality-passing artifact; validate token parity, then full device-resident generation, admission/cancel and sustained power; [RB3 raw evidence](../../../e2e_expansion_20260923/evidence/spark_rb3_full_attention/README.md). |
|
||||
| Embedded RB3 Gen 2 / QCS6490 / AI Hub | Qwen3-TTS 0.6B CustomVoice | COMPONENT_VOCODER_PROFILE_ONLY; NOT_E2E_PROFILEABLE | The historical TFLite vocoder profile re-fetched with 100 samples at nearest-rank p50/p95 3.143/3.189 s and 403 CPU plus 335 GPU execution-detail rows. Its estimated-time field 3.107 s is the minimum, not median. Fresh same-fixture inference/profile was pending, so numerical quality is unknown. The historical NPU talker build was rejected for floating-point inputs; no full model pipeline exists. | Retrieve fresh vocoder output and placement, establish a quality-passing integer talker artifact, then validate complete local execution, memory and sustained behavior; [vocoder evidence](../../../e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md). |
|
||||
| Embedded RB3 Gen 2 / QCS6490 / AI Hub | Qwen3-TTS 0.6B CustomVoice | COMPONENT_VOCODER_INFERENCE_NUMERIC_UNQUALIFIED; NOT_E2E_PROFILEABLE | Fresh same-fixture TFLite GPU-requested vocoder inference returned a finite unsaturated waveform, but relative L2 versus original ONNX CPU was 15.73% (16.06 dB SNR), without a listening-quality tolerance; it is not a qualified audio path. The historical mixed CPU+GPU profile re-fetched with 100 samples at nearest-rank p50/p95 3.143/3.189 s and 403 CPU plus 335 GPU execution-detail rows. Its estimated-time field 3.107 s is the minimum, not median. The fresh profile was pending. The historical NPU talker build was rejected for floating-point inputs; no full model pipeline exists. | Audit the fresh profile, establish waveform quality and a compatible integer talker artifact, then validate complete local execution, memory and sustained behavior; [vocoder evidence](../../../e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md). |
|
||||
| Embedded RB3 Gen 2 / QCS6490 / AI Hub | Qwen3.8-27B | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| Embedded RB3 Gen 2 / QCS6490 / AI Hub | MiniCPM-o 4.5 | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
| Embedded RB3 Gen 2 / QCS6490 / AI Hub | InternVLA-A1 | NOT_E2E_PROFILEABLE | No complete qualified target artifact and device-local stateful Omni backend. Hub jobs provide component execution, not an on-device generation/streaming controller; ADB has no attached device. | Supply and validate the missing matching artifact/backend, then run the complete specified workload. |
|
||||
|
||||
@@ -15,7 +15,9 @@ remain open; the 2026-09-22 audit remains the historical baseline.
|
||||
|
||||
The [Spark hosted Qualcomm component expansion](../../benchmarks/edge_harness/results/e2e_expansion_20260923/evidence/spark_s24_full_attention/README.md) advances M1 only to one real fixed-shape decoder attention layer. The same W8A16 QNN DLC ran on S24, Snapdragon X Elite CRD and SA8775P ADP NPUs with identical outputs on one pinned fixture; S25 had prior separate component evidence. On [RB3 Gen 2](../../benchmarks/edge_harness/results/e2e_expansion_20260923/evidence/spark_rb3_full_attention/README.md), the tested W8A16 graph failed QNN loading even after an exact-device compile. FP32 ONNX ran on CPU with near-source parity, while calibrated W8A8 ran on NPU but had 20.9% hidden-state relative L2 and remains numerically unqualified. These are component C results, not full M1: device-local 28-layer prefill/continuous decode, KV/ring, sampling, token quality, admission/cancellation, complete-request timing and sustained power/thermal gates remain open. AI Hub is the test facility, not a deployment dependency.
|
||||
|
||||
The [Qwen3-TTS Code2Wav Qualcomm follow-up](../../benchmarks/edge_harness/results/e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md) adds a retained same-fixture numerical check to M2. A fresh SA8775P GPU-requested output saturated 96.63% of samples and differs from original ONNX CPU by 11.832 relative L2, so the tested vocoder target fails the numerical gate despite historical component profiling. Historical SA8775P and RB3 vocoder profiles have mixed CPU/GPU placement; their estimated-time fields were minima. X Elite ONNX compile passed, while RB3/X Elite runtime and SA control jobs remained pending at this snapshot. M2 still requires a quality-passing talker/predictor/vocoder set, device-local co-residency and handoff, playable streaming and sustained memory/power validation.
|
||||
The [Qwen3-TTS Code2Wav Qualcomm follow-up](../../benchmarks/edge_harness/results/e2e_expansion_20260924/evidence/qwen_tts_vocoder_qualcomm/README.md) adds a retained same-fixture numerical check to M2. A fresh SA8775P GPU-requested output saturated 96.63% of samples and differs from original ONNX CPU by 11.832 relative L2, so the tested vocoder target fails the numerical gate despite historical component profiling. Historical SA8775P and RB3 vocoder profiles have mixed CPU/GPU placement; their estimated-time fields were minima. RB3 TFLite GPU-requested inference returned an unsaturated but 15.73%-relative-L2 divergent waveform; its fresh profile was pending. X Elite ONNX CPU inference matched the local ONNX Runtime output with 8.09e-7 relative L2, while its profile, DirectML retry and SA controls remained pending. M2 still requires a quality-passing talker/predictor/vocoder set, device-local co-residency and handoff, playable streaming and sustained memory/power validation.
|
||||
|
||||
A separate [28-layer talker decode-step attempt](../../benchmarks/edge_harness/results/e2e_expansion_20260924/evidence/qwen_tts_talker_qualcomm/README.md) retains a synthetic fixed-cache fixture and CPU reference. Historical FP16 QNN context-binary compiles passed for S24, S25, SA8775P and X Elite; their same-fixture NPU inference was pending at this snapshot. RB3 rejected that floating-point-input artifact. None advances M2 to numerical talker or full-stream qualification yet.
|
||||
|
||||
The [WSL CPU expansion](../../benchmarks/edge_harness/results/e2e_expansion_20260923/README.md)
|
||||
adds constrained three-stage MiniCPM-o text-to-speech requests and a CPU-only
|
||||
|
||||
Reference in new issue
Block a user