GotoBLAS是一个开源程序库,由日本开发者Kazushige Goto于2002年写成,最初针对奔腾4处理器进行了优化,并设法将基于该CPU的超级计算机的性能从1.5 TFLOPS提高到2 TFLOPS。由此,逐渐吸引了大量来自世界各地的开发者,张先轶也是其中之一。
2010年,因Goto个人原因,GotoBLAS停止更新,很多开发者在邮件组里曝出Bug,追问为何没有修补。此时,远在中科院的张先轶萌生想法。2011年,基于GotoBLAS的原有基础,他创建了开源矩阵计算库OpenBLAS,领导着一个小团队不断进行修补和维护。
OpenBLAS页面
创建之初,张先轶就想把它作为一个全球化的系统,而不仅仅面向国内。一开始便放到GitHub上,所有的文档、注释都用英文写成,以此吸引更多国外开发者来试用。
除了性能因素,适应范围也是对于一个“库“的评价标准。OpenBLAS逐渐涵盖了市面上几乎所有的处理器架构,比如Intel、AMD的 X86、ARM的V7\V8,还有IBM的Power等。
逐渐,使用者越来越多,不断反馈Bug,他们不断修补,目前在矩阵计算的细分领域,成为影响力较大的开源项目。
现在证明当初的考虑是有效的,他们做了一个小统计,整体下载量排在第一的是美国。张先轶告诉雷锋网编辑,通过这个平台,甚至还有阿塞拜疆的开发者跟他联系,寻求指导。
除了开发者,很多厂商、研究机构也在用这个矩阵计算库,比如IBM、华为等。但由于初建时的背景所限,OpenBLAS重点指向的是“科学计算”,但随着深度学习的火热,做“深度学习”优化的需求更多。
虽然OpenBLAS被越来越多的开发者所认可,但当时张先轶只是将其作为自己和一群志同道合的人的一个兴趣,并没有计划将其作为创业项目。创建OpenBLAS的时候,他还在中科院攻读博士学位,钻研科学计算。2014年张先轶博士毕业后,想换个环境,正巧看到UT-Austin做GotoBLAS的那个组,在研究矩阵计算,研究方向一致,他很快就过去了。其实那个时候,他考虑过创业,只是找不到如何将这种非常底层的、强技术性的科学计算商业化。
在UT-Austin待了一年,张先轶接着到MIT做博士后。在参加了MIT-CHIEF中国创业论坛时,认识了很多创业者,迅速地掌握了“创业技能”,而此时此刻,人工智能正在全球范围内热了起来。
来到MIT第9个月时,他等不及了,决定回国创业。
OpenBLAS创始人张先轶
2016年9月,张先轶通过FA(财务顾问)融到了紫牛资本和明势资本合投的数百万天使轮,并且组建了一个10人左右的团队,联合创始人包括中科院计算所助研、中科院博士后、中国海洋大学博士贾海鹏以及浪潮集团具备丰富市场和销售经验的邱凯。
而他们的产品,则是一个商业版本的“OpenBLAS“,区别在于OpenBLAS是为科学计算做的,商业版本则是为深度学习定制的;同时,也不仅仅局限在矩阵计算,还用到了一些其他的加速算法。
在张先轶看来,现有相对成熟的通用型架构,还有很多潜力没有挖掘出来。这里可以分为两个方面:
一方面,服务器端。用X86+GPU做训练,这个方面他们做的不多,并非不能做,而是认为服务器端可以用钱来解决——如果训练慢可以多买几块GPU就解决了。
另一方面,嵌入式端。张先轶认为在这个方面可做的东西多,也是未来大的趋势。从去年开始,就有厂商把模型不只是部署到云端,而是直接部署到手机、车载设备上直接跑计算,这样做延迟低,交互性更好,在前端就把数据处理好了,特别是处理视频流的时候。
在嵌入式端,限制于功耗、成本,不是光靠花钱就能解决的。而澎峰科技,通过底层库的优化、框架的精简、算法模型优化相互配合,在嵌入式端非常有潜力。
在采访的最后,雷锋网问及未来一年的规划,张先轶觉得未来一年能够达到盈亏平衡,因为目前已经有不少厂商,通过他们的“开源版本“,敲着”商业版本“的门。他认为,澎峰科技做的最好的就是一体化的性能优化方案,计算机视觉、语音识别等公司,一定会需要他们来作为配合。目前,IBM在发布的PowerAI系统采用了OpenBLAS,除此之外Julia、GNU Octave、dmlc mxnet等也成为其用户。
IBM的PowerAI系统采用了OpenBLAS
雷锋网旗下垂直栏目微信公众号「新智造」将持续关注国内外初创企业的相关消息,欢迎关注。