目录

 

1Amdahl定律

1.1示例:在各种框架中隐藏的串行部分

1.2Amdahl定律的应用

2线程引入的开销

2.1上下文切换

2.2内存同步

 2.3阻塞

3减少锁的竞争

3.1缩小锁的范围

3.2减少锁的粒度

3.3锁分段

3.4一些替代独占锁的方法​

3.5向对象池说“不”

4比较Map的性能

总结


1Amdahl定律

并行计算中的加速比是用并行前的执行速度和并行后的执行速度之比来表示的,它表示了在并行化之后的效率提升情况。

阿姆达尔定律固定负载(计算总量不变时)时的量化标准。可用公式:

11.性能与可伸缩性来表示。

式中11.性能与可伸缩性分别表示问题规模的串行分量(问题中不能并行化的那一部分)和并行分量,p表示处理器数量。

只要注意到当11.性能与可伸缩性时,上式的极限是11.性能与可伸缩性,其中,11.性能与可伸缩性。这意味着无论我们如何增大处理器数目,加速比是无法高于这个数的。

11.性能与可伸缩性

11.性能与可伸缩性

11.性能与可伸缩性

11.性能与可伸缩性

11.性能与可伸缩性

1.1示例:在各种框架中隐藏的串行部分

11.性能与可伸缩性

11.性能与可伸缩性

1.2Amdahl定律的应用

11.性能与可伸缩性

 

2线程引入的开销

2.1上下文切换

11.性能与可伸缩性

vmstat

2.2内存同步

11.性能与可伸缩性

 

 

 2.3阻塞

 

11.性能与可伸缩性

 

3减少锁的竞争

11.性能与可伸缩性

3.1缩小锁的范围

11.性能与可伸缩性

3.2减少锁的粒度

11.性能与可伸缩性

11.性能与可伸缩性

3.3锁分段

11.性能与可伸缩性

11.性能与可伸缩性

11.性能与可伸缩性

3.4一些替代独占锁的方法11.性能与可伸缩性

原子类使用CAS操作

3.5向对象池说“不”

11.性能与可伸缩性

 

4比较Map的性能

11.性能与可伸缩性

 

总结

11.性能与可伸缩性

 

相关文章: