- Notifications
You must be signed in to change notification settings - Fork42
Implement IPC cache for umfOpenIPCHandle function#736
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
Uh oh!
There was an error while loading.Please reload this page.
ab7b9ee tob969903Compare4fd30e3 to8a96eb0Compare8a96eb0 tob84c05cCompare50b1d4e to3d012dfCompare0823eaf tocb6248fCompareUh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
fc2f15b to8b3626eCompare8b3626e toa239fa1CompareUh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
d1e2e55 tod10b8a8Compare
ldorau left a comment• edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Please enable lines no: 356 and 359:
unified-memory-framework/test/ipcFixtures.hpp
Lines 355 to 359 incdc0310
| // TODO fix it - it does not work in case of IPC cache hit | |
| // EXPECT_EQ(stat.allocCount, stat.getCount); | |
| EXPECT_EQ(stat.getCount, stat.putCount); | |
| // TODO fix it - it does not work in case of IPC cache hit | |
| // EXPECT_EQ(stat.openCount, stat.getCount); |
It seems that the check in the line no 356:
EXPECT_EQ(stat.allocCount,stat.getCount);
still fails in theumf-provider_devdax_memory test:
[ RUN ] DevDaxProviderDifferentPoolsTest/umfIpcTest.AllocFreeAllocTest/2/home/ldorau/work/unified-memory-framework/test/ipcFixtures.hpp:354: FailureExpected equality of these values: stat.allocCount Which is: 5 stat.getCount Which is: 1[ FAILED ] DevDaxProviderDifferentPoolsTest/umfIpcTest.AllocFreeAllocTest/2, where GetParam() = (0x7f3e254f5660, NULL, 0x7f3e254f5200, 0x55cdc299f760, 0x55cdc299f048, false) (0 ms)...[ FAILED ] 1 test, listed below:[ FAILED ] DevDaxProviderDifferentPoolsTest/umfIpcTest.AllocFreeAllocTest/2, where GetParam() = (0x7f3e254f5660, NULL, 0x7f3e254f5200, 0x55cdc299f760, 0x55cdc299f048, false) 1 FAILED TEST
lplewa left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Please next time do not include half done features. Untested/unused features deceases code coverage, but also they can be detected by static analyze tools as an bugs - in short they might cause troubles after the merge. Also nothing is more permanent that temporary solution, but i trust you that it isn't a case here ;)
vinser52 commentedNov 5, 2024
Done. The issue was caused by the implementation of a scalable pool. When we do the first |
ldorau commentedNov 6, 2024
@vinser52 CI builds fail |
vinser52 commentedNov 6, 2024
Yeah, I saw that. I cannot reproduce it locally. My guess is that in case of CI there are some limits exceed with scalable pool because it uses 2MB slabs. So I can try to decrease memory pressure by decreasing number of allocations in corresponding test or disable test with scalable pool for now. I will investigate today. |
5e688a1 toa39b9fcComparevinser52 commentedNov 6, 2024
a39b9fc to99e7c42Comparevinser52 commentedNov 7, 2024
@bratpiorka I just rebased the branch because there was a conflict with |
99e7c42 to42c1a56Compareldorau commentedNov 12, 2024
@vinser52 rebase please |
42c1a56 to546632cComparevinser52 commentedNov 12, 2024
Done |
d28cb6b intooneapi-src:mainUh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Description
This PR adds initial set of changes to implement cache for opened IPC handles.
The new third-party data structure (uthash - has map implementation) is added. The same data structure is used by MPI to implement IPC cache. Here is theuthash documentation. Here is theoriginal source repo
Fixes:#403
Checklist