百科问答小站 logo
百科问答小站 font logo



为什么国内的AI芯片公司不去支持CUDA,是技术问题还是版权问题? 第1页

  

user avatar   xiaoguiren 网友的相关建议: 
      

首先,实现真正意义上的完全兼容是极不可能的。最多是常用API和功能类似,减少用户移植成本。CUDA本身涵盖的功能非常广泛,硬件功能上就几乎体现了NV自家GPGPU的所有可能性,再加上驱动和软件上层封装(各种库,比如cuBLAS,cuFFT,cuDNN之类),以及完备的开发工具套件(编译器、调试器、profiler等等)。这些东西就算是全部开源,让各家移植支持自己的硬件,多数公司恐怕也是有心无力。更别说CUDA很多功能与硬件深度耦合,硬件设计不一致,靠软件封装来保持一致性,工作量真不是一般公司消化得了的。更何况其中很多东西并不公开,各家无从下手,功能就更难做得一致了。这还只是功能的一致性问题,性能上就更难保证了。李逵和李鬼,靠长的像是不行的,抡起板斧来就露相了……

其实就算是NV自己,各代硬件之间发生较大的功能改动时,更新工作量也不小。NV在硬件微架构和指令集上迭代很快,几乎每隔一两代就会有较大的功能变化。这样底层很多东西都要跟着调整。NV的PTX是一个很好的隔离机制,底层指令集之类的改动多数可以在PTX这层兼容,这样上层就不用动了。不过,底层仍然有PTX覆盖不到的改动(主要是运行逻辑的改变,比如Independent Thread Scheduling这种,同样的PTX代码在不同架构上行为不一致)。或者是有些程序没有内嵌PTX文件,那也没法兼容。而驱动或上层编程接口之类的改动跟PTX就没啥关系,当然也没法靠PTX覆盖。

老黄曾说NV是软件公司,也不是随便说说。至少CUDA的各种功能,并不都是跟着硬件版本走,很多都是软件层的封装。新硬件出来,CUDA一般会发个大版本用以提供相应支持。但CUDA自身软件层封装的功能也会不断新增和改进,也会有相应的版本(比如11.1,11.2之类)。只不过软件层的向后兼容可以做的比较好,用户通常不太关注而已。

这些硬件或软件上不同版本的差异,多多少少都会影响到用户的使用。所以很多软件包括AI框架甚至都要安装对应的CUDA版本,否则就可能出错。你说NV自家都不能完全兼容,外人还想兼容,那就太难了。这些对NV也是沉重的负担,感觉NV应该是在有意识的压缩产品支持周期,比如SM50(Maxwell架构)是14年首发,15、16年甚至再往后都有很多卡还在卖的。可是去年的CUDA 11.2版本已经把它deprecated了,这周期也就四五年而已……

其次,API这个东西,应该是没有版权的。之前Google与Oracle在Java的API版权上打过旷日持久的官司,去年最终裁决结果认为API本身是没有版权的。当然这应该说的是API的命名和总体结构设计没有版权,具体API的内部实现可能还是有的。实际上各家API的“借鉴”其实非常普遍,普遍到大家都习以为常,见怪不怪了。

就说NV自己,首先CUDA的编程模型很大程度复用了C语言,所以有cudaMalloc、cudaFree、cudaMemset这种定制版的“C API”。CUDA里的数学函数也多数沿用了cmath里的形式,比如exp()是double函数,expf()是float版的exp。cuBLAS就不用说了,多数API都源自LAPACK(虽然BLAS的这套API现在都快成标准接口了)。cuFFT的API与FFTW虽然有不小的差别,但两者之间的传承关系也很明显。这些API基本都来自曾经非常流行的开源库,应该说还算是常规操作。

但这还没完。熟悉Intel开发工具的人应该知道Intel有MKL(Math Kernel Library)和IPP(Intel Integrated Performance Primitives)。MKL相当于Intel的BLAS+数学函数库,IPP主要是做图像和信号处理的,有ippi(image processing)和ipps(signal processing)。NVIDIA有个库叫NPP,也有nppi和npps,你说巧不巧…… Intel还有个很有名的并行库叫TBB,可以基于模板做并行transform、reduce、scan之类的泛型操作,还能做并行任务拆分和调度。CUDA有个库叫Thrust,也是基于模板的泛型编程,也可以做并行transform、reduce、scan…… 当然,TBB和Thrust在接口上差别还是很大的,而且TBB从功能和可编程性上讲比Thrust要完整得多。但你要说Thrust没借鉴过TBB,我反正是不信……

