Skip to content

RequestArb: restrict concurrent number of Acquires with same set#143

Merged
Kumonda221-CrO3 merged 2 commits intochi-coupledl2from
chi-coupledl2-snp-deadlock
May 7, 2024
Merged

RequestArb: restrict concurrent number of Acquires with same set#143
Kumonda221-CrO3 merged 2 commits intochi-coupledl2from
chi-coupledl2-snp-deadlock

Conversation

@linjuanZ
Copy link
Member

@linjuanZ linjuanZ commented May 6, 2024

Consider a deadlock situation: given 4 ways in each slice, MSHR 0~3 are accessing separate ways, which makes all the ways occupied. At the same time, MSHR 4 already got CompData from HN, and is waiting for a free way to replace and to echo data through channel D to L1. Therefore MSHR 4 selects replacement way but fails repeatedly. If there is an incoming snoop that has the same address with MSHR 4, the snoop will be blocked because Grant message of MSHR 4 is blocked. Then CompData(s) corresponding to MSHR 0~3 could not be returned due to the blocked snoop. There goes the deadlock.

This pr breaks the deadlock by restricting the parallelism of L1 demand requests that share the same set to the number of ways.

Consider a deadlock situation: given 4 ways in each slice, MSHR 0~3 are
accessing separate ways, which makes all the ways occupied. At the same
time, MSHR 4 already got CompData from HN, and is waiting for a free way
to replace and to echo data through channel D to L1. Therefore MSHR 4
selects replacement way but fails repeatedly. If there is an incoming
snoop that has the same address with MSHR 4, the snoop will be blocked
because Grant message of MSHR 4 is blocked. Then CompData(s)
corresponding to MSHR 0~3 could not be returned due to the blocked
snoop. There goes the deadlock.
@linjuanZ linjuanZ requested a review from Kumonda221-CrO3 May 6, 2024 13:27
…ndshake

Co-authored-by: zhanglinjuan <zhanglinjuan16@mails.ucas.ac.cn>
@Kumonda221-CrO3 Kumonda221-CrO3 force-pushed the chi-coupledl2-snp-deadlock branch from 1cad66e to b2cd68b Compare May 7, 2024 11:25
@Kumonda221-CrO3 Kumonda221-CrO3 merged commit 876a747 into chi-coupledl2 May 7, 2024
@Kumonda221-CrO3 Kumonda221-CrO3 deleted the chi-coupledl2-snp-deadlock branch May 7, 2024 11:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants