Re: [RFC] remove bus_memio.h and bus_pio.h
From: M. Warner Losh (imp_at_bsdimp.com)
Date: 05/30/05
- Previous message: Marcel Moolenaar: "Re: [PATCH] randomized mmap"
- In reply to: Scott Long: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Next in thread: Bruce Evans: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Reply: Bruce Evans: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Reply: Scott Long: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Sun, 29 May 2005 23:52:03 -0600 (MDT) To: scottl@samsco.org
In message: <4299FD87.1000505@samsco.org>
Scott Long <scottl@samsco.org> writes:
: This kind of makes me sad. I don't see how this was harming anything,
: it just wasn't documented so people didn't know how to use it. If it
: didn't apply to non-i386 and amd64, fine, just don't implement it for
: those platform. This optimization might have seemed trivial, but it's
: all of the little trivial optimizations that add up to make a nice
: system. I'm guessing that Justin only put effort into this originally
: because he did see a benefit; discounting it without doing any testing
: of your own is a bit disingenuous.
I've been unable to measure any difference in any of timing solution's
drivers between having the bus_pio.h include and not having it at all
(which disables the optimization). This is on a 266MHz Pentium. I'm
guessing that the drivers did inb/outb/etc so infrequently that any
benefit was swamped by the actual I/O. Even at the maximum data rates
that we could see (which did about 20k inb/outb a second) I couldn't
measure any CPU difference, nor could I measure any performance
difference. I did this in the 4.3 time frame in our tree when looking
to optimize a driver that was giving us trouble. A back of the
envelope calculation suggests that I should have seen about 100us/s of
extra CPU time. Since I ran the tests for about 1000 seconds, I
should have seen .1s extra in CPU. Maybe I did, but iirc the standard
deviation of the measurements as much more than that. I'll see if I
can find the data I gathered at the time.
I've not measured anything with memio to see if that matters, or if
there is anything different about newer pentiums and the branching
effects. However, when Justin introduced them in the 3.0 time frame,
which is 1998. According to Intel's web site, the Pentium II had just
been introduced, which puts the CPU speeds at just a little faster
than the embedded systems we run at work. I also recall discussions
with Justin at the time that said the biggest win was for 386 and 486
machines, but I might be misremembering those discussions, since they
were over lunch about 7 years ago.
Warner
_______________________________________________
freebsd-arch@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
- Previous message: Marcel Moolenaar: "Re: [PATCH] randomized mmap"
- In reply to: Scott Long: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Next in thread: Bruce Evans: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Reply: Bruce Evans: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Reply: Scott Long: "Re: [RFC] remove bus_memio.h and bus_pio.h"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
- Re: Strange 100% CPU usage with Xorg 7 (latest update)
... CPU was just a few percent, but it was at full scale. ... I have a Pentium
... drivers to be able to "hibernate"; if I use the closed source drivers, ... My
experience with Ubuntu shows that, ... (Ubuntu) - RE: Ondemand/Conservative not working with 2.6.18
... What CPU is this? ... Pentium M? ... Can you please make sure
you have configured in both speedstep-centrino and acpi-cpufreq drivers. ... Things should
work with both these drivers so that the best one will be used based on your BIOS support. ...
(Linux-Kernel) - Clocksource tsc is always unstable with 2.6.25-* kernels and CONFIG_NO_HZ=y on my box
... Switched to high resolution mode on CPU 1 ... Another strange thing is
when I try to boot that kernel with clocksource=acpi_pm it just hangs. ... # Parallel
IDE high-level drivers ... (Linux-Kernel) - Re: Linux 2.6.25-rc2
... CPU hotplug problem. ... This new testcase also showed that 2.6.24-rc2-mm1
can also be crashed ... # Device Drivers ... # SCSI support type ...
(Linux-Kernel) - Re: [Regression] 2.6.24-git9: RT sched mishandles artswrapper (bisected)
... Using local APIC timer interrupts. ... CPU: L2 Cache: 512K ...
# Device Drivers ... # SCSI support type ... (Linux-Kernel)