Date: Sat, 26 Mar 2011 23:16:46 +1100 From: Peter Jeremy <peterjeremy@acm.org> To: John Baldwin <jhb@freebsd.org> Cc: freebsd-hackers@freebsd.org, Jing Huang <jing.huang.pku@gmail.com> Subject: Re: [GSoc] Timeconter Performance Improvements Message-ID: <20110326121646.GA2367@server.vk2pj.dyndns.org> In-Reply-To: <201103250818.38470.jhb@freebsd.org> References: <AANLkTimbBohQmoPv19Qq2U6M70OBx%2BFBMiUAzQmqrTLK@mail.gmail.com> <201103250818.38470.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--5mCyUwZo2JvN/JJP Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 2011-Mar-25 08:18:38 -0400, John Baldwin <jhb@freebsd.org> wrote: >For modern Intel CPUs you can just assume that the TSCs are in sync across= =20 >packages. They also have invariant TSC's meaning that the frequency doesn= 't=20 >change. Synchronised P-state invariant TSCs vastly simplify the problem but not everyone has them. Should the fallback be more complexity to support per-CPU TSC counts and varying frequencies or a fallback to reading the time via a syscall? >I believe we already have a shared page (it holds the signal trampoline no= w) >for at least the x86 platform (probably some others as well). r217151 for amd64 and r217400 for ppc. It doesn't appear to be supported on other platforms. My reading of the code is that there is a single shared page used by all processes/CPUs. In order to support non-synchronised TSCs, this would need to be changed to per-CPU. --=20 Peter Jeremy --5mCyUwZo2JvN/JJP Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (FreeBSD) iEYEARECAAYFAk2N2S4ACgkQ/opHv/APuIfNUgCfUYaQuUIOedvWArXwv5vGU3fz NzkAoJz5/SiaU5J2gfSECav9EqAv6MgW =59We -----END PGP SIGNATURE----- --5mCyUwZo2JvN/JJP--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110326121646.GA2367>