Date: Sun, 30 Oct 2005 16:16:06 -0700 (MST) From: "M. Warner Losh" <imp@bsdimp.com> To: gurney_j@resnet.uoregon.edu Cc: Alexander@Leidinger.net, freebsd-current@FreeBSD.org, davidxu@FreeBSD.org Subject: Re: TSC instead of ACPI: powerd doesn't work anymore (to be expected?) Message-ID: <20051030.161606.65680605.imp@bsdimp.com> In-Reply-To: <20051030195936.GZ4115@funkthat.com> References: <20051030093718.GE39253@dragon.NUXI.org> <4364D90F.3090205@samsco.org> <20051030195936.GZ4115@funkthat.com>
next in thread | previous in thread | raw e-mail | index | archive | help
In message: <20051030195936.GZ4115@funkthat.com> John-Mark Gurney <gurney_j@resnet.uoregon.edu> writes: : Scott Long wrote this message on Sun, Oct 30, 2005 at 07:30 -0700: : > >Correct, but why is it felt the latency of the ACPI timer is an issue? : > >Of course we all want things to as fast as possible, but is that just an : > >abstract desire, or a real issue was run into? : > > : > : > ACPI-fast requires an ioport read which takes about 1us (according to : > Google). Do that 1000 times a second and you have each CPU spending : > 1% of its time doing nothing but reading the clock. Yikes. : : Math correction: .1%... 1us * 1000 = 1ms, 1ms = .001s, .001 * 100% = .1% Actually, ioport reads can be faster than the 1us that's widely quoted. ioport reads can be as fast as ~125ns (2 cycles at 16MHz). However, experience has shown that they are rarely this fast. I've seen 8MB/s pio over the pci bus on some custom hardware we have, which 2Mreads/sec which is about 500ns per read. I think that the pci hardware that I was reading had a few extra wait states... The 1us/read is for devices on the ISA bus or for hardware that emulates this timing. Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051030.161606.65680605.imp>