首页> 外文期刊>Computer architecture news >Adding Concurrency in Python Using a Commercial Processor's Hardware Transactional Memory Support
【24h】

Adding Concurrency in Python Using a Commercial Processor's Hardware Transactional Memory Support

机译:使用商业处理器的硬件事务存储支持在Python中添加并发

获取原文
获取原文并翻译 | 示例

摘要

This paper reports on our experiences of using a commercial processor's best-effort hardware transactional memory to improve concurrency in CPython, the reference Python implementation. CPython protects its data structures using a single global lock, which inhibits parallelism when running multiple threads. We modified the CPython interpreter to use best-effort hardware transactions available in Sun's Rock processor, and fall back on the single global lock when unable to commit in hardware. The modifications were minimal; however, we had to restructure some of CPython's shared data structures to handle false conflicts arising from CPython's management of the shared data. Our results show that the modified CPython interpreter can run small, simple, workloads and scale almost linearly, while improving the concurrency of more complex workloads.
机译:本文报告了我们在CPython(参考Python实现)中使用商用处理器的尽力而为硬件事务存储来改善并发性的经验。 CPython使用单个全局锁保护其数据结构,该全局锁在运行多个线程时禁止并行性。我们修改了CPython解释器,以使用Sun的Rock处理器中可用的尽力而为的硬件事务,并在无法提交硬件时回退到单个全局锁。修改很小。但是,我们必须重组一些CPython的共享数据结构,以处理CPython对共享数据的管理引起的错误冲突。我们的结果表明,修改后的CPython解释器可以运行小的,简单的工作负载,并且几乎可以线性扩展,同时提高了更复杂的工作负载的并发性。

著录项

  • 来源
    《Computer architecture news》 |2010年第5期|p.12-19|共8页
  • 作者

    Fuad Tabba;

  • 作者单位

    University of Auckland;

  • 收录信息
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号