Closed nmhamster closed 7 years ago
Indeed, this test graph has only four vertices, so we shouldn't exhaust memory while reading the graph.
Unfortunately, I am unable to reproduce this problem in my environment. I don't have access to Intel 17.0. The problem builds/runs fine on my workstations with intel 16.0 as well as with clang and gcc.
@nmhamster Do you see this problem with other versions of the Intel compiler? May I access your build to do some debugging (and, if yes, then how?)?
@kddevin do you have access to the Bowman test machine?
@nmhamster I just requested it...stay tuned.
I do not.
Sent from my iPhone
On Sep 8, 2016, at 3:58 PM, Si Hammond notifications@github.com<mailto:notifications@github.com> wrote:
@kddevinhttps://github.com/kddevin do you have access to the Bowman test machine?
You are receiving this because you were assigned. Reply to this email directly, view it on GitHubhttps://github.com/trilinos/Trilinos/issues/600#issuecomment-245754983, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AHLap-iBGrandHgNwYz51qr_hphxW6Y0ks5qoIUTgaJpZM4J4DPt.
@kddevin - thanks, I am hoping we can use the system to see the same results. @vjleung - can you request?
@vjleung No worries, Vitus; I will handle this issue with Si. No need to request a new account.
@kddevin Okay, thanks.
Sent from my iPhone
On Sep 8, 2016, at 4:11 PM, K Devine notifications@github.com<mailto:notifications@github.com> wrote:
@vjleunghttps://github.com/vjleung No worries, Vitus; I will handle this issue with Si. No need to request a new account.
You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/trilinos/Trilinos/issues/600#issuecomment-245757863, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AHLap-O_OwnQTHQlylXCv2cHTeiLv0LBks5qoIf2gaJpZM4J4DPt.
@kddevin @nmhamster Si, Karen, I run this both with -O3 and -O0 flag. I did not track down the bug, but it fails only with -O3 flag, as I have experienced previously in my code. It is a bold claim, but I suspect if something is wrong with the compiler. The previous test example that was resulting in wrong computation with -O3 flag is below.
#include <iostream>
int main(){
int el = 0;
for (int i = 0; i < 5; ++i){
int k = i;
for (;k; ++el){
k &= k-1;
}
}
std::cout << el << std::endl;
el = 0;
for (int i = 0; i < 5; ++i){
int el2 = 0;
int k = i;
for (;k; ++el2){
k &= k-1;
}
el += el2;
}
std::cout << el << std::endl;
}
Similar to -O0 flag, it seems that changing the loop below around line ~400
for (i = 0; i < nsend; i++) {
v = vtx_list[i];
nvtx_edges += old_xadj[v+1] - old_xadj[v];
}
to
for (i = 0; i < nsend; i++) {
v = vtx_list[i];
volatile int tmp = old_xadj[v+1] - old_xadj[v];
nvtx_edges += tmp;
}
is fixing the problem. But I don't see why would volatile be necessary.
As a sanity test, I ran these tests through purify (with gcc 4.7.2); no memory misbehavior was reported.
@nmhamster
Does this bug persist?
Similar issue #1010 was closed recently.
Hi, @nmhamster . Can we close this issue? Or does it persist? Thanks.
@kddevin - I think we can close it. If I find the problem again, I will reopen. Thank you!
Thanks, @nmhamster
Zoltan team I am seeing some issues with the latest builds on Knights Landing and Intel 17.0.098 compilers. I am seeing an insufficient memory error on the failing cases. The node has 16GB + 96GB of memory so I think this should be sufficient?