Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion for non-negative time fails for certain router delay parameters #34

Open
kartiklakhotia opened this issue Mar 1, 2023 · 0 comments

Comments

@kartiklakhotia
Copy link

Setting vc_alloc_delay to 10 in the examples/dragonflyconfig file results in failed assertion:

booksim: routers/iq_router.cpp:783: void IQRouter::_VCAllocEvaluate(): Assertion `time >= 0' failed.
Aborted

This assertion is in VCAllocEvaluate() function in iq_router.cpp.
The loop that checks this assertion iterates over all entries in vc_alloc_vcs dequeue. Lets call this loop L1.
There is another loop before L1 that iterates over vc_alloc_vcs and sets this timestamp.
However, if the timestamp for first entry is non-negative, this loop breaks. Thus, when we enter L1, the first entry in vc_alloc_vcs is guaranteed to have non-negative time but others are not, resulting in this assertion fail.

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

No branches or pull requests

1 participant