我这里也不是针对NV。其实绝大多数功能相似的库或软件产品,具有类似的API是再正常不过的事情。比如各种计算机代数系统(以matlab为代表),各种AI框架等等。编译器还会造接口去接受其他编译器的参数输入格式呢!只要你不是直接抄代码,接口类似,但内部实现有差别,其实也不是什么见不得人的事情。

最后,API只是个入口,里面也会有非常多的坑。你把自家API跟用户常用的主流API做得像,可以大大减少用户的学习成本和移植工作量,甚至一个文本替换脚本就能搞定大部分。但前面也说了,功能的差异是不可避免的。99%相同,1%不同,看起来好像还行。但实际用起来,99%相同的部分占用时间1%,那1%不同的部分埋下的坑可能会耗费你99%的时间…… 更狠的是有时候你根本不知道到底是哪1%不一样……

所以我觉得API的复用,还是要格外慎重。有很大把握做到一致的可以复用,有差别的还是尽量区分开,否则真的是遗患无穷。有些公司意识不太好,老想着开始先蒙混过关,假装一样,将来有机会再慢慢修补。其实这是非常短视的做法,用户谁没事老关注你各个版本什么变化,一不小心踩坑真是心累又心碎。这种交付就非常不靠谱,严重不推荐。

其实用户最常用的CUDA核心功能也没有太多,能把这些支持好就不错。至少可以覆盖多数用户的多数需求。当前大部分的AI硬件公司应该都没啥2C业务,客户支持的压力会小很多。毕竟如果是2B的话,用户水准一般都还可以,做一些定制和差异化,能有自己的一些优势,也能保证先活下去。而且现在上层框架为了兼容性,接口一般不会对CUDA做那么深的定制。有这些基础功能和通用接口支撑,多数功能移植起来应该也没那么难。这些问题很多都不是技术难度问题,更多的是工作量的问题。CUDA里有些复杂功能,实在不支持就放弃算了。有些市场,吃不下就不要硬啃,真的划不来……

生态也不都是靠用的人多堆出来的,技术先进性和技术发展方向的话语权也很重要。花这么多功夫去做兼容和移植,还不如多研究研究怎么把自己的技术优势发挥出来。只要你有足够的竞争力,你在哪,哪里就有生态~


user avatar   Neutron3529 网友的相关建议: 
      

首先这是Fed一月 memo

先说结论:

FOMC 维持利率在 0-0.25% 不变。且确定 3 月完全停止 QE,同时 3 月加息也是箭在弦上,基本会后声明皆符合市场预期,没有太多的意外。

Powell 记者会确实是偏一点点的小鹰派,但我也认为,Powell 的说法不至于拉升市场加息预期至 5次 、并拉升缩表预期至上半年,反而比较像是在强化加息 4 次之预期。

另外我个人觉得,一些中文媒体似乎误读了Powell 记者会的部分片段,下面 Allen 再进一步说明。


1. 3 月加息停止 QE 早已定价

本次会议 Fed 再次确认 3 月将准备第一次加息,并同时停止 QE。

Fed 也再次重申,货币政策是要支持美国经济达到充分就业、与通膨长期均值维持 2.0% 的两大目标。

这部分我想市场早已定价,这裡完全不会是问题,所以我们不讨论太多。


2.未来加息在每次会议都可能发生 (?)

Powell 的原文说法是:Won't Rule Out Hike Every Meeting.

但我有看到部分中文媒体写:不排除每次会议都加息的可能性。

上述我想或许是误读了 (还是其实是我自己误会中文的意思 ?)

我的理解是:Powell 是说加息在未来每场会议都可能发生,指的是“不会在特定月份才加息”,不是说每场都要加息。

Powell 说得很合理,经济本来就是动态的,加息本就不会侷限在什麽月份才启动,端看当时的经济状况而定。

我认为Powell 上述说法,并未延展今年加息预期至五次或更多,若有这种想法,那绝对是误读了。


3.更大规模的缩表?

Powell 在记者会上提到,Fed 需要更大规模的缩表,但请大家不要恐慌,因为我又觉得部份中文媒体过度解读了。

我认为Powell 说到的“更大规模缩表”,在思维上指的是:

因为当前 Fed 资产负债表高达 8.9 万美元,这是新冠疫情爆发之前的两倍大,显然在绝对规模上是非常巨大的。

而上一轮 2017-2019 年 Fed 缩减资产负债表,是自 4.4 万亿美元缩到 3.7 万亿美元停止,缩表的幅度大概是 15.9%,共缩减了约 7000 亿美元。

