
#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/09f8abd6e89eb2c830b1dc0702ce9a0a0c4f... 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