#5085: internal error: evacuate: strange closure type
-----------------------------+----------------------------------------------
  Reporter:  mitar           |          Owner:  simonmar      
      Type:  bug             |         Status:  closed        
  Priority:  highest         |      Milestone:  7.4.1         
 Component:  Runtime System  |        Version:  7.1           
Resolution:  wontfix         |       Keywords:                
        Os:  Linux           |   Architecture:  x86_64 (amd64)
   Failure:  Runtime crash   |     Difficulty:                
  Testcase:                  |      Blockedby:                
  Blocking:                  |        Related:                
-----------------------------+----------------------------------------------

Comment(by mitar):

 That's interesting. I tried to reproduce this on a virtual machine running
 Linux and I tried 7.0.4, 7.2.2 and 7.4.1 and I cannot reproduce it
 anymore. It is true that I kept the same Haskell platform (2012.2) for all
 tests. That is probably a good thing.

 But what is even more interesting is that my algorithm does not work
 correctly on 7.2.2 and 7.4.1 anymore! It is a message-passing shortest-
 path searching algorithm which incrementally updates states of each node
 as it discovers better and better paths. And when it finds a better node,
 it informs all the neighbors about that which might also improve their
 list of best paths. And this is repeated. Every node is a Haskell spark,
 edges, too. So I really create a lot of sparks. At least around 60000 of
 them for `-s 400`. :-)

 And on 7.0.4 algorithm works. When messages stop being passed around, all
 shortest paths are found. But on 7.2.2 and 7.4.1 this is not so. Again and
 again only around 91% paths are found and then messages stop and program
 finishes because of this, but not all paths are found.

 I am not working on this project anymore so I also don't have time or
 motivation to really debug it. I just wanted to publish my findings. So
 something is different between 7.0 and 7.2+ versions. Maybe there is a bug
 in my code which was not visible before. Maybe some API semantic changed
 just slightly, so that GHC sill compiles, but behavior is changed. I don't
 know. And it is too complex and stochastic to easy debug it. But of
 course, this is also why it is a good example of a complex program which
 really pushes GHC and its runtime to limits.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5085#comment:17>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler

_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to