#18136·tinygrad

当 `GMMU=1` 时, hcq2 + chestnut 会发生断裂

作者: fattorib创建于 2026年9月11日更新于 2026年9月12日

在使用hcq2的USB3上,我们试图用0xF0控制信息零分配出4mb缓冲器,该缓冲器以3.6mb/s(问题线是这里。 这显然失败了, 因为默认的超时为 1000 ms 。 Ex 运行 DEV=USB+AMD python3 - m 微格勒. LLM --serve 9000 将因“ 运行时错误: 散装 Out 0x02 失败: 运行超时” 而失败 。

跳出超时到5000ms 产生不同的问题 因为写出4mb缓冲器 一次似乎锁住栗子 不再收到更多的命令。

在 “ master” 上, 此脚本的第二跑会失败, 栗子会被锁住, 直到重新启动( 使用 libusb get string descriptionor ascii: 操作超时 ) :

2zz
从 tinigrad.runtime.support.usb 导入 CustomASM24 控制器, USB3
从 tinygrad.runtime.support.hcq 导入 hcq filter 可见 devices
从 tinigrad.runtime.support. 系统导入系统

devs = hcq filter 可见 devices(USB3.list devices (0xADD1,0x0001) + USB3.list devices (0x3801,0x0001) "AMD") 互联网档案馆的存檔,存档日期2014-12-02.

设备   ptr,   = devs [0]
usb = USB3(device ptr)
c = 自定义ASM24主计长(usb)
栏=System.pci setup usb bars(c,gpu bus=4,mem base=0x1000000,pref mem base=(32 X 30))
vram base, vram size = 栏 [0]
页:1
页:1
c. f0 out(0x60,0x0F),地址:len(字节(write size)) // 4.,模式=1
c.usb.bulk  write(字节(写出 大小), 5000)
打印( “ 成功 ” )

(?)这里只是设置‘GMMU=0',因为这样会禁用有问题的路径这里

使用 " GMMU=0 " 运行是栗子的预期行为吗? 这不是默认的,但我想这是为一些CI阶段设定的...

内容来源: tinygrad/tinygrad