V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zhuang  ›  全部回复第 6 页 / 共 14 页
回复总数  262
1  2  3  4  5  6  7  8  9  10 ... 14  
2015-06-19 02:23:03 +08:00
回复了 rtyurtyu 创建的主题 C 貌似并不存在 CPU 硬件支持的 128bit 整型算术运算
几年前,我给我弟弟解释过这样一个问题,为什么没有 128 bit 的处理器。看到这个帖子,我就把之前写的东西放上来好了。当然要理解这个问题还是需要了解一些计算机相关的背景知识的。

针对帖子本身添加几句,不用妄想原生 128bit 指令集了。现在没有,在可以遇见的未来也不会有。(如果有请一定记得回来打我脸 :D)

没有 cpu 支持的 128bit 指令是因为:没有 128bit 的处理器。讨论仅限 x86 范围,或者一般意义上的通用处理器,事实上专业领域里,比如 GPU 大概十年前就过渡到 128bit 了。

================

我先明确下 128-bit 的定义。

很明显 128bit 不是指的 cpu 指令(instruction)宽度,opcode+[oprand] 的组合数非常有限。
第二个是说 2^128 bits 寻址,这是没有意义的,后面我会解释即使是 64bits 还有进一步提高寻址的能力。即使是 64bits 寻址,在短期内都是够用的。

128-bit 说的是原生寄存器宽度。32bit 处理器的原生宽度是 32,可以拆分用作 16/8;64bit 处理器寄存器原生宽度是 64,可以拆分用作 32/16/8;以此类推。


在这个定义之下,现在的很多 cpu 都可以说是 128bit 了,比如支持 SSE/AVX 的话,就有超过 128bit 宽度的寄存器可调用。原生 64bit 寄存器,配合少量 128bit 寄存器的方案远比全部原生 128bit 有意义。


================


为什么没有 128bit 的 cpu 呢?很简单,不需要,不仅仅是现在不需要,未来的很长一段时间也不需要。现有 64bit 处理器已经够用了。这种够用是从尺度和精度两方面都作了考量的判断。



尺度方面,可以参考这个宇宙尺度 http://htwins.net/scale2/ 信息图。图中是以 10 为基数的,可以约等于 2^3,介于 10^±(20~40) 即 2^±(64~128) 的具体事物,要远远少于 2^±(0~64) 的量级。而真正用到如此大尺度的时候,人类会用合适的单位(比如科学计数法)来处理。如果真的用 128bit 处理器做现在 64bit 处理器的事情,那么 cpu 绝大多数时间会用零填充数据寄存器。

夸张一点说,现有 64bit 处理器真正用到整个 64bit 的时候,频率最高的操作是寻址。这是由现有处理器物理设计所决定的,关于这一点后面会详细解释。


精度方面,标准 ieee 四精度浮点,即 decimal128 标准,就是 128bit 的,能够提供 34 位有效数字,这个数字在绝大多数时间也是超过需求的。早在 8087 处理器上(1978 年第一代 x86 处理器 8086 的改进型)就通过协处理器支持了 80bit 的单精度运算硬件支持,现代 x86 在独立浮点处理器的基础上,逐渐开发出如 SSE/AVX 等基于 SIMD (单指令多数据)的指令集。

得益于 x86 可变指令长度的特点,结合 SIMD 可以很容易做到,cpu 本身低位宽,却可以在一个指令周期内处理高位宽的数据。限制指令集位宽的其实是寄存器位宽和数量,而非 cpu 的寻址宽度。如果不限制单一指令周期的话,无论是 64bit 还是 32bit 等等,都可以处理无限宽度的数据。




反过来说,为什么 64bit 够用了,128bit 会浪费?


工程上,生产 cpu 是难度很大的事情。简单说,多少位宽的处理器,就至少要有多少线的物理连接,通过电路来建立 cpu 与内存间的通道。这个线,包括构建其他基本算术单元的电路宽度,就是所谓的制程。随着制程的进步,微观结构带来的负面效应,比如漏电就越明显,同时布局难度也会增加。在 cpu 这样的高频电路里,对于信号的同时性要求非常高。一个 128bit 的处理器,所有内部的连线,比 64bit 几乎都要增加一倍。这些连线的布局甚至不能弯折,由此设计和生产难度都会大幅度提高。

这里 cpu 的设计采取了一个巧妙的办法,用少量的物理连接,实现超量的逻辑线性寻址空间。在 32bit 向 64bit 过渡时,这个技术叫做 PAE 物理内存扩展,那段时期 32bit 的支持 PAE 的处理器和操作系统配合,一样可以访问超过 4GB 的内存。第一代 8086 的线性和物理寻址位宽分别是 16/20 bits,自从 PAE 技术诞生了之后,物理地址位宽就被定格在了 36 bits,即使内存总线的宽度从 16 上升到了 64。

换句话说,这种间接寻址的意义是,无论 128/256 甚至更高位宽的 cpu,都可以通过对内存控制器的升级而实现对超量内存的访问。对于 cpu 生产的意义是,总线(bus)的宽度不再成为制约 cpu 电路布局的关键点。自然更难生产的 128bit 处理器就不多见了。



================

一点引申:相同设计的 128bit cpu 会比 64bit 慢。(就如同 32/64 过渡时期一样)

物理延迟和逻辑延迟相互影响。

128bit 内部布局更复杂,信号传递的时间更长。基本 ALC 由于门限增加也会变慢。这是物理延迟。

逻辑上,128bit 寄存器比 64bit 占用多一倍的缓存空间,在多级内存访问机制下,同等容量缓存命中率会低。如果加大缓存虽然能降低逻辑延迟,但会进一步增大物理延迟。

32/64 过渡这个问题不明显是因为处理器制造工艺进步明显,而现在这种进步幅度大大不如从前了。

================

总结:纯 128bit 需求请不要考虑通用处理器,有的是 DSP 可以高效完成目标。
2015-06-10 13:48:31 +08:00
回复了 est 创建的主题 宽带症候群 话说 ChinaNET 出国会根据 srcaddr 走不同的骨干路由???
先明确两个概念,routing/qos 是两个不同的功能,qos 决定的是数据通过某一节点的优先级,而路由决定数据通过的流向,AS 之间是 BGP,AS 内部是 IGP/IBGP。所以这不是 qos 的结果。






我没有查这些节点的具体信息,不过大致可以推断出两种可能:

一种是 202.97.50.78 和 89.149.128.81 之间存在多条并行线路,路由分支不同源于负载平衡。
要验证的话只要找出反例即可,或者从你 vps 反向 mtr 看(如果二者走同一路由的话)。可能性比较小。

另一种是 202.97.50.78 存在 Policy-based Routing。根据源 ip 来路由是非常容易做到的,只要路由的 packet filtering 性能足够好。这种可能性比较大。PBR 可以实现非对称路由,反向 mtr 可能结果完全不同。





这个案例其实不涉及根据 AS 进行路由选择,原因是 202.97.50.78 是 IBGP 的边界,而非 peering 节点。

你家里和阿里云都是同属一个 AS 内部,目标 vps 在另一个 AS 内部,只存在 AS(国内)<->AS(国外) 的直接路由。

AS 路由选择的特征是不经过 AS 内部,只经过 AS 边界,通常 peering 不会有 AS 内部的信息,所以一般只能通过物理连接的接口来区分线路。

以中美之间某连接为例,经日本某 peering 中转,AS(电信)/AS(联通)<-> Peering(日本)<->AS(美国一)/AS(美国二)。那么这个 peering 节点可以根据 AS 所连接的物理线路决定国内来源到达美国时的路线。





至于 202.97.50.78 如何区分 ip 来源,并不是路由器维护巨大的路由表,这样性能不够。

根本策略还是根据物理连接来,网络层级拓扑可以让逻辑来源相同的数据走同一物理接口,这样骨干路由就不需要做包过滤了。为了方便管理,多物理接口可以组建虚拟网络。

本质上是三层包过滤路由降级为二层交换。跟 AS 路由选择一个道理。
2015-06-09 22:40:31 +08:00
回复了 q5we66fg 创建的主题 奇思妙想 为什么很多编程的书都以动物作为封面?
一般没人跟程序猿玩,只好找动物玩了。

说正经的,这个有典故 http://archive.oreilly.com/pub/a/oreilly//news/ediemals_0400.html
2015-06-09 03:36:48 +08:00
回复了 jasontse 创建的主题 宽带症候群 院士称我国人均国际干线带宽仅是非洲水平一半
@wy315700
你给的链接文件是 .tw 管辖权的移交,与国际互联网接入无关。

关于 T1 网络你有太多误解,我在很早一个相关讨论里解释过,可参考。

https://v2ex.com/t/148700
2015-06-09 03:22:20 +08:00
回复了 est 创建的主题 SSL SSF - Secure Socket Funneling (ssh -D 的替代品我会乱说)
@Livid
最普遍的 OpenSSL 实现性能不佳(指千兆环境),主要是两个原因,一是阻塞控制机制是静态的,限制了接收方 buffer 大小为 64KB,对于正常延迟大带宽的网络来说理论上就有性能损失;第二个原因是 OpenSSL 的 cipher 运算是单线程的(这一点有历史遗留的兼容性原因)。

SSF 这个高性能特性优化的是 cipher 性能,多线程,除了官方测试的超低延迟超大带宽的网络环境,意义不是特别大。

如果真需要高性能,可以考虑 HPN-SSH,两个方面都作了优化。
2015-05-21 01:05:19 +08:00
回复了 efi 创建的主题 Linux Intel Clear Containers
@efi 你自己还挂着 trolling is art 呢,别沉不住气啊,说得多的多数是水。其实 est 那个回复看上去像是 troll,反倒本身是回复里唯一看到本质的,就是个虚拟化的粒度问题。

不过 Intel 家的东西吧,多数逃不过展品的命运,虽然背后的技术可能之后会通用化。

qemu free 倒是不新鲜,我记得几年前就有了,可能当初 intel 做这个的时候没往这方面想。现在 container 取代 vm 不就是因为性能好么,既然目标都是 linux,就犯不着虚拟个 pc 平台出来了,砍了 qemu 之后性能就不是问题了。

内存方面的技术不太懂,不过 intel cpu 集成内存控制器的,这方面优势应该挺大。至于外部 io,存储和网络的,我觉得取决于应用场景,安全性和性能不能兼得,是个取舍问题。
严格来说与技术关系不大,决定管理形式的是成本。

有些公司花大钱上 SAP 之类的,并非因为它多好,而是因为即使花钱也比原来的形式便宜。

自动化 HR 如果实现成本低的话,应该有可能。不过像端茶送水这种事,估计机器人普及之前还得雇人来干。
2015-01-19 09:57:26 +08:00
回复了 cevincheung 创建的主题 程序员 数字加密邮……你会用么
IBE 加密的问题不在于技术,而在于管理策略。

使用 IBE 的前提是无条件信任 PKI,与 PGP 之类的『端对端』加密体系强调的『不信任任何第三方』是有本质的区别的。

至于说算法本身有什么问题,即使公开算法,你就能找到问题么?或者说你就能确定没问题么?
2014-12-26 12:47:40 +08:00
回复了 zhuang 创建的主题 问与答 为什么内存修改软件对于 3D 游戏几乎都失效了?
@Mutoo 感谢提示,我其实不怎么了解 RPG Maker。不过原理都一样,程序逻辑放到 ruby 脚本,而主程序是个 ruby 解释器,通常的逆向和调试都是非常复杂的。

@oott123 很明显这里指的是动态调试。

@a2z 从你的回复里我知道你不明白这篇文章在说什么,毕竟这里谈到的技术本身不属于一般计算机科学的专业课程,也不是流行的技术。另外,魔兽世界的 Lua 是不难,类比一下的话,这里谈论的其实是暴雪之外的人来写供插件用的 Lua 接口。
2014-12-26 09:04:01 +08:00
回复了 zhuang 创建的主题 问与答 为什么内存修改软件对于 3D 游戏几乎都失效了?
@tinyfool
这不是『太容易』所以没人做的问题,而是做了没有意义。这样的调试相当于调试一个虚拟机之内跑的程序。『内置的语言』是针对开发者而言的,对于调试者,你根本不知道这个虚拟机的存在。

依赖游戏引擎开发的游戏,主程序甚至可以不处理游戏逻辑。修改的前提是理解游戏逻辑,而现在反编译出来的代码很难读的情况下,修改的难度非常大。

不用说太复杂的 3D 引擎,有个叫 RPG Maker 的软件,就带这样一个脚本引擎,有非常多小品级的游戏都是用这个软件做的,如果有兴趣可以试试看,怎么调试这样带脚本引擎的程序。
2014-11-29 01:39:51 +08:00
回复了 lsylsy2 创建的主题 分享发现 中国电信就你这带宽还借给别人用?
@halczy
是 CN2 线路,我前面表达的不准确,靠近新加坡节点的那部分是由 CN2 承载的,在欧洲这部分不是。
2014-11-29 01:23:41 +08:00
回复了 lsylsy2 创建的主题 分享发现 中国电信就你这带宽还借给别人用?
楼主看到的 chinatelecom 就认为法国到新加坡的链路经过了电信的线路,说明楼主不理解 traceroute 信息的真正含义。

chinatelecom-xxxx.xxx.xxx.telia.net 真正的含义是,这个节点是属于 telia.net 的,chinatelecom 前缀的意思是 peering 目标是中国电信(亚洲方向),这个名字是 telia 起的。

PS 从 ASN 来看,这个 Peering 并非是 CN2 线路。另外电信的国际 Peering 还真很厉害,当然这这件事厉不厉害多数情况下取决于运营公司有多有钱。

与你作为电信网络用户的感受相关的“带宽”,叫国际或者出口,仅仅取决于电信在上海 IPX 的线路容量。
@google456
我只是根据你的描述做回答,重点是网间结算一般只存在于 T1/T1 或者 T1/local 之间,而不存在你认为的“中美 local isp 之间的结算”。

为什么 T1/T1 Peering 是不计费的?
Tier-1 Peering 的目的是保障“世界上只存在一个互联网,网络内部是互联互通的”。
事实上,最早的 Peering 协议只是工程师和科研人员写在 RFC 标准里的,这些协议在商业化之后被继承和推广开来。收费的最终结果就是世界上会存在很多的局域网,而不是一个互联网。

至于你认为的有人亏了有人赚了的观点本身非常滑稽:一方面影响网络连通的主要成本是基础性投入,比如海底光缆和路由设备,而非日常运营成本;另一方面,互联网链路和现实道路不同,双向数据走的是一个通道,所以在 T1/T1 之间不存在所谓的上下行,只存在交换。


另外,实际的网间数据交换比你想象的要复杂。为了更好地利用国际间带宽,本地网络仅仅连接本地 IXP (Internet Exchange Point),外网流量才会走 IXP/IXP 之间的链路。某些 IXP 之间的链路是收费的,以满足比如数据中心或者高频交易网络等等的需要。

本地 ISP 和本地 T1 ISP 之间往往有结算协议。以移动购买电信国际出口带宽为例,协议的通常内容是,预留高峰时期一定的国际出口带宽,如果移动的用户总体外网峰值带宽超过了实际购买量,电信可能会采取措施,致使移动用户接入网络产生丢包。即便存在结算,计费的标准也是峰值带宽而不是实际发生的流量。
你描述的这种情况不存在网间结算。

Tier-1 Peering 的目的是保障“世界上只存在一个互联网,网络内部是互联互通的”,这种情况下不存在 Tier-1 ISPs 之间的结算,一般称作 Settlement-free Peering。

一般网间结算发生于 local ISPs 和 local Tier-1 ISP 之间,中国目前的 Tier-1 ISP 是电信和网通,非电信和网通的其他 ISP 要向电信和网通购买带宽,通常是协议价,而非流量计价。
2014-11-22 15:13:17 +08:00
回复了 Livid 创建的主题 游戏 有人在 Dragon Age Inquisition 里捏了一个龙妈
恰好有认识的人遇到过这样的事情,大致按我的理解描述一下。

『立案回执』是法院出具给自诉或者公诉人的,进入预审阶段的刑事案件,法院受理后会给出回执。

『接受案件回执单』是公安部门出具的给报案人的,如果不予立案会给出原因,如果立案公安部门就要走完侦办程序,直至侦破移交法院审理,或者超过追溯时效,案件撤销。

上面说的都是刑事案件。

公安部门被破案率压着,所以会有可能尽量避免立案。现在公安部门有个电子平台,那个『回执单』有对应编号,数据录入之后才能打印。能在电脑上看见不一定是真的录入,特别是加上这个推脱行为,很可能是因为数据没有录入,不能打印回执。

如果公安人员故意为难怎么办?理论上可以向上一级公安机关的政务科投诉,也可以向同一级检查机关的信访科投诉。但现实情况往往是,你去找这两个机关投诉,他们会相互踢皮球。然后按照规定,接受投诉的又该给你出具回执……现实情况一般是他们利用一般人不知道这些事情来敷衍。



如果你相信法制,有这个信念有精力走这个流程,那就坚定走下去吧。
如果你只想拿到一份证明,从人身上找突破口,人永远是制度的最大漏洞所在。
2014-10-21 23:47:18 +08:00
回复了 est 创建的主题 分享发现 Terence Tao 这道三农夫卖鸡的数学题用流形解真是牛逼啊
抛开题目不看,单纯说流形相关的数学基础,大概需要数学专业本科水平,前置知识要求是拓扑学相关基础;非数学专业,如果用得到的话,多数都是在研究生阶段作为数理基础选修,重点还是拓扑学。(这部分属于个人经验,我就是非数学专业后来选修的拓扑学,当时一同上课的数学系学生还在本科阶段)

如果放到这题目上说……其实根本用不到这么深的知识储备。其实你可以一眼看出这道题其实是有无穷多组解析解,需要从中寻找符合现实的特定解。不过看出这一点,可能初中生水平就足够了。
2014-06-22 05:45:20 +08:00
回复了 htedsv 创建的主题 问与答 求问在欧洲一个网站外包一般什么价位?
估计不会超过 3k 欧元。在欧洲的此类业务绝大多数都是由在国内的人完成的。

如果做针对当地人的业务,能够正常走税务的情况下,每个项目大概是 8~10 k 欧元左右,个人很难接到大型项目。价格与该国的物价和人力价格水平有关。
我认为是这 Intel HD 3000/4000 显卡的驱动问题造成的。10.8.3 更新附带了新的驱动,但并不一定真正解决了问题。

灰阶和类似图形一直是 lcd 显示的难点,用能够触发波纹的图形做缩放测试,如果波纹只在特定的尺寸上产生,说明比较大可能是显卡驱动算法问题,如果波纹状况随显示器亮度等等发生变化,比较大可能是显示器电路控制不够理想。
2013-03-14 14:05:36 +08:00
回复了 dowhat 创建的主题 问与答 想入IT这一行,尤其是信息安全,请给点建议,从何学起?
考虑对应的工作,我的意见是信息安全并不是一个入门工作。一方面是因为就业机会少,多数大公司只愿意高薪聘请同职位资深人士,或是内部培养,而小公司基本不会单独存在这样一个职位;另一方就业门槛高,从前面的分类可以想象,通常能够胜任此类职位的多数都有一到两方面的基础以及经验,同时要对整个体系有所掌握。

如果有一定的计算机科学背景,想在软件与网络安全方面有所发展,最重要的是构建自己的知识体系,广度优先,简单说可以是更加深入地学习计算机科学专业的基础课程。你可以不懂细节,但一定要有自学并掌握对应细节的能力,因为最终解决问题能力取决于你对于细节的了解程度。

在我看来安全专业是一个综合性经验学科,楼主在没有基本编程能力的情况下起步,至少要以年计进行学习,还要以年计的时间来应用和实践,从事相关专业难度很大,投入和回报很可能不成正比,强烈不建议。
1  2  3  4  5  6  7  8  9  10 ... 14  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2319 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 03:23 · PVG 11:23 · LAX 20:23 · JFK 23:23
Developed with CodeLauncher
♥ Do have faith in what you're doing.