《多處理器程式設計的藝術》讀書筆記 第一章 引言

2021-09-02 14:05:16 字數 451 閱讀 9180

共享儲存器通訊方式下的多處理器程式設計技術。

可計算性理論:理解非同步併發環境中的可計算問題

安全性:不好的事情絕不會發生。

活性:乙個特定的好的事件一定會發生。

確保乙個時刻只允許乙個執行緒執行特定**段的問題稱為互斥問題

啤酒瓶罐的例子——中斷——wait()和notifyall()

旗子的例子

無死鎖:

無飢餓:

等待:互斥的本質就是等待

中斷:wait()和notifyall()的本質就是中斷

兩個執行緒之間的互斥問題能夠通過兩個1位元變數來解決,每個變數只能被乙個執行緒寫,由另乙個執行緒讀。

生產者-消費者問題

讀者-寫者問題

應最小化序列**的粒度

多處理器程式設計的藝術 pdf格式

多處理器程式設計的藝術 從原理和實踐兩個方面全面闡述了多處理器程式設計的指導原則,包含編制高效的多處理器程式所必備的演算法技術。此外,附錄提供了採用其他程式語言包 如c c及c 的pthreads庫 進行程式設計的相關背景知識以及硬體基礎知識。多處理器程式設計的藝術 適合作為高等院校計算機及相關專業...

GPU程式設計和流式多處理器(七)

將第二個運算 加,最小或最大值 應用於中間結果和第三個運算數。通過引用內建變數threadidx,blockidx,blockdim和griddim,訪問許多特殊暫存器。這些偽變數將在3節中詳細介紹,它們是3維結構,分別指定執行緒id,塊id,執行緒數和塊數。除此之外,另乙個特殊暫存器,sm的時鐘暫...

鎖 無鎖 多處理器程式設計 2 原子操作

原子操作是不可分割的操作,在執行完畢時它不會被任何事件中斷,原子操作是多數無鎖程式設計的基本前提。atomic是原子的意思,意味 不可分割 的整體。在linux kernel中有一類atomic操作api。這些操作對使用者而言是原子執行的,在乙個cpu上執行過程中,不會被其他cpu打斷。最常見的操作...