10 2013 档案

摘要:本文首先介绍 Erlang 运行时中需要使用无锁队列的场合,然后介绍无锁队列的基本原理及会遇到的问题,接下来介绍 Erlang 运行时中如何通过“线程进度”机制解决无锁队列的问题,并介绍 Erlang 运行时中提供的一个通用无锁队列的实现及其在 ERTS 异步线程池中的应用。 阅读全文
posted @ 2013-10-30 00:08 siyao 阅读(4819) 评论(6) 推荐(3) 编辑
摘要:一篇从调度原理的角度探讨为什么Erlang能做到低延迟的文章的译文。 阅读全文
posted @ 2013-10-21 20:56 siyao 阅读(14671) 评论(2) 推荐(4) 编辑
摘要:自旋锁是并发程序中小临界区同步常使用的技术。本文先介绍最简单的自旋锁实现,然后介绍在核心数比较多的多核环境中简单自旋锁的问题,并引入介绍可伸缩的MCS自旋锁。最后在60核的Xeon Phi协处理器上测试了二者的性能。小小自旋锁,也有不少学问哦! 阅读全文
posted @ 2013-10-19 17:35 siyao 阅读(5157) 评论(2) 推荐(1) 编辑
摘要:这份笔记是我2013年下半年以来读“The Art of Multiprocessor Programming”这本书的读书笔记。作为一本好书,它总结了这个领域自发展以来的大量重要成果,介绍了共享内存同步的基本理论,并介绍了大量并发算法和数据结构(主要是无锁算法),包括并发队列、栈、链表、计数器、排序网络、散列、跳表、优先队列等。我决定用自己的语言把这本书的重要内容复述一遍,其中也加入了自己的一些想法和理解,希望这份笔记能对这本书的其他读者有帮助,也希望能对所有对共享内存同步的朋友们有帮助,这份笔记本身也能作为共享内存式同步的教程,但是笔记本身不能取代原书。由于本人才疏学浅缺乏经验,因此其中必定有不少谬误,望各路大牛批评指正多多交流。 阅读全文
posted @ 2013-10-17 11:02 siyao 阅读(1830) 评论(0) 推荐(0) 编辑