hameeza ahmed via llvm-dev
2017-Jul-01 05:47 UTC
[llvm-dev] LLC Segmentation Fault in Matrix Multiplication
Hello, when i used clang for matrix multiplication code with i=j=k=1000351, it successfully generates IR. then i run opt as follows opt -S -O3 -force-vector-width=64 -force-vector-interleave=32 matn.ll -o pimmatnl_64_u32_o3.ll it also worked fine. but when i run llc on the optimized .ll file llc -x86-asm-syntax=intel pimmatnl_64_u32_o3.ll -o matnl-knl4_intel.s i get the following segmentation fault error: #0 0x0000000001826ad8 (llc+0x1826ad8) #1 0x0000000001824aae (llc+0x1824aae) #2 0x0000000001824bfc (llc+0x1824bfc) #3 0x00007fa6bdb52d10 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x10d10) #4 0x00000000014d0974 (llc+0x14d0974) #5 0x000000000169bdb5 (llc+0x169bdb5) #6 0x00000000016bcfdc (llc+0x16bcfdc) #7 0x00000000016d8684 (llc+0x16d8684) #8 0x000000000170a4c0 (llc+0x170a4c0) #9 0x000000000171199d (llc+0x171199d) #10 0x0000000001714258 (llc+0x1714258) #11 0x0000000000e530f4 (llc+0xe530f4) #12 0x000000000122c931 (llc+0x122c931) #13 0x0000000001499b2a (llc+0x1499b2a) #14 0x0000000001499bd3 (llc+0x1499bd3) #15 0x0000000001499694 (llc+0x1499694) #16 0x000000000068a68c (llc+0x68a68c) #17 0x0000000000626a80 (llc+0x626a80) #18 0x00007fa6bccf3a40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a40) #19 0x000000000067f8e9 (llc+0x67f8e9) Stack dump: 0. Program arguments: llc -x86-asm-syntax=intel pimmatnl_64_u32_o3.ll -o matnl-knl4_intel.s 1. Running pass 'Function Pass Manager' on module 'pimmatnl_64_u32_o3.ll'. 2. Running pass 'X86 DAG->DAG Instruction Selection' on function '@multiply' Segmentation fault (core dumped) Why does it happen? please correct me. Thank You -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170701/2cd34205/attachment.html>
hameeza ahmed via llvm-dev
2017-Jul-01 05:51 UTC
[llvm-dev] LLC Segmentation Fault in Matrix Multiplication
It happens only when i keep my vector width to >=64, why is that so? I have to keep it >=64. Please suggest some way? On Sat, Jul 1, 2017 at 10:47 AM, hameeza ahmed <hahmed2305 at gmail.com> wrote:> Hello, > > when i used clang for matrix multiplication code with i=j=k=1000351, it > successfully generates IR. then i run opt as follows > opt -S -O3 -force-vector-width=64 -force-vector-interleave=32 matn.ll -o > pimmatnl_64_u32_o3.ll > > it also worked fine. but when i run llc on the optimized .ll file > > llc -x86-asm-syntax=intel pimmatnl_64_u32_o3.ll -o matnl-knl4_intel.s > > i get the following segmentation fault error: > > #0 0x0000000001826ad8 (llc+0x1826ad8) > #1 0x0000000001824aae (llc+0x1824aae) > #2 0x0000000001824bfc (llc+0x1824bfc) > #3 0x00007fa6bdb52d10 __restore_rt (/lib/x86_64-linux-gnu/ > libpthread.so.0+0x10d10) > #4 0x00000000014d0974 (llc+0x14d0974) > #5 0x000000000169bdb5 (llc+0x169bdb5) > #6 0x00000000016bcfdc (llc+0x16bcfdc) > #7 0x00000000016d8684 (llc+0x16d8684) > #8 0x000000000170a4c0 (llc+0x170a4c0) > #9 0x000000000171199d (llc+0x171199d) > #10 0x0000000001714258 (llc+0x1714258) > #11 0x0000000000e530f4 (llc+0xe530f4) > #12 0x000000000122c931 (llc+0x122c931) > #13 0x0000000001499b2a (llc+0x1499b2a) > #14 0x0000000001499bd3 (llc+0x1499bd3) > #15 0x0000000001499694 (llc+0x1499694) > #16 0x000000000068a68c (llc+0x68a68c) > #17 0x0000000000626a80 (llc+0x626a80) > #18 0x00007fa6bccf3a40 __libc_start_main (/lib/x86_64-linux-gnu/libc. > so.6+0x20a40) > #19 0x000000000067f8e9 (llc+0x67f8e9) > Stack dump: > 0. Program arguments: llc -x86-asm-syntax=intel pimmatnl_64_u32_o3.ll -o > matnl-knl4_intel.s > 1. Running pass 'Function Pass Manager' on module 'pimmatnl_64_u32_o3.ll'. > 2. Running pass 'X86 DAG->DAG Instruction Selection' on function > '@multiply' > Segmentation fault (core dumped) > > Why does it happen? please correct me. > > Thank You >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170701/ed6e755b/attachment-0001.html>
Craig Topper via llvm-dev
2017-Jul-01 06:12 UTC
[llvm-dev] LLC Segmentation Fault in Matrix Multiplication
Can you attach your source code or .ll file? Have you tried a debug build of llc which might give a more readable stack dump or even an assertion message. ~Craig On Fri, Jun 30, 2017 at 10:51 PM, hameeza ahmed via llvm-dev < llvm-dev at lists.llvm.org> wrote:> It happens only when i keep my vector width to >=64, why is that so? > > I have to keep it >=64. Please suggest some way? > > On Sat, Jul 1, 2017 at 10:47 AM, hameeza ahmed <hahmed2305 at gmail.com> > wrote: > >> Hello, >> >> when i used clang for matrix multiplication code with i=j=k=1000351, it >> successfully generates IR. then i run opt as follows >> opt -S -O3 -force-vector-width=64 -force-vector-interleave=32 matn.ll -o >> pimmatnl_64_u32_o3.ll >> >> it also worked fine. but when i run llc on the optimized .ll file >> >> llc -x86-asm-syntax=intel pimmatnl_64_u32_o3.ll -o matnl-knl4_intel.s >> >> i get the following segmentation fault error: >> >> #0 0x0000000001826ad8 (llc+0x1826ad8) >> #1 0x0000000001824aae (llc+0x1824aae) >> #2 0x0000000001824bfc (llc+0x1824bfc) >> #3 0x00007fa6bdb52d10 __restore_rt (/lib/x86_64-linux-gnu/libpthr >> ead.so.0+0x10d10) >> #4 0x00000000014d0974 (llc+0x14d0974) >> #5 0x000000000169bdb5 (llc+0x169bdb5) >> #6 0x00000000016bcfdc (llc+0x16bcfdc) >> #7 0x00000000016d8684 (llc+0x16d8684) >> #8 0x000000000170a4c0 (llc+0x170a4c0) >> #9 0x000000000171199d (llc+0x171199d) >> #10 0x0000000001714258 (llc+0x1714258) >> #11 0x0000000000e530f4 (llc+0xe530f4) >> #12 0x000000000122c931 (llc+0x122c931) >> #13 0x0000000001499b2a (llc+0x1499b2a) >> #14 0x0000000001499bd3 (llc+0x1499bd3) >> #15 0x0000000001499694 (llc+0x1499694) >> #16 0x000000000068a68c (llc+0x68a68c) >> #17 0x0000000000626a80 (llc+0x626a80) >> #18 0x00007fa6bccf3a40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so >> .6+0x20a40) >> #19 0x000000000067f8e9 (llc+0x67f8e9) >> Stack dump: >> 0. Program arguments: llc -x86-asm-syntax=intel pimmatnl_64_u32_o3.ll -o >> matnl-knl4_intel.s >> 1. Running pass 'Function Pass Manager' on module >> 'pimmatnl_64_u32_o3.ll'. >> 2. Running pass 'X86 DAG->DAG Instruction Selection' on function >> '@multiply' >> Segmentation fault (core dumped) >> >> Why does it happen? please correct me. >> >> Thank You >> > > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170630/d8ee6f92/attachment.html>