[BACK]Return to 4.t CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / share / doc / papers / kerntune

Annotation of src/share/doc/papers/kerntune/4.t, Revision 1.3

1.3     ! agc         1: .\"    $NetBSD: 4.t,v 1.2 1998/01/09 06:41:23 perry Exp $
1.2       perry       2: .\"
1.1       cgd         3: .\" Copyright (c) 1984 The Regents of the University of California.
                      4: .\" All rights reserved.
1.3     ! agc         5: .\"
        !             6: .\" Redistribution and use in source and binary forms, with or without
        !             7: .\" modification, are permitted provided that the following conditions
        !             8: .\" are met:
        !             9: .\" 1. Redistributions of source code must retain the above copyright
        !            10: .\"    notice, this list of conditions and the following disclaimer.
        !            11: .\" 2. Redistributions in binary form must reproduce the above copyright
        !            12: .\"    notice, this list of conditions and the following disclaimer in the
        !            13: .\"    documentation and/or other materials provided with the distribution.
        !            14: .\" 3. Neither the name of the University nor the names of its contributors
        !            15: .\"    may be used to endorse or promote products derived from this software
        !            16: .\"    without specific prior written permission.
        !            17: .\"
        !            18: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
        !            19: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
        !            20: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
        !            21: .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
        !            22: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
        !            23: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
        !            24: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
        !            25: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
        !            26: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
        !            27: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
        !            28: .\" SUCH DAMAGE.
        !            29: .\"
        !            30: .\" Copyright (c) 1984 M. K. McKusick
1.1       cgd        31: .\"
                     32: .\" Redistribution and use in source and binary forms, with or without
                     33: .\" modification, are permitted provided that the following conditions
                     34: .\" are met:
                     35: .\" 1. Redistributions of source code must retain the above copyright
                     36: .\"    notice, this list of conditions and the following disclaimer.
                     37: .\" 2. Redistributions in binary form must reproduce the above copyright
                     38: .\"    notice, this list of conditions and the following disclaimer in the
                     39: .\"    documentation and/or other materials provided with the distribution.
                     40: .\" 3. All advertising materials mentioning features or use of this software
                     41: .\"    must display the following acknowledgement:
                     42: .\"    This product includes software developed by the University of
                     43: .\"    California, Berkeley and its contributors.
                     44: .\" 4. Neither the name of the University nor the names of its contributors
                     45: .\"    may be used to endorse or promote products derived from this software
                     46: .\"    without specific prior written permission.
                     47: .\"
                     48: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     49: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     50: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     51: .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     52: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     53: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     54: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     55: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     56: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     57: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     58: .\" SUCH DAMAGE.
                     59: .\"
                     60: .\"    @(#)4.t 1.2 (Berkeley) 11/8/90
                     61: .\"
                     62: .ds RH Conclusions
                     63: .NH 1
                     64: Conclusions
                     65: .PP
                     66: We have created a profiler that aids in the evaluation
                     67: of the kernel.
                     68: For each routine in the kernel,
                     69: the profile shows the extent to which that routine
                     70: helps support various abstractions,
                     71: and how that routine uses other abstractions.
                     72: The profile assesses the cost of routines
                     73: at all levels of the kernel decomposition.
                     74: The profiler is easily used,
                     75: and can be compiled into the kernel.
                     76: It adds only five to thirty percent execution overhead to the kernel
                     77: being profiled,
                     78: produces no additional output while the kernel is running
                     79: and allows the kernel to be measured in its real environment.
                     80: Kernel profiles can be used to identify bottlenecks in performance.
                     81: We have shown how to improve performance
                     82: by caching recently calculated name translations.
                     83: The combined caches added to the name translation process
                     84: reduce the average cost of translating a pathname to an inode by 35%.
                     85: These changes reduce the percentage of time spent running
                     86: in the system by nearly 9%.
                     87: .nr H2 1
                     88: .ds RH Acknowledgements
                     89: .SH
                     90: \s+2Acknowledgements\s0
                     91: .PP
                     92: I would like to thank Robert Elz for sharing his ideas and
                     93: his code for cacheing system wide names.
                     94: Thanks also to all the users at Berkeley who provided all the
                     95: input to generate the kernel profiles.
                     96: This work was supported by
                     97: the Defense Advance Research Projects Agency (DoD) under
                     98: Arpa Order No. 4031 monitored by Naval Electronic System Command under
                     99: Contract No. N00039-82-C-0235.
                    100: .ds RH References
                    101: .nr H2 1
                    102: .sp 2
                    103: .SH
                    104: \s+2References\s-2
                    105: .LP
                    106: .IP [Bentley81] 20
                    107: Bentley, J. L.,
                    108: ``Writing Efficient Code'',
                    109: Department of Computer Science,
                    110: Carnegie-Mellon University,
                    111: Pittsburgh, Pennsylvania,
                    112: CMU-CS-81-116, 1981.
                    113: .IP [Graham82] 20
                    114: Graham, S., Kessler, P., McKusick, M.,
                    115: ``gprof: A Call Graph Execution Profiler'',
                    116: Proceedings of the SIGPLAN '82 Symposium on Compiler Construction,
                    117: Volume 17, Number 6, June 1982. pp 120-126
                    118: .IP [Graham83] 20
                    119: Graham, S., Kessler, P., McKusick, M.,
                    120: ``An Execution Profiler for Modular Programs''
                    121: Software - Practice and Experience,
                    122: Volume 13, 1983. pp 671-685
                    123: .IP [Ritchie74] 20
                    124: Ritchie, D. M. and Thompson, K.,
                    125: ``The UNIX Time-Sharing System'',
                    126: CACM 17, 7. July 1974. pp 365-375

CVSweb <webmaster@jp.NetBSD.org>