antirez / antirez/h3.c

Temporary Array is too large for kernel. Encode failed.

Aperta
#15 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C
Stelle
2.7k
Fork
210
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Device: M3 Ultra (256GB)
OS: macOS Sequoia 15.7.1

The issue: longer duration (>~4-5seconds) video generation fails consistently with `Temporary Array is too large for kernel. Encode failed.`

A few examples (cmd + output):
```
% ./h3 --model ~/models/MiniMax-H3 -p "" -o outputs/releasenotes1.mp4 --frames 124 --steps 20 --layers 50 --reuse 1
tokenizer 1/1
text encoder 50/50
refine text 1/1
precompute AdaLN 50/50
load transformer core 50/50
denoise 0/20 /AppleInternal/Library/BuildRoots/4~B5vFugBcKzdCtMw80UR1WFCTSITbUVQOwkJg1SQ/Library/Caches/com.apple.xbs/Sources/MetalPerformanceShaders/MPSNDArray/Kernels/MPSNDArrayMultiaryKernel.mm:2644: failed assertion `[MPSNDArrayMatrixMultiplication encodeToCommandBuffer:] destination: [
Array: (null) Rank: 4 OffsetBytes:0 MPSDataTypeBFloat16 Device: Apple M3 Ultra MTLBuffer: 0x0 IOSurfaceBacked: NO
- dimensionLengths = [ 15527, 15527, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- sliceLengths = [ 15527, 15527, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- sliceOffsets = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
- dimensionOrder = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ]
- transposed sliceLengths = [ 15527, 15527, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- strideElements = [ 1, 15528, 241103256, 13501782336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
- transposed strideElems = [ 1, 15528, 241103256, 13501782336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
Temporary Array - readCount = 1
] is too large for kernel. Encode failed.
```

```
% ./h3 --model ~/models/MiniMax-H3 -p "" --ref-image inputs/test.jpg -o outputs/releasenotes1.mp4 --frames 140 --steps 20

tokenizer 1/1
video VAE encoder 9/9
Qwen vision 27/27
text encoder 50/50
refine text 1/1
precompute AdaLN 50/50
load transformer core 50/50
denoise 0/20 /AppleInternal/Library/BuildRoots/4~B5vFugBcKzdCtMw80UR1WFCTSITbUVQOwkJg1SQ/Library/Caches/com.apple.xbs/Sources/MetalPerformanceShaders/MPSNDArray/Kernels/MPSNDArrayMultiaryKernel.mm:2644: failed assertion `[MPSNDArrayMatrixMultiplication encodeToCommandBuffer:] destination: [
Array: (null) Rank: 4 OffsetBytes:0 MPSDataTypeBFloat16 Device: Apple M3 Ultra MTLBuffer: 0x0 IOSurfaceBacked: NO
- dimensionLengths = [ 18416, 18416, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- sliceLengths = [ 18416, 18416, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- sliceOffsets = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
- dimensionOrder = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ]
- transposed sliceLengths = [ 18416, 18416, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- strideElements = [ 1, 18416, 339149056, 18992347136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
- transposed strideElems = [ 1, 18416, 339149056, 18992347136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
Temporary Array - readCount = 1
] is too large for kernel. Encode failed.
'
```

```
% ./h3 --model ~/models/MiniMax-H3 -p "" --ref-image inputs/test.jpg -o outputs/releasenotes1.mp4 --seconds 6 --steps 50

tokenizer 1/1
video VAE encoder 9/9
Qwen vision 27/27
text encoder 50/50
refine text 1/1
precompute AdaLN 50/50
load transformer core 50/50
denoise 0/50 /AppleInternal/Library/BuildRoots/4~B5vFugBcKzdCtMw80UR1WFCTSITbUVQOwkJg1SQ/Library/Caches/com.apple.xbs/Sources/MetalPerformanceShaders/MPSNDArray/Kernels/MPSNDArrayMultiaryKernel.mm:2644: failed assertion `[MPSNDArrayMatrixMultiplication encodeToCommandBuffer:] destination: [
Array: (null) Rank: 4 OffsetBytes:0 MPSDataTypeBFloat16 Device: Apple M3 Ultra MTLBuffer: 0x0 IOSurfaceBacked: NO
- dimensionLengths = [ 20497, 20497, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- sliceLengths = [ 20497, 20497, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- sliceOffsets = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
- dimensionOrder = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ]
- transposed sliceLengths = [ 20497, 20497, 56, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
- strideElements = [ 1, 20504, 420270488, 23535147328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
- transposed strideElems = [ 1, 20504, 420270488, 23535147328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
Temporary Array - readCount = 1
] is too large for kernel. Encode failed.
'
```

_p.s.: excellent work, thank you, much appreciated!_

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.