基于滑動窗口的多核程序數據競爭硬件檢測算法
大小:0.54 MB 人氣: 2018-02-07 需要積分:2
數據競爭是引起多核程序發生并發錯誤的主要原因。針對現有基于硬件的happens-before數據競爭檢測方法硬件開銷大的問題,提出了一種輕量級的內存競爭硬件檢測算法,該算法利用滑動窗口技術動態檢測程序執行過程中發生的距離較近、更易引發并發錯誤的數據競爭。考慮競爭距離的大小,將并發線程片段細分為加鎖并發競爭域和包含線程近期執行序列的未加鎖并發競爭域,用一對交替移動的可重寫滑動窗口保存未加鎖并發競爭域內的內存操作指令,用一個大小可變的可重寫滑動窗口保存加鎖并發競爭域內的內存操作指令,當來自遠程的共享訪問與窗口內的內存訪問發生沖突時,檢測到數據競爭。在硬件實現結構中,僅為每個處理器核添加3對較小尺寸的硬件簽名寄存器來保存并發競爭域內的數據地址,無需更改原有的cache -致性協議,帶來的帶寬開銷低,能夠快速地檢測多核程序并發執行過程中發生的動態數據競爭,為多核程序開發和生產運行階段的并發錯誤診斷提供有效的指導信息。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%