确实每次缩表的经济背景绝对是不一样的,所以幅度也绝对不会相同,但我们随便抓,假设本轮缩表将缩减 10% 资产负债表规模,那麽这也要降低 8900 亿美元,规模当然很大。

但我认为,不需要过度恐慌在“更大规模缩表”这几个字上。更重要的,我认为是“Fed 缩表的速率是多少?”

我相信缩表没问题,缩表太快才是问题,因为缩表速度若太快,将直接影响的会是美债殖利率升速、以及殖利率曲线的斜率。

这点Powell 也非常清楚,Powell 在记者会上也不断强调,联准会内部尚未具体讨论到一切缩表的进度,要等到 3 月再说。


4.缩表比较可能落在下半年

Powell 在记者会上说明,希望在加息至少一次之后,再来开会讨论缩表的事情,且委员会至少将讨论一次,才会做最终拍板。

更重要的,Powell 希望缩表的进程是有秩序的、是可被预见的过程。

从上述Powell 丢出的时间表看,我个人认为缩表将落在 2022 下半年,最快可能是 6 月份,因为在 3 月加息后,Fed 才会来讨论缩表。

我个人相信 Fed 现在内部早已在讨论缩表,但委员会显然尚未准备好来与市场沟通缩表的前瞻指引。

而缩表这麽大的事情,我个人认为 Fed 需要起次跟市场沟通 2 次,并把缩表规划说得非常清楚之后,才会开始进行,所以比较合理的缩表时间,估计将会落在下半年。


5.最大风险:高通膨

Powell 在记者会上,大概提到了 800 万次的“高通膨压力”,并认为目前美国通膨风险仍在上升阶段,但预计 2022 通膨还是会回落。

Powell 说明,目前美国通膨居高不下,主要仍是供应链所致,白话来说就是供需仍然失衡,且供给侧 (Supply Side) 改善的速度是低于预期。

Powell 强调,目前美国高通膨持续存在,而美国经济要的是长期扩张,所以若要长期扩张,物价势必需要保持稳定。

这边开始进入正题了,我认为这是本次会议的最重要核心,是让我体感上,觉得 Fed 鹰派的地方。我认为 Fed 承认自己落后给菲利浦曲线 (Behind the curve),简单而言,Fed 这次的加息速度大幅落后给通膨。

由于 Fed 在 2021 年对于通膨的误判,先前 Fed 在 2021 年认为通膨在年底就可望自然回落,但也就是因为这件事没有发生,反而通膨还更为严重,所以目前才有使用加息来追赶通膨的压力。但当前宏观环境看,通膨的压力是来自于缺工、供应链紧俏等问题,再加上拜登政府的大力推行财政刺激在那边推波助澜~

所以这一次的通膨是来自于实体经济上的供需失衡问题,并不是金融市场过度投机、企业超额投资等问题,我认为 Fed 在这次的通膨问题上,能做得空间非常有限。

这裡将产生一个不确定性的较大风险,就是 Fed 只能靠货币紧缩去压通膨预期,但实体经济的根本性通膨问题,还是没有获得解决。变成最终 Fed 只能再用更剧烈的紧缩政策,去引导通膨预期走低后,尝试来压低实际通膨率,所以这裡将让 Fed 的紧缩路径,存在著较大不确定性。

比较好的处理方式,应该是直接去解决实体经济上的缺工和供应链/例如我之前提到的塞港问题,让实际通膨率自己走低、而不是靠 Fed 挤压通膨预期之后去引导。

谁可以去把坐在白宫裡疑似患有阿兹海默的白髮老头一巴掌打醒...还我特~


结论:我个人认为 Fed 今年将加息四次,不至于加息五次,而加息四次之预期,相信市场应该已经定价;至于缩表,相信市场尚未定价,估计将落在 2022 下半年,最快可能是 6 月。

如果 Fed 今年加息五次,我会感到非常意外,因为这意味著 Fed 很可能在 2023 年底、2024 年初,就因为美国经济放缓太快而需要降息,Fed 这波操作就会变得非常韭。

最后说说股市的想法目前 Nasdaq 已经插水一段时日,抑制通胀是当务之急,而股市所谓修正才多久已出现V转。对通胀而言意义不大,修正数月才可能有帮助~所以我之前一直描述为“恐慌”。因此对白髮老头而言,怎麽做才有利于中期选举就很清晰了。

最好还是坚持认为市场或已定价加息四次之预期,但缩表预期则是尚未定价的观点。

