- 论坛徽章:
- 2
|
reiase 发表于 2012-04-21 08:07 ![]()
模板实例化剩下的那点寻址时间、循环展开时间,和JIT把一般计算翻译成SIMD指令计算所剩的时间比,很难说谁更有用一点。看场景吧,之前嘲笑过STL号称高性能,却在真正对性能要求高的高并发环境下无大用处,也就拿来加速一下PC机上的MFC程序而已。一种技术,如果只能加速一般场景(对性能要求不高的场景),不能加速一些特例(比如高并发环境)...好吧,你也可以称它是高性能。
“JIT省的那点时间,你重新编译一下也能够找回来”,这种逻辑就跟”模板能省那点时间,你C代码写仔细一点也能找回来“一样,没有意义。
所以说白了,模板(好吧,我不说泛型了)这玩意儿提升性能跟JIT提升性能有啥不一样?算法的逻辑都固化了,内存访问的高效性要考模板这玩意儿保证?
你又把话题岔开了。不是在说jit与native吗?
好,你又提到SIMD, native就不能SIMD了吗?
再说你前面提到的发布。
用户不知道CPU是什么,只管下载?可否下载一个小的installer?它负责测试CPU,然后下载相应的binary。
对不知道CPU是什么的用户, 直接下载binary与下载这样一个installer没什么区别, 反正都是下一步下一步再下一步。 哦,还不用装runtime。
现在挺多软件有这样的小的installer,mingw, chrome, cygwin, 还包括你提到的ubuntu(wubi)。
但它们还没有根据cpu选择binary的功能。
为什么? 至少我还没看出有这个必要。 到目前还没用过什么使用jit的软件效率比同类使用native的要高, 毫无威胁感。
不关心CPU是什么的人, 通常也不会计较、也难以察觉为p4编译的代码跑在了自己的core 2上那点可能的时间优化。
但空间优化是很容易被发觉的 —— runtime比软件本体还大
而关心那点效率的人, 知晓自己是什么CPU是自己的责任。
|
|