[Accuracy] PersonaPlex FP16 SwiGLU rounds SiLU before the gate product
I maintainer di solito rispondono entro 1 giorno
@chaofengw-nv ci sta già lavorando.
Dal 18/10/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Summary
PersonaPlex FP16 SwiGLU MLPs round the activation earlier than the reference does.
- Reference (pinned Moshi,
gating.py): thetorch.compilegating kernel takes the Halfgateandupprojections, computes
SiLU(gate) * upin FP32, and rounds the product to Half once. - Family graph:
graph_blocks.add_swiglu_mlpand the dual-profile_swiglu_mlpcomputesigmoid(gate),
gate * sigmoid(gate)and the product withupall in the work dtype, so each step is rounded to Half.
Minimal counterexample
The inputs are gate = 7/64 and up = 1.5, which are exact in Half and BF16.
- Reference:
Half(SiLU32(gate) * up) = 0.08648681640625. - Current graph:
Half(Half(SiLU(gate)) * up) = 0.0865478515625.
The two results differ by one Half ULP. The FP32 product is about 600 FP32 ULPs from a Half rounding boundary, so the
outcome does not depend on the sigmoid implementation.
Evidence on real data
These results come from GB300 with TensorRT 11.2, using the reference FP16 run of the PersonaPlex audio-parity clip 7.
- Temporal gating, layers 0/15/31, steps 0/27/28:
- Half projections plus the FP32 pointwise product reproduce the reference gating output bitwise in 7 of 9 cases.
The other two (layer 0 at steps 0 and 27) differ in 53 and 59 elements, cause not verified. - Eager Half composition differs in 1,706-2,272 of 4,096 output elements.
- The family graph as built differs in 1,748-2,292 of 4,096.
- Half projections plus the FP32 pointwise product reproduce the reference gating output bitwise in 7 of 9 cases.
- Depth transformer: the same rounding is a candidate contributor to the depth-step differences under investigation.
The full-model effect is not established yet.
Impact
Every FP16 (and BF16) SwiGLU MLP output in the PersonaPlex temporal and depth transformers is affected. FP32 builds are
not affected.
- Lingua principale
- Python
- Stelle
- 276
- Fork
- 73
- Merge medio
- 1g 14h
- PR unite (30g)
- 157
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di NVIDIA/TensorRT-Model-Connect
-
Docs: ITrtModule::forward() output-buffer lifetime and dtype contract are undocumentedForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
NVIDIA/TensorRT-Model-Connect#1126 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[Accuracy] PersonaPlex FP16 RMSNorm keeps FP32 weights that the reference stores in HalfForse già presa @chaofengw-nv l’ha presa 3 giorni fa. Apertabug
NVIDIA/TensorRT-Model-Connect#1799 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[Accuracy] PersonaPlex FP16 residuals skip linear-output roundingForse già presa @chaofengw-nv l’ha presa 3 giorni fa. Apertabug
NVIDIA/TensorRT-Model-Connect#1796 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[Accuracy] PersonaPlex RoPE uses different coefficient and rotation precisionForse già presa @chaofengw-nv l’ha presa 3 giorni fa. Apertabug
NVIDIA/TensorRT-Model-Connect#1790 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[Accuracy] PersonaPlex FP16 depth input skips the reference's Half roundingForse già presa @chaofengw-nv l’ha presa 3 giorni fa. Aperta
NVIDIA/TensorRT-Model-Connect#1788 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di NVIDIA/TensorRT-Model-Connect
Issue simili
-
[Bug] Unit tests reach real Bedrock call paths without patching the modelForse già presa @proton0210 l’ha presa oggi. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
aws-samples/sample-aws-genai-db-modernizer#1318 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
pyarrow-25.0.1-cp310-cp310-manylinux_2_28_x86_64.whl: 1 vulnerabilities (highest severity is: 5.3)ApertaMend: dependency security vulnerability
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
capitalone/locopy#394 ·
-
[Bug] Unhandled ValueError terminates watchdog thread when GISRC value contains multiple colonsApertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
sdk-typescript: unquoted COPY globs in shell form are silently dropped from the image build contextApertabug javascript
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
ietf-tools/datatracker#11922 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno