Haswell多线程技术揭秘:Intel TSX扩展

按照Intel的Tick-Tock策略,今年发布的Ivy Bridge只是工艺升级,而真正的架构升级产品会是2013年发布的Haswell。之前已有Haswell处理器的谍照曝光,不过有关架构特性的消息非常之少。目前Intel的CPU性能已经很强劲,Haswell又能有多大程度的改进呢?

Intel在其官方Blog上发表了一篇名为“Transactional Synchronization in Haswell”的文章,介绍了Haswell架构将会支持TSX扩展。简单来说,TSX将允许程序员指定事务型同步代码空间,使得目前使用粗粒度线程锁定(Coarse-grained thread lock)的程序更自由地使用细粒度线程锁定(Fine-grained thread lock),进而提高多线程效率和性能。

举个简单的例子,如果你在编辑Excel表格,你打算同时编辑两份拷贝,Excel就会提示你该文件正在编辑,只能以只读方式打开但不能编辑,这种情况叫做粗粒度线程锁定,这种锁定比较简单,很容易实现,但是效率不高。

细粒度线程锁定则可以实现自由度更高的数据同步。还是前面的例子,如果使用细粒度线程锁定,那么每个线程都可以操作不同纵列的数据,明显提高了CPU效率,不过这样做也有更大的风险,比如数据出错的几率更大,特别是多个线程同时向一个区域写入数据时,而粗粒度线程锁定则可以避免这个问题,同时保持不需要的核心处于休眠状态,更节能。

为了避免出错,程序员往往钟爱粗粒度线程锁定,而TSX扩展的设计目的就是评估软硬件状况并为程序员提供无错的细粒度线程锁定。

Haswell处理器将会动态决定线程是否需要锁定,这一转换过程也不是自动完成的,需要程序员创建特定的转换空间,一旦事务执行成功完成,指定区域的内存操作也会即时完成。万一同步失败也会返回到上一步,然后按照传统方式执行。

有关TSX扩展的详细信息可以访问Intel官方技术支持网站,TSX PDF文档下载链接在此。(文/超能网)

Haswell多线程技术揭秘:Intel TSX扩展

 


Intel Haswell处理器家族的一大亮点就是TSX指令集,可以大大提升多核心的数据处理效率,但是很悲剧,它暂时没法用了。

最近,Intel在测试中发现TSX指令集存在一个严重错误,会导致系统出现不可预知的行为,而且无法通过系统、固件/BIOS的更新进行修复,所以不得不使出了杀手锏:升级新的微代码,直接禁用!

这一问题不但影响Haswell、Haswell Refresh、Haswell-E、Haswell-EP等现有产品,还波及到了即将发布的Broadwell-Y Core M系列,因为它也已经定型,没法再修改,只能等后续的新版本。

有趣的是,此前路线图显示,Intel将在明年初发布新步进的Broadwell-Y,难道就是为了解决这个问题?

另外,数据中心级别的Haswell-EX Xeon E7系列因为还未完成开发,可以及时修复,不受影响。

其实普通用户倒也不必太过忧虑,因为第一,TSX指令集更多的是针对服务器、数据中心应用,比如说数据库管理,消费级市场上基本没用,事实上桌面处理器都是默认禁用它的,只有新款Core i7-4790K、Core i5-4690K才开启。

如果你正在开发、使用TSX相关代码和技术,也不用太沮丧,Intel只是暂时禁用而已,未来仍会继续提供支持。

要是你不准备理会任何错误,想坚持使用TSX,可以选择不升级主板BIOS,或者厂商提供选项的话继续打开,当然出问题了可没人管你


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值