[ ghc-Bugs-1209152 ] non-termination without optimization
Bugs item #1209152, was opened at 2005-05-26 13:39 Message generated for change (Comment added) made by simonmar You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=1209152group_id=8032 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Compiler Group: 6.4 Status: Closed Resolution: Fixed Priority: 5 Submitted By: C Maeder (c_maeder) Assigned to: Simon Marlow (simonmar) Summary: non-termination without optimization Initial Comment: I've found a (relatively) small example that does not terminate if translated unoptimized under linux with ghc-6.4 or ghc-6.4.1, although it should (and does with ghc-6.2.2). I compile with: ghc --make trans.hs -o trans -no-recomp and let the program process the file Map.hs (that is merely used as input data) several times. While ./trans sometimes succeeds to translate Map.hs a couple of times it fails to translate it more times and leaves a half translated file Map.hs.trans. Unfortunately the exact amount of data that needs to be processed varies in order to tickle the bug. (7 times Map.hs below, up to 11 times in other cases). The program terminates as expected if I use my (included) Map.hs instead of Data.Map, or if I declare the character map to be a separate constant, or if I compile with optimization. If compiled unoptimized with profiling it also does not terminate. [EMAIL PROTECTED] - uname -a Linux jupiter 2.6.8-24.14-smp #1 SMP Tue Mar 29 09:27:43 UTC 2005 i686 i686 i386GNU/Linux [EMAIL PROTECTED] - gcc --version gcc (GCC) 3.3.4 (pre 3.3.5 20040809) Copyright (C) 2003 Free Software Foundation, Inc. [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1.20050517 [EMAIL PROTECTED] - ghc --make trans.hs -o trans -no-recomp Chasing modules from: trans.hs Compiling Main ( trans.hs, trans.o ) Linking ... [EMAIL PROTECTED] - date Fr Mai 20 10:27:00 CEST 2005 [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m20.732s user0m20.298s sys 0m0.031s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 207572 2005-05-20 10:27 Map.hs.trans [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real4m29.816s user4m5.554s sys 0m24.120s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 98304 2005-05-20 10:28 Map.hs.trans -- Comment By: Simon Marlow (simonmar) Date: 2005-06-17 15:49 Message: Logged In: YES user_id=48280 Very hard bug to reproduce, but eventually tracked down and now fixed. Thanks! -- Comment By: Simon Peyton Jones (simonpj) Date: 2005-06-10 16:11 Message: Logged In: YES user_id=50165 OK, we can reproduce it now. It only happens on the *current* stable branch, not on the released 6.4. We'll look at it. -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 15:12 Message: Logged In: YES user_id=1285667 The error shows up even more dramatic under solaris and on a mac(!) with Wolfgang's binary: [EMAIL PROTECTED] - time ./trans Map.hs real0m11.346s user0m9.250s sys 0m0.010s [EMAIL PROTECTED] - time ./trans Map.hs Map.hs ^Ctrans: interrupted real4m41.918s user3m25.610s sys 0m7.900s [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1 [EMAIL PROTECTED] - uname -a SunOS leo 5.8 Generic_117350-20 sun4u sparc SUNW,Sun-Fire-280R [EMAIL PROTECTED]:~/haskell time ./trans Map.hs ^Ctrans: interrupted real4m58.311s user3m59.070s sys 0m38.850s [EMAIL PROTECTED]:~/haskell uname -a Darwin isylvie.informatik.uni-bremen.de 7.8.0 Darwin Kernel Version 7.8.0: Wed Dec 22 14:26:17 PST 2004; root:xnu/xnu-517.11.1.obj~1/RELEASE_PPC Power Macintoshpowerpc [EMAIL PROTECTED]:~/haskell ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4 -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 14:29 Message: Logged In: YES user_id=1285667 I have no problems to reproduce the error on two of our linux machines. Can someelse also try to reproduce this behaviour? Christian [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m23.542s user0m22.954s sys 0m0.118s [EMAIL PROTECTED]:~/haskell/examples set | less [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans:
[ ghc-Bugs-1209152 ] non-termination without optimization
Bugs item #1209152, was opened at 2005-05-26 15:39 Message generated for change (Comment added) made by c_maeder You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=1209152group_id=8032 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Compiler Group: 6.4 Status: Open Resolution: None Priority: 5 Submitted By: C Maeder (c_maeder) Assigned to: Nobody/Anonymous (nobody) Summary: non-termination without optimization Initial Comment: I've found a (relatively) small example that does not terminate if translated unoptimized under linux with ghc-6.4 or ghc-6.4.1, although it should (and does with ghc-6.2.2). I compile with: ghc --make trans.hs -o trans -no-recomp and let the program process the file Map.hs (that is merely used as input data) several times. While ./trans sometimes succeeds to translate Map.hs a couple of times it fails to translate it more times and leaves a half translated file Map.hs.trans. Unfortunately the exact amount of data that needs to be processed varies in order to tickle the bug. (7 times Map.hs below, up to 11 times in other cases). The program terminates as expected if I use my (included) Map.hs instead of Data.Map, or if I declare the character map to be a separate constant, or if I compile with optimization. If compiled unoptimized with profiling it also does not terminate. [EMAIL PROTECTED] - uname -a Linux jupiter 2.6.8-24.14-smp #1 SMP Tue Mar 29 09:27:43 UTC 2005 i686 i686 i386GNU/Linux [EMAIL PROTECTED] - gcc --version gcc (GCC) 3.3.4 (pre 3.3.5 20040809) Copyright (C) 2003 Free Software Foundation, Inc. [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1.20050517 [EMAIL PROTECTED] - ghc --make trans.hs -o trans -no-recomp Chasing modules from: trans.hs Compiling Main ( trans.hs, trans.o ) Linking ... [EMAIL PROTECTED] - date Fr Mai 20 10:27:00 CEST 2005 [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m20.732s user0m20.298s sys 0m0.031s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 207572 2005-05-20 10:27 Map.hs.trans [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real4m29.816s user4m5.554s sys 0m24.120s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 98304 2005-05-20 10:28 Map.hs.trans -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 16:29 Message: Logged In: YES user_id=1285667 I have no problems to reproduce the error on two of our linux machines. Can someelse also try to reproduce this behaviour? Christian [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m23.542s user0m22.954s sys 0m0.118s [EMAIL PROTECTED]:~/haskell/examples set | less [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real3m43.887s user3m27.224s sys 0m13.813s [EMAIL PROTECTED]:~/haskell/examples ll Map.hs* -rw-r--r-- 1 maeder wimi 57184 2005-05-19 21:52 Map.hs -rw-r--r-- 1 maeder wimi 73728 2005-06-10 16:14 Map.hs.trans -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 16:00 Message: Logged In: YES user_id=1285667 Hi Simon, Yes, I used the released GHC 6.4! (and an intermediate ghc-6.4.1) As you can see in my original report, processing the file Map.hs 6 times took 20 secs (ie. less than 4 secs for one Map.hs). However, Map.hs 7 times on the command line failed to finish for more than 4 minutes. (ghc seemed to hang but was running.) Please try again with maybe 12 occurrences of Map.hs on the command line. What do you mean by rather slow? 4 secs per Map.hs seems reasonable to me. Meanwhile, I'll test if some of my environment setting (ie. LC_CTYPE) does influence the reproducability. Cheers Christian -- Comment By: Simon Peyton Jones (simonpj) Date: 2005-06-10 15:32 Message: Logged In: YES user_id=50165 Christian, I tried this, but I couldn't get the behaviour you observed. Certainly, the program can be very slow without -O, becuase iside the inner (per-input-character) loop, you are rebuilding the character translation map. But it still works fine for me, no matter how many copies of Map I give it. I'm using the HEAD. I'm not sure how to proceed. Does this happen with the released GHC 6.4? Simon -- You can respond by visiting:
[ ghc-Bugs-1209152 ] non-termination without optimization
Bugs item #1209152, was opened at 2005-05-26 15:39 Message generated for change (Comment added) made by c_maeder You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=1209152group_id=8032 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Compiler Group: 6.4 Status: Open Resolution: None Priority: 5 Submitted By: C Maeder (c_maeder) Assigned to: Nobody/Anonymous (nobody) Summary: non-termination without optimization Initial Comment: I've found a (relatively) small example that does not terminate if translated unoptimized under linux with ghc-6.4 or ghc-6.4.1, although it should (and does with ghc-6.2.2). I compile with: ghc --make trans.hs -o trans -no-recomp and let the program process the file Map.hs (that is merely used as input data) several times. While ./trans sometimes succeeds to translate Map.hs a couple of times it fails to translate it more times and leaves a half translated file Map.hs.trans. Unfortunately the exact amount of data that needs to be processed varies in order to tickle the bug. (7 times Map.hs below, up to 11 times in other cases). The program terminates as expected if I use my (included) Map.hs instead of Data.Map, or if I declare the character map to be a separate constant, or if I compile with optimization. If compiled unoptimized with profiling it also does not terminate. [EMAIL PROTECTED] - uname -a Linux jupiter 2.6.8-24.14-smp #1 SMP Tue Mar 29 09:27:43 UTC 2005 i686 i686 i386GNU/Linux [EMAIL PROTECTED] - gcc --version gcc (GCC) 3.3.4 (pre 3.3.5 20040809) Copyright (C) 2003 Free Software Foundation, Inc. [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1.20050517 [EMAIL PROTECTED] - ghc --make trans.hs -o trans -no-recomp Chasing modules from: trans.hs Compiling Main ( trans.hs, trans.o ) Linking ... [EMAIL PROTECTED] - date Fr Mai 20 10:27:00 CEST 2005 [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m20.732s user0m20.298s sys 0m0.031s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 207572 2005-05-20 10:27 Map.hs.trans [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real4m29.816s user4m5.554s sys 0m24.120s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 98304 2005-05-20 10:28 Map.hs.trans -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 17:12 Message: Logged In: YES user_id=1285667 The error shows up even more dramatic under solaris and on a mac(!) with Wolfgang's binary: [EMAIL PROTECTED] - time ./trans Map.hs real0m11.346s user0m9.250s sys 0m0.010s [EMAIL PROTECTED] - time ./trans Map.hs Map.hs ^Ctrans: interrupted real4m41.918s user3m25.610s sys 0m7.900s [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1 [EMAIL PROTECTED] - uname -a SunOS leo 5.8 Generic_117350-20 sun4u sparc SUNW,Sun-Fire-280R [EMAIL PROTECTED]:~/haskell time ./trans Map.hs ^Ctrans: interrupted real4m58.311s user3m59.070s sys 0m38.850s [EMAIL PROTECTED]:~/haskell uname -a Darwin isylvie.informatik.uni-bremen.de 7.8.0 Darwin Kernel Version 7.8.0: Wed Dec 22 14:26:17 PST 2004; root:xnu/xnu-517.11.1.obj~1/RELEASE_PPC Power Macintoshpowerpc [EMAIL PROTECTED]:~/haskell ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4 -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 16:29 Message: Logged In: YES user_id=1285667 I have no problems to reproduce the error on two of our linux machines. Can someelse also try to reproduce this behaviour? Christian [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m23.542s user0m22.954s sys 0m0.118s [EMAIL PROTECTED]:~/haskell/examples set | less [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real3m43.887s user3m27.224s sys 0m13.813s [EMAIL PROTECTED]:~/haskell/examples ll Map.hs* -rw-r--r-- 1 maeder wimi 57184 2005-05-19 21:52 Map.hs -rw-r--r-- 1 maeder wimi 73728 2005-06-10 16:14 Map.hs.trans -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 16:00 Message: Logged In: YES user_id=1285667 Hi Simon, Yes, I used the released GHC 6.4! (and an intermediate ghc-6.4.1) As you can see in my original report, processing the file Map.hs 6 times took
[ ghc-Bugs-1209152 ] non-termination without optimization
Bugs item #1209152, was opened at 2005-05-26 13:39 Message generated for change (Comment added) made by simonpj You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=1209152group_id=8032 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Compiler Group: 6.4 Status: Open Resolution: None Priority: 5 Submitted By: C Maeder (c_maeder) Assigned to: Nobody/Anonymous (nobody) Summary: non-termination without optimization Initial Comment: I've found a (relatively) small example that does not terminate if translated unoptimized under linux with ghc-6.4 or ghc-6.4.1, although it should (and does with ghc-6.2.2). I compile with: ghc --make trans.hs -o trans -no-recomp and let the program process the file Map.hs (that is merely used as input data) several times. While ./trans sometimes succeeds to translate Map.hs a couple of times it fails to translate it more times and leaves a half translated file Map.hs.trans. Unfortunately the exact amount of data that needs to be processed varies in order to tickle the bug. (7 times Map.hs below, up to 11 times in other cases). The program terminates as expected if I use my (included) Map.hs instead of Data.Map, or if I declare the character map to be a separate constant, or if I compile with optimization. If compiled unoptimized with profiling it also does not terminate. [EMAIL PROTECTED] - uname -a Linux jupiter 2.6.8-24.14-smp #1 SMP Tue Mar 29 09:27:43 UTC 2005 i686 i686 i386GNU/Linux [EMAIL PROTECTED] - gcc --version gcc (GCC) 3.3.4 (pre 3.3.5 20040809) Copyright (C) 2003 Free Software Foundation, Inc. [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1.20050517 [EMAIL PROTECTED] - ghc --make trans.hs -o trans -no-recomp Chasing modules from: trans.hs Compiling Main ( trans.hs, trans.o ) Linking ... [EMAIL PROTECTED] - date Fr Mai 20 10:27:00 CEST 2005 [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m20.732s user0m20.298s sys 0m0.031s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 207572 2005-05-20 10:27 Map.hs.trans [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real4m29.816s user4m5.554s sys 0m24.120s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 98304 2005-05-20 10:28 Map.hs.trans -- Comment By: Simon Peyton Jones (simonpj) Date: 2005-06-10 16:11 Message: Logged In: YES user_id=50165 OK, we can reproduce it now. It only happens on the *current* stable branch, not on the released 6.4. We'll look at it. -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 15:12 Message: Logged In: YES user_id=1285667 The error shows up even more dramatic under solaris and on a mac(!) with Wolfgang's binary: [EMAIL PROTECTED] - time ./trans Map.hs real0m11.346s user0m9.250s sys 0m0.010s [EMAIL PROTECTED] - time ./trans Map.hs Map.hs ^Ctrans: interrupted real4m41.918s user3m25.610s sys 0m7.900s [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1 [EMAIL PROTECTED] - uname -a SunOS leo 5.8 Generic_117350-20 sun4u sparc SUNW,Sun-Fire-280R [EMAIL PROTECTED]:~/haskell time ./trans Map.hs ^Ctrans: interrupted real4m58.311s user3m59.070s sys 0m38.850s [EMAIL PROTECTED]:~/haskell uname -a Darwin isylvie.informatik.uni-bremen.de 7.8.0 Darwin Kernel Version 7.8.0: Wed Dec 22 14:26:17 PST 2004; root:xnu/xnu-517.11.1.obj~1/RELEASE_PPC Power Macintoshpowerpc [EMAIL PROTECTED]:~/haskell ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4 -- Comment By: C Maeder (c_maeder) Date: 2005-06-10 14:29 Message: Logged In: YES user_id=1285667 I have no problems to reproduce the error on two of our linux machines. Can someelse also try to reproduce this behaviour? Christian [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m23.542s user0m22.954s sys 0m0.118s [EMAIL PROTECTED]:~/haskell/examples set | less [EMAIL PROTECTED]:~/haskell/examples time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real3m43.887s user3m27.224s sys 0m13.813s [EMAIL PROTECTED]:~/haskell/examples ll Map.hs* -rw-r--r-- 1 maeder wimi 57184 2005-05-19 21:52 Map.hs -rw-r--r-- 1 maeder wimi 73728 2005-06-10 16:14 Map.hs.trans
[ ghc-Bugs-1209152 ] non-termination without optimization
Bugs item #1209152, was opened at 2005-05-26 15:39 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=1209152group_id=8032 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Compiler Group: 6.4 Status: Open Resolution: None Priority: 5 Submitted By: C Maeder (c_maeder) Assigned to: Nobody/Anonymous (nobody) Summary: non-termination without optimization Initial Comment: I've found a (relatively) small example that does not terminate if translated unoptimized under linux with ghc-6.4 or ghc-6.4.1, although it should (and does with ghc-6.2.2). I compile with: ghc --make trans.hs -o trans -no-recomp and let the program process the file Map.hs (that is merely used as input data) several times. While ./trans sometimes succeeds to translate Map.hs a couple of times it fails to translate it more times and leaves a half translated file Map.hs.trans. Unfortunately the exact amount of data that needs to be processed varies in order to tickle the bug. (7 times Map.hs below, up to 11 times in other cases). The program terminates as expected if I use my (included) Map.hs instead of Data.Map, or if I declare the character map to be a separate constant, or if I compile with optimization. If compiled unoptimized with profiling it also does not terminate. [EMAIL PROTECTED] - uname -a Linux jupiter 2.6.8-24.14-smp #1 SMP Tue Mar 29 09:27:43 UTC 2005 i686 i686 i386GNU/Linux [EMAIL PROTECTED] - gcc --version gcc (GCC) 3.3.4 (pre 3.3.5 20040809) Copyright (C) 2003 Free Software Foundation, Inc. [EMAIL PROTECTED] - ghc --version The Glorious Glasgow Haskell Compilation System, version 6.4.1.20050517 [EMAIL PROTECTED] - ghc --make trans.hs -o trans -no-recomp Chasing modules from: trans.hs Compiling Main ( trans.hs, trans.o ) Linking ... [EMAIL PROTECTED] - date Fr Mai 20 10:27:00 CEST 2005 [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs real0m20.732s user0m20.298s sys 0m0.031s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 207572 2005-05-20 10:27 Map.hs.trans [EMAIL PROTECTED] - time ./trans Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs Map.hs trans: interrupted real4m29.816s user4m5.554s sys 0m24.120s [EMAIL PROTECTED] - ll Map.* -rw-r--r-- 1 maeder wimi 57184 2005-05-20 09:31 Map.hs -rw-r--r-- 1 maeder wimi 98304 2005-05-20 10:28 Map.hs.trans -- You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=108032aid=1209152group_id=8032 ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs