Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Dec 2003 19:57:11 -0800 (PST)
From:      Jeff Roberson <jeff@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/kern sched_ule.c
Message-ID:  <200312110357.hBB3vBFD065098@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jeff        2003/12/10 19:57:11 PST

  FreeBSD src repository

  Modified files:
    sys/kern             sched_ule.c 
  Log:
   - Add support for CPU groups to ule.  All SMT cores on the same physical
     cpu are added to a group.
   - Don't place a cpu into the kseq_idle bitmask until all cpus in that group
     have idled.
   - Prefer idle groups over idle group members in the new kseq_transfer()
     function.  In this way we will prefer to balance load across full cores
     rather than add further load a partial core.
   - Before a cpu goes idle, check the other group members for threads.  Since
     SMT cpus may freely share threads, this is cheap.
   - SMT cores may be individually pinned and bound to now.  This contrasts the
     old mechanism where binding or pinning would have allowed a thread to run
     on any available cpu.
   - Remove some unnecessary logic from sched_switch().  Priority propagation
     should be properly taken care of in sched_prio() now.
  
  Revision  Changes    Path
  1.86      +263 -116  src/sys/kern/sched_ule.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200312110357.hBB3vBFD065098>