官术网_书友最值得收藏!

  • Mastering C# Concurrency
  • Eugene Agafonov Andrew Koryavchenko
  • 160字
  • 2021-07-09 21:26:08

Chapter 3. Understanding Parallelism Granularity

One of the most essential tasks when writing parallel code is to divide your program into subsets that will run in parallel and communicate between each other. Sometimes the task naturally divides into separate pieces, but usually it is up to you to choose which parts to make parallel. Should we use a small number of large tasks, many small tasks, or maybe large and small tasks at the same time?

Theoretically speaking, it does not matter. In case of an ideal computational device, it would have no overhead for creating a worker thread and distributing work between any numbers of threads. However, on a real CPU, this performance overhead is significant and it is very important to take this into account. The right way to split your program into parallel parts is the key to writing effective and fast programs. In this chapter, we are going to review this problem in detail.

主站蜘蛛池模板: 伊金霍洛旗| 靖边县| 云林县| 宝清县| 嘉定区| 阿荣旗| 合肥市| 高雄县| 金溪县| 康保县| 景洪市| 石台县| 天祝| 青铜峡市| 永川市| 光泽县| 寻甸| 天门市| 丹东市| 长沙县| 云龙县| 文山县| 遵化市| 桦甸市| 昌宁县| 鸡东县| 慈溪市| 桂阳县| 长宁县| 凤山县| 泾阳县| 临潭县| 陇川县| 虞城县| 凌云县| 新安县| 溆浦县| 和龙市| 怀仁县| 兴隆县| 广昌县|