Date: Mon, 22 Sep 1997 15:51:03 -0600 (MDT) From: Nate Williams <nate@mt.sri.com> To: "Justin T. Gibbs" <gibbs@plutotech.com> Cc: Nate Williams <nate@mt.sri.com>, Bruce Evans <bde@zeta.org.au>, current@freebsd.org Subject: Re: cvs commit: src/sys/conf files src/sys/dev/vx if_vx.c if_vxreg.h src/sys/i386/apm apm.c src/sys/i386/conf GENERIC files.i386 src/sys/i386/eisa 3c5x9.c aha1742.c aic7770.c bt74x.c eisaconf.c eisaconf.h if_fea.c if_vx_eisa.c src/sys/i386/i386 autoconf.c ... Message-ID: <199709222151.PAA03325@rocky.mt.sri.com> In-Reply-To: <199709222145.PAA03221@pluto.plutotech.com> References: <199709222134.PAA03250@rocky.mt.sri.com> <199709222145.PAA03221@pluto.plutotech.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> >> If we implement high resolution timers, we will probably pay the O(hash > >> chain length) insertion sort price in timeout and schedule a one shot > >> timer for the next event that needs to run meaning that softclock is no > >> longer tied to hz. > > > >Then, why implement the darn thing at all, when we could simply add a > >hash-table to make untimeout more effecient, and not lose backwards > >compatability with all of the BSD code? I don't see what else the new > >code buys us that couldn't be done simply and with less overhead (in > >terms of code and new structure overhead)? > > > >Then, we'd be O(n) for timeout, O(1) for softclock, and O(1) for > >untimeout, which would be the same but with complete backwards > >compatability. The best of both worlds. :) > > I don't want to pay O(n) for anything. O(hash chain length) ~= O(n). > Perhaps I'm greedy. I can > perform upwards of 200 (real life, seek bound) transactions a second > with bonnie on a single Atlas II with the CAM code. I can perform > even more if I'm doing sequential reads. I can pretty much sustain > that rate to multiple drives meaning even a higher rate of timeout/ > untimeout calls. Going from 2 * O(n) to O(n) is not anywhere near > the same as going to 2 * O(1). See above. You aren't paying anything more for the 'high-resolution' timer case with the old code (with untimeout hash-table, not yet implemented) vs. the new code (with ordered insertion in the hash-table list, not yet implemented). Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199709222151.PAA03325>