极限来。
这怎麽可能呢?藤原拓海来的也做不到吧。
所谓外行看热闹,内行看门道。
在英伟达干了这麽多年,范小天太清楚这个部分有多难写了。
这可不是光懂内存管理的原理就够的,你还得对这块晶片的实际行为真的研究透了才行。因为晶片到了纳米级别,理论和现实之间的偏差只有跑真实数据才能量化。
这每一样,单独拿出来,都是个大项目。
说白了,这是个得要软硬体都有人懂,还得有人专门研究过L100的专家团队,坐在一起才能做出来的活儿。
怎麽突然一份完整的代码就出现在代码库里了?
这代码——不会没法用吧?
抱着试一试的心态,范小天把刚才提交的这份代码从代码库里拉(pull)到本地,建了个测试环境,开始跑正确性验证。
他盯着跑起来的进度条,一边打开外卖软体看了一下,一边漫不经心地等着第一个报错弹出来。
呀,外卖已经送到了半天了,我的面要坨了。
等一会报错了就先去把外卖拿回来。
范小天这麽想着,抬起头来看向屏幕。
他只看到了满屏绿色的PASS。
这一套验证测试有几百个,一个一个跑过去,不算快,也不算慢。
一行一行的PASS还在日志里输出。
PASS。
PASS。
PASS。
范小天就这麽盯着屏幕又看了十分钟,所有的测试都跑完了,全都通过了。
最後一行日志:
All tests passed 414/414。
范小天又把外卖的事情忘在脑後了,他现在满脑子想的都是一件事。
这个实现效率怎麽样?
因为没有性能分析工具,他没办法读取L100显卡上的各项指标,像SM(Streaming
Multiprocessor,流式多处理器)利用率、显存读写效率这些东西,也就没法计算这个实现的运算效率到底有多少。
但是还有个取巧的法子,也是源智团队一直在用的。
读不了指标没关系,可以直接计时运算时间,再和英伟达的卡比一比,看看能达到竞品卡的多少效率就可以了。
按说这个阶段还没到测效率的时候,但是看着这麽优雅的代码,范小天忍不住了。
万一呢?是吧?
范小天迅速搭了个简单的计时基准:同样的Batch大小,同样的序列长度,同样的运算,分别在手头的L100和一张组里共享的H100上跑,计时,对比。
这
(本章未完,请点击下一页继续阅读)