Skip to content
Snippets Groups Projects
  1. Nov 11, 1999
  2. Nov 10, 1999
  3. Nov 09, 1999
    • Simon Marlow's avatar
      [project @ 1999-11-09 15:57:39 by simonmar] · e77996aa
      Simon Marlow authored
      Fix up some problems with the IN_STG_CODE macro.
      e77996aa
    • Simon Marlow's avatar
      [project @ 1999-11-09 15:46:49 by simonmar] · 30681e79
      Simon Marlow authored
      A slew of SMP-related changes.
      
       - New locking scheme for thunks: we now check whether the thunk
         being entered is in our private allocation area, and if so
         we don't lock it.  Well, that's the upshot.  In practice it's
         a lot more fiddly than that.
      
       - I/O blocking is handled a bit more sanely now (but still not
         properly, methinks)
      
       - deadlock detection is back
      
       - remove old pre-SMP scheduler code
      
       - revamp the timing code.  We actually get reasonable-looking
         timing info for SMP programs now.
      
       - fix a bug in the garbage collector to do with IND_OLDGENs appearing
         on the mutable list of the old generation.
      
       - move BDescr() function from rts/BlockAlloc.h to includes/Block.h.
      
       - move struct generation and struct step into includes/StgStorage.h (sigh)
      
       - add UPD_IND_NOLOCK for updating with an indirection where locking
         the black hole is not required.
      30681e79
    • Simon Marlow's avatar
      [project @ 1999-11-09 11:38:28 by simonmar] · 532fc331
      Simon Marlow authored
      Test for lit-lits in patterns.
      532fc331
    • Simon Marlow's avatar
      [project @ 1999-11-09 11:37:38 by simonmar] · f91f525e
      Simon Marlow authored
      Fixes to Simon's lit-lit pattern commit
      f91f525e
    • Simon Marlow's avatar
      [project @ 1999-11-09 10:46:25 by simonmar] · ee6369a6
      Simon Marlow authored
      Reset standard file descriptors to blocking mode on exit.
      ee6369a6
    • Julian Seward's avatar
      [project @ 1999-11-09 10:05:07 by sewardj] · b38a2d75
      Julian Seward authored
      mulIntCzh (i386_TARGET_ARCH): xor --> xorl
      b38a2d75
    • AndyGill's avatar
      [project @ 1999-11-09 00:41:19 by andy] · 0d4adcb4
      AndyGill authored
      Debugging wibble.
      0d4adcb4
    • AndyGill's avatar
      [project @ 1999-11-09 00:40:11 by andy] · 1e440dbc
      AndyGill authored
      This is to fix the following bugs:
      
          Reported by    Description
          ----------------------------------------------------------------------
          Various        cutoff value for -c option seems too low.
          Andy           weirdness with :i C if C is a zero parameter class.
          Ross Paterson  Problem with rank 2 parameters and "Showable" class.
          Jeff           Stronger static checking on instances for classes with
                         functional dependencies.
      1e440dbc
    • Kevin Glynn's avatar
      [project @ 1999-11-09 00:14:50 by kglynn] · 8a76a663
      Kevin Glynn authored
      Support for negative timings in the stats file.  (I've seen times of -0.00).
      If a timing is negative then set it to 0.
      8a76a663
  4. Nov 08, 1999
  5. Nov 05, 1999
  6. Nov 04, 1999
  7. Nov 03, 1999
  8. Nov 02, 1999
    • Simon Marlow's avatar
      [project @ 1999-11-02 17:19:15 by simonmar] · c6ff5639
      Simon Marlow authored
      Time the shutdown code as well as the initialisation code.  This
      figure is sometimes significant for SMP, because the tasks are all
      killed by a signal (at the moment) and it might take a while for the
      signal to be delivered.
      c6ff5639
    • Simon Marlow's avatar
      [project @ 1999-11-02 17:17:47 by simonmar] · 4ada7d7d
      Simon Marlow authored
      Fix CAF_BLACKHOLE and BLACKHOLE_BQ entry code for SMP case (it was
      going into a busy locking state through comparing against the wrong
      info pointer)
      4ada7d7d
    • Simon Marlow's avatar
      [project @ 1999-11-02 17:08:28 by simonmar] · 05ae92d8
      Simon Marlow authored
      Remove accidental wibble that made it in with the last commit
      05ae92d8
    • Simon Marlow's avatar
      [project @ 1999-11-02 17:04:28 by simonmar] · 85b05cb2
      Simon Marlow authored
      make the prototypes of suspendThread and resumeThread available to the RTS.
      85b05cb2
    • Simon Marlow's avatar
      [project @ 1999-11-02 15:05:38 by simonmar] · f6692611
      Simon Marlow authored
      This commit adds in the current state of our SMP support.  Notably,
      this allows the new way 's' to be built, providing support for running
      multiple Haskell threads simultaneously on top of any pthreads
      implementation, the idea being to take advantage of commodity SMP
      boxes.
      
      Don't expect to get much of a speedup yet; due to the excessive
      locking required to synchronise access to mutable heap objects, you'll
      see a slowdown in most cases, even on a UP machine.  The best I've
      seen is a 1.6-1.7 speedup on an example that did no locking (two
      optimised nfibs in parallel).
      
      	- new RTS -N flag specifies how many pthreads to start.
      
      	- new driver -smp flag, tells the driver to use way 's'.
      
      	- new compiler -fsmp option (not for user comsumption)
      	  tells the compiler not to generate direct jumps to
      	  thunk entry code.
      
      	- largely rewritten scheduler
      
      	- _ccall_GC is now done by handing back a "token" to the
      	  RTS before executing the ccall; it should now be possible
      	  to execute blocking ccalls in the current thread while
      	  allowing the RTS to continue running Haskell threads as
      	  normal.
      
      	- you can only call thread-safe C libraries from a way 's'
      	  build, of course.
      
      Pthread support is still incomplete, and weird things (including
      deadlocks) are likely to happen.
      f6692611
    • sof's avatar
      [project @ 1999-11-02 13:58:57 by sof] · 947d2e36
      sof authored
      expected output
      947d2e36
    • Simon Marlow's avatar
      [project @ 1999-11-02 11:57:15 by simonmar] · c6f67e94
      Simon Marlow authored
      Add simple "raw" style callback example (i.e. not using the FFI).  Just
      for testing _ccall_GC really.
      c6f67e94
Loading