从使用阿里云GPU云服务器运行katago开始,就发现一个问题:那就是使用sabaki通过gtp协议调用katago,非常顺畅没有任何问题。而同样的运行参数,一旦使用lizzie调用,则卡顿现象十分严重,不得不反复通过暂停、重开,来获取数据。
开始以为是带宽的问题,后来即便将带宽提高到5M也没有丝毫效果。改用AutoDL服务器后,其带宽不需要指定,同样卡顿没有改善。
前几天通过网上学习ssh的时候,看到有文章提到不同ssh服务器,客户端获取的返回数据不一样。受此启发,想到同样GPU服务器,sabaki正常而lizzie存在问题,那说明应该是客户端获取服务器数据、转换的问题。lizzie最早是针对Leelazero的,在获取katago的gtp数据时,对部分数据不识别,或者识别转换效率低,所以导致卡顿,甚至不能正常显示。
于是查看katago的配置文件,感觉应该是logToStderr参数的问题。默认值是false,为了在sabaki观战时看到AI的计算情况,我将值改为TRUE,这样gtp日志输出到sabaki终端。但这样一来,lizzie可能对大量输入数据有些不知所措了。本机还好,一旦通过ssh获取,更是应接不暇了。
果然,将logToStderr值修改为false之后,再调用lizzie,一切正常,顺利完成旧文旧局:“未完”的一局(钱宇平vs小林光一),算是开了一个好头。