<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jan 5, 2020 at 3:28 PM Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com">itaru.kitayama@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I guess I like what you described, but that's also beyond my toolchain build skills.</div></blockquote><div><br>I'd suggest looking at how the OMP program is linked - probably some linker verbose flags would tell you exactly which library it is that is being linked into your binary (maybe inspecting the debug info would lead you to this too) & take the library from a debug build and copy it over into the release installation.<br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>All,<br></div><div>Is it thought as acceptable for a user seeing 40 minutes of app build time if he is using</div><div>a "Debug" Clang? While, with a "Release" Clang, it just finishes within a minute.</div></div></blockquote><div><br>Yep, an unoptimized Clang will be really slow, that's not surprising/a bug, as such - it's necessarily unoptimized, which is slow. It's possible that there are opportunities for performance improvement there (without hurting code quality, making the changes hard to easily regress, etc). You could potentially do RelWithDebInfo - no idea if that'd make the OMP library hard to debug or not (optimized code/debug info is not as easy to work with).<br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div> </div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 6, 2020 at 5:15 AM David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Ah, OK, sounds lik LIBOMPTARGET_ENABLE_DEBUG doesn't have anything to do with your problem, then. Bit of a red herring.<br><br>If the LLVM build doesn't support /just/ building the runtime with debug info (if this is a normal/common scenario, to need to debug into the runtime library, perhaps it should - but I Have no idea if that's a normal use case), then you can probably mix-and-match between two builds. Build the runtime with debug info and drop it into an installation of the compiler built in release mode?</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jan 5, 2020 at 11:39 AM Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Yes, exactly.</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jan 5, 2020 at 23:43 Mehdi AMINI <<a href="mailto:joker.eph@gmail.com" target="_blank">joker.eph@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 3, 2020 at 8:58 PM Itaru Kitayama via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div dir="auto">I have just tried a Release build of LLVM but</div></div><div dir="auto">with </div><div><div dir="auto">LIBOMPTARGET_ENABLE_DEBUG enabled. The app build became super fast, but I can not obtain debugging information that I need at runtime.</div></div></blockquote><div><br></div><div>The description for this flag seems to be: LIBOMPTARGET_ENABLE_DEBUG "Allow debug output with the environment variable LIBOMPTARGET_DEBUG=1"<br></div><div><br></div><div>Is this what you are looking for? Or are you looking into getting debug info (Dwarf) for the OpenMP runtime itself?</div></div></div></div><div dir="ltr"><div dir="ltr"><div class="gmail_quote"><div><br></div><div>-- </div><div>Mehdi</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Sat, Jan 4, 2020 at 5:03 David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I'm still confused by that - whether or not the LLVM you built has debug info in it shouldn't at all change what goes into the binaries that LLVM produces (modulo a few bugs, but nothing that'd produce drastic performance swings). You mention in the bug that it's specifically LIBOMPTARGET_ENABLE_DEBUG that is slowing down your compilation time? Not the use of a Debug build of LLVM? Have you tried a Release build of LLVM but with LIBOMPTARGET_ENABLE_DEBUG enabled?</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 3, 2020 at 11:58 AM Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="auto">At least, to obtain enough information from libomptarget while running my offloading app on GPU capable environment, I have to build it with an LLVM which was built in Debug mode.</div></div><div dir="auto"><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Jan 4, 2020 at 4:34 David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 2, 2020 at 10:55 PM Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">As I am facing the serious super slow down: <a href="https://bugs.llvm.org/show_bug.cgi?id=44407" target="_blank">https://bugs.llvm.org/show_bug.cgi?id=44407</a> , I'd like to<div>learn more about how it can be minimized. When debugging an app, there are times building it with a </div><div>Debug build LLVM can not be avoided, but a situation like 40 times time increase (40 minutes) is hard</div><div>to work with.</div></div></blockquote><div><br></div><div>Not sure I follow - you shouldn't need a debug build of clang to debug an application built with clang. You'd use a release build of clang to build your application with debug info (by passing -g).</div></div></div><div dir="ltr"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div> </div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 3, 2020 at 11:14 AM David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 2, 2020 at 6:09 PM Itaru Kitayama <<a href="mailto:itaru.kitayama@gmail.com" target="_blank">itaru.kitayama@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">David,</div>Yes, I was indeed trying to build LLVM with a Debug build. I'll stop doing that from now on.</div></blockquote><div><br>I mean, you can - it's just going to be super slow & mostly not what you want, unless you're trying to debug that building process. Usually you'd want to isolate one particular test case, maybe even reduce it, before running it with a debug build of LLVM which will be quite slow (because it's not optimized at all).<br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>I am on JSC's JURON machine which has 251 GB of memory on the login node, that's more than sufficient<br></div><div>to do a build, I suppose, and the linker is LLD as LLVM has a CMake variable to select the linker. <br></div></div></blockquote><div><br></div><div>Yep, sounds like you're just tripping over the fact that an unoptimized/debug build of LLVM is very slow. *thumbs up*</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 3, 2020 at 11:02 AM David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Were you trying to use a Debug build to build LLVM? Yes, that would be very slow.<br><br>If you mean you were using a release build of LLVM to build a Debug build of LLVM - yeah, that's generally going to be recommended. Did this get slower/change significantly in performance? Many people have trouble with building Debug builds (no matter the host compiler) especially if they're using bfd-ld, since it's quite slow/uses a lot of memory. There are a few other issues to do with memory usage (do you have less than about a GB of RAM per CPU? Then you'll probably hit swapping by default & have a bad time - there are ways around that)<div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 2, 2020 at 5:42 PM Itaru Kitayama via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi,<div><div>When building LLVM, is it always recommended to do it with the</div><div>latest official release, currently, it is 9.0.1? I ask because when I tried</div><div>it with a Debug build, it took an enormous amount of time on POWER8. </div></div></div>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div>
</blockquote></div></div></div></div>
</blockquote></div></div>
</blockquote></div>
</blockquote></div></div>
</blockquote></div></div>
</blockquote></div>
</blockquote></div></div>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div></div></div>
</blockquote></div></div>
</blockquote></div>
</blockquote></div>
</blockquote></div></div>