[GHC] #10229: setThreadAffinity assumes a certain CPU virtual core layout

GHC ghc-devs at haskell.org
Thu Apr 2 17:32:39 UTC 2015


#10229: setThreadAffinity assumes a certain CPU virtual core layout
-------------------------------------+-------------------------------------
        Reporter:  nh2               |                   Owner:  simonmar
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:
       Component:  Runtime System    |                 Version:  7.10.1
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:
 Type of failure:  Runtime           |  Unknown/Multiple
  performance bug                    |               Test Case:
      Blocked By:                    |                Blocking:
 Related Tickets:                    |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by fryguybob):

 I have a version of GHC that I use to allow explicit setting of thread
 affinity for GHC capabilities.

 https://github.com/fryguybob/ghc/commit/09f8abd6e89eb2c830b1dc0702ce9a0a0c4f3705

 For a real patch we would want to think about the details of the RTS flag
 and file format as well as allowing some more friendly command-line
 options for common settings and low core counts (things that, at the
 moment, I don't have time to do).  I needed explicit setting to get
 consistent results on a Xeon E5-2699v3 machine with 72 threads where we
 wanted to consider not only hyperthreads and sockets, but also the
 proximity of particular cores on the same die.  Without setting thread
 affinity for capabilities results were quite scattered.

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


More information about the ghc-tickets mailing list