配置上美股我倾向持有科技权值股,一些 Megacap 的估值我认为合理、前景确定性较高,而这样也可以让你的收益贴著 QQQ 走。

考虑到一堆成长股腰斩,我也愿意加仓接刀成长股,但建议佔据投资组合的比例,或许不要超过 15%,如果选股功力不错,这裡就会开始让你的收益拉开与 QQQ 之类的差距。

最后,我相信人人都会想在市场下跌的环境裡接刀,接刀不是不行,但若接刀失败,斩缆我建议速度要快,我个人不考虑价投的话一次斩缆的比例都是 50% 以上。


user avatar   byronyi 网友的相关建议: 
      

首先这是Fed一月 memo

先说结论:

FOMC 维持利率在 0-0.25% 不变。且确定 3 月完全停止 QE,同时 3 月加息也是箭在弦上,基本会后声明皆符合市场预期,没有太多的意外。

Powell 记者会确实是偏一点点的小鹰派,但我也认为,Powell 的说法不至于拉升市场加息预期至 5次 、并拉升缩表预期至上半年,反而比较像是在强化加息 4 次之预期。

另外我个人觉得,一些中文媒体似乎误读了Powell 记者会的部分片段,下面 Allen 再进一步说明。


1. 3 月加息停止 QE 早已定价

本次会议 Fed 再次确认 3 月将准备第一次加息,并同时停止 QE。

Fed 也再次重申,货币政策是要支持美国经济达到充分就业、与通膨长期均值维持 2.0% 的两大目标。

这部分我想市场早已定价,这裡完全不会是问题,所以我们不讨论太多。


2.未来加息在每次会议都可能发生 (?)

Powell 的原文说法是:Won't Rule Out Hike Every Meeting.

但我有看到部分中文媒体写:不排除每次会议都加息的可能性。

上述我想或许是误读了 (还是其实是我自己误会中文的意思 ?)

我的理解是:Powell 是说加息在未来每场会议都可能发生,指的是“不会在特定月份才加息”,不是说每场都要加息。

Powell 说得很合理,经济本来就是动态的,加息本就不会侷限在什麽月份才启动,端看当时的经济状况而定。

我认为Powell 上述说法,并未延展今年加息预期至五次或更多,若有这种想法,那绝对是误读了。


3.更大规模的缩表?

Powell 在记者会上提到,Fed 需要更大规模的缩表,但请大家不要恐慌,因为我又觉得部份中文媒体过度解读了。

我认为Powell 说到的“更大规模缩表”,在思维上指的是:

因为当前 Fed 资产负债表高达 8.9 万美元,这是新冠疫情爆发之前的两倍大,显然在绝对规模上是非常巨大的。

而上一轮 2017-2019 年 Fed 缩减资产负债表,是自 4.4 万亿美元缩到 3.7 万亿美元停止,缩表的幅度大概是 15.9%,共缩减了约 7000 亿美元。

确实每次缩表的经济背景绝对是不一样的,所以幅度也绝对不会相同,但我们随便抓,假设本轮缩表将缩减 10% 资产负债表规模,那麽这也要降低 8900 亿美元,规模当然很大。

但我认为,不需要过度恐慌在“更大规模缩表”这几个字上。更重要的,我认为是“Fed 缩表的速率是多少?”

我相信缩表没问题,缩表太快才是问题,因为缩表速度若太快,将直接影响的会是美债殖利率升速、以及殖利率曲线的斜率。

这点Powell 也非常清楚,Powell 在记者会上也不断强调,联准会内部尚未具体讨论到一切缩表的进度,要等到 3 月再说。


4.缩表比较可能落在下半年

Powell 在记者会上说明,希望在加息至少一次之后,再来开会讨论缩表的事情,且委员会至少将讨论一次,才会做最终拍板。

更重要的,Powell 希望缩表的进程是有秩序的、是可被预见的过程。

从上述Powell 丢出的时间表看,我个人认为缩表将落在 2022 下半年,最快可能是 6 月份,因为在 3 月加息后,Fed 才会来讨论缩表。

我个人相信 Fed 现在内部早已在讨论缩表,但委员会显然尚未准备好来与市场沟通缩表的前瞻指引。

而缩表这麽大的事情,我个人认为 Fed 需要起次跟市场沟通 2 次,并把缩表规划说得非常清楚之后,才会开始进行,所以比较合理的缩表时间,估计将会落在下半年。


5.最大风险:高通膨

Powell 在记者会上,大概提到了 800 万次的“高通膨压力”,并认为目前美国通膨风险仍在上升阶段,但预计 2022 通膨还是会回落。

Powell 说明,目前美国通膨居高不下,主要仍是供应链所致,白话来说就是供需仍然失衡,且供给侧 (Supply Side) 改善的速度是低于预期。

Powell 强调,目前美国高通膨持续存在,而美国经济要的是长期扩张,所以若要长期扩张,物价势必需要保持稳定。

这边开始进入正题了,我认为这是本次会议的最重要核心,是让我体感上,觉得 Fed 鹰派的地方。我认为 Fed 承认自己落后给菲利浦曲线 (Behind the curve),简单而言,Fed 这次的加息速度大幅落后给通膨。

由于 Fed 在 2021 年对于通膨的误判,先前 Fed 在 2021 年认为通膨在年底就可望自然回落,但也就是因为这件事没有发生,反而通膨还更为严重,所以目前才有使用加息来追赶通膨的压力。但当前宏观环境看,通膨的压力是来自于缺工、供应链紧俏等问题,再加上拜登政府的大力推行财政刺激在那边推波助澜~

所以这一次的通膨是来自于实体经济上的供需失衡问题,并不是金融市场过度投机、企业超额投资等问题,我认为 Fed 在这次的通膨问题上,能做得空间非常有限。

这裡将产生一个不确定性的较大风险,就是 Fed 只能靠货币紧缩去压通膨预期,但实体经济的根本性通膨问题,还是没有获得解决。变成最终 Fed 只能再用更剧烈的紧缩政策,去引导通膨预期走低后,尝试来压低实际通膨率,所以这裡将让 Fed 的紧缩路径,存在著较大不确定性。

比较好的处理方式,应该是直接去解决实体经济上的缺工和供应链/例如我之前提到的塞港问题,让实际通膨率自己走低、而不是靠 Fed 挤压通膨预期之后去引导。

谁可以去把坐在白宫裡疑似患有阿兹海默的白髮老头一巴掌打醒...还我特~


结论:我个人认为 Fed 今年将加息四次,不至于加息五次,而加息四次之预期,相信市场应该已经定价;至于缩表,相信市场尚未定价,估计将落在 2022 下半年,最快可能是 6 月。

如果 Fed 今年加息五次,我会感到非常意外,因为这意味著 Fed 很可能在 2023 年底、2024 年初,就因为美国经济放缓太快而需要降息,Fed 这波操作就会变得非常韭。

最后说说股市的想法目前 Nasdaq 已经插水一段时日,抑制通胀是当务之急,而股市所谓修正才多久已出现V转。对通胀而言意义不大,修正数月才可能有帮助~所以我之前一直描述为“恐慌”。因此对白髮老头而言,怎麽做才有利于中期选举就很清晰了。

最好还是坚持认为市场或已定价加息四次之预期,但缩表预期则是尚未定价的观点。

配置上美股我倾向持有科技权值股,一些 Megacap 的估值我认为合理、前景确定性较高,而这样也可以让你的收益贴著 QQQ 走。

考虑到一堆成长股腰斩,我也愿意加仓接刀成长股,但建议佔据投资组合的比例,或许不要超过 15%,如果选股功力不错,这裡就会开始让你的收益拉开与 QQQ 之类的差距。

最后,我相信人人都会想在市场下跌的环境裡接刀,接刀不是不行,但若接刀失败,斩缆我建议速度要快,我个人不考虑价投的话一次斩缆的比例都是 50% 以上。




  

相关话题

  如何看待阿里平头哥发布的全球最高性能 AI 芯片「含光 800」?这款芯片核心技术是什么呢? 
  如何看待联发科天玑 1000 AI 跑分超越麒麟 990 5G? 
  如何看待高校学生翻拍《Coincidance》(抖肩舞)现象的流行? 
  如何看待AI参与文学创作? 
  如何看待“地图帝”到处标记自己的名号在非自己创作无版权的地图上的行为? 
  如何看待字节跳动布局自研云端 AI 芯片和 Arm 服务器芯片? 
  如何评价2019年度芯片设计公司澜起科技 平均年度薪酬达121万? 
  著作权中的署名权,究竟是不是可以转让? 
  签合同的时候如何避免自己不是自己创作作品的著作权人而无法使用的尴尬? 
  寒武纪的鳄鱼是怎样的? 

前一个讨论
虎扑裁员 40% ,CEO 程杭卸任、殷学斌接任,虎扑未来将如何发展?
下一个讨论
为什么氮化镓充电器那么贵?





© 2024-11-22 - tinynew.org. All Rights Reserved.
© 2024-11-22 - tinynew.org. 保留所有权利