多道程序设计系统性能测量与分析

H. N. Cantrell, A. L. Ellison
{"title":"多道程序设计系统性能测量与分析","authors":"H. N. Cantrell, A. L. Ellison","doi":"10.1145/1468075.1468108","DOIUrl":null,"url":null,"abstract":"Why \" . . . design without evaluation usually is inadequate.\" \"Simulation... is applicable wherever we have a certain degree of understanding of the process to be simulated.\" \"The key to performance evaluation as well as to systems design is an understanding of what systems are and how they work.\" \"The purpose of measurment is insight, not numbers.\" Why should we spend time and money analyzing the performance of computer systems or computer programs? These systems or programs have been debugged. They work. They were designed for optimum performance by competent people who are just as convinced that their performance is optimum as they are that the program or system is logically correct. Why then should we analyze performance? There are three main reasons: 1. There may be performance bugs in a program. Performance bugs are the result of errors in evaluation or judgment on performance optimization. We have no reason to suspect that performance bugs are any less frequent or less serious than logical bugs. Thus, if the performance of a program or a system is important then it should be performance debugged by measurement and analysis. 2. If a new or better system or program is to be designed, then a good, quantitative understanding of the performance of previous systems is necessary to avoid performance bugs in the new design. 3. If an important program or system is intolerably slow, then the real reasons for its poor performance must be found by measurement and analysis. Otherwise time and money may be spent correcting many obvious but minor inefficiencies with no great effect on overall performance. Worse yet, the whole thing may be reimplemented with all key bugs preserved! In all three of these reasons the objective of performance analysis is to understand the unknown. We're looking for performance bugs. If we knew what these bugs were and what they cost in performance, then we wouldn't have to look for them. But because we are looking for unknown performance limiters, we don't know in advance what performance gains can be made by finding and fixing these bugs. We don't even know how hard or how easy it will be to fix these bugs after we find them. Thus, there is no way of predicting the performance payoff from the time and money spent in performance analysis. This time and money must be spent at risk, essentially on the basis of faith that the payoffs from performance analysis will exceed the value of any alternative way of spending this time and money. This is nothing new. This \"faith\" concept is well understood and accepted in the scientific and engineering communities. One of the purposes of this paper is to demonstrate that analysis pays off in programming to at least the same degree as in engineering and science.","PeriodicalId":180876,"journal":{"name":"Proceedings of the April 30--May 2, 1968, spring joint computer conference","volume":"125 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1968-04-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"41","resultStr":"{\"title\":\"Multiprogramming system performance measurement and analysis\",\"authors\":\"H. N. Cantrell, A. L. Ellison\",\"doi\":\"10.1145/1468075.1468108\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Why \\\" . . . design without evaluation usually is inadequate.\\\" \\\"Simulation... is applicable wherever we have a certain degree of understanding of the process to be simulated.\\\" \\\"The key to performance evaluation as well as to systems design is an understanding of what systems are and how they work.\\\" \\\"The purpose of measurment is insight, not numbers.\\\" Why should we spend time and money analyzing the performance of computer systems or computer programs? These systems or programs have been debugged. They work. They were designed for optimum performance by competent people who are just as convinced that their performance is optimum as they are that the program or system is logically correct. Why then should we analyze performance? There are three main reasons: 1. There may be performance bugs in a program. Performance bugs are the result of errors in evaluation or judgment on performance optimization. We have no reason to suspect that performance bugs are any less frequent or less serious than logical bugs. Thus, if the performance of a program or a system is important then it should be performance debugged by measurement and analysis. 2. If a new or better system or program is to be designed, then a good, quantitative understanding of the performance of previous systems is necessary to avoid performance bugs in the new design. 3. If an important program or system is intolerably slow, then the real reasons for its poor performance must be found by measurement and analysis. Otherwise time and money may be spent correcting many obvious but minor inefficiencies with no great effect on overall performance. Worse yet, the whole thing may be reimplemented with all key bugs preserved! In all three of these reasons the objective of performance analysis is to understand the unknown. We're looking for performance bugs. If we knew what these bugs were and what they cost in performance, then we wouldn't have to look for them. But because we are looking for unknown performance limiters, we don't know in advance what performance gains can be made by finding and fixing these bugs. We don't even know how hard or how easy it will be to fix these bugs after we find them. Thus, there is no way of predicting the performance payoff from the time and money spent in performance analysis. This time and money must be spent at risk, essentially on the basis of faith that the payoffs from performance analysis will exceed the value of any alternative way of spending this time and money. This is nothing new. This \\\"faith\\\" concept is well understood and accepted in the scientific and engineering communities. One of the purposes of this paper is to demonstrate that analysis pays off in programming to at least the same degree as in engineering and science.\",\"PeriodicalId\":180876,\"journal\":{\"name\":\"Proceedings of the April 30--May 2, 1968, spring joint computer conference\",\"volume\":\"125 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1968-04-30\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"41\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the April 30--May 2, 1968, spring joint computer conference\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/1468075.1468108\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the April 30--May 2, 1968, spring joint computer conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/1468075.1468108","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 41

摘要

为什么……没有评估的设计通常是不充分的。”“模拟…适用于任何我们对要模拟的过程有一定程度理解的地方。”“绩效评估和系统设计的关键是理解系统是什么以及它们如何工作。”“衡量的目的是洞察,而不是数字。”为什么我们要花时间和金钱分析计算机系统或计算机程序的性能?这些系统或程序已经过调试。他们的工作。它们是由有能力的人设计的,这些人相信他们的表现是最佳的,就像他们相信程序或系统在逻辑上是正确的一样。那么我们为什么要分析性能呢?主要有三个原因:1。程序中可能存在性能缺陷。性能bug是由于对性能优化的评估或判断错误而导致的。我们没有理由怀疑性能错误比逻辑错误更不频繁或更不严重。因此,如果程序或系统的性能很重要,那么应该通过测量和分析对其进行性能调试。2. 如果要设计一个新的或更好的系统或程序,那么有必要对以前系统的性能进行良好的定量理解,以避免新设计中的性能错误。3.如果一个重要的程序或系统慢得令人无法忍受,那么必须通过测量和分析找到其性能差的真正原因。否则,时间和金钱可能会花费在纠正许多明显但较小的低效上,而对整体性能没有太大影响。更糟糕的是,整个事情可能会在保留所有关键bug的情况下被重新实现!在所有这三个原因中,性能分析的目标是了解未知。我们在找性能问题。如果我们知道这些漏洞是什么,以及它们对性能的影响,那么我们就不必去寻找它们了。但是由于我们正在寻找未知的性能限制因素,因此我们无法提前知道通过发现和修复这些错误可以获得哪些性能提升。我们甚至不知道在找到这些漏洞后修复它们有多难或多容易。因此,没有办法通过在性能分析中花费的时间和金钱来预测性能收益。这些时间和金钱必须冒着风险投入,这主要是基于这样一种信念,即性能分析的回报将超过花费这些时间和金钱的任何替代方式的价值。这不是什么新鲜事。这种“信念”概念在科学界和工程界得到了很好的理解和接受。本文的目的之一是证明分析在编程中的回报至少与在工程和科学中的回报相同。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Multiprogramming system performance measurement and analysis
Why " . . . design without evaluation usually is inadequate." "Simulation... is applicable wherever we have a certain degree of understanding of the process to be simulated." "The key to performance evaluation as well as to systems design is an understanding of what systems are and how they work." "The purpose of measurment is insight, not numbers." Why should we spend time and money analyzing the performance of computer systems or computer programs? These systems or programs have been debugged. They work. They were designed for optimum performance by competent people who are just as convinced that their performance is optimum as they are that the program or system is logically correct. Why then should we analyze performance? There are three main reasons: 1. There may be performance bugs in a program. Performance bugs are the result of errors in evaluation or judgment on performance optimization. We have no reason to suspect that performance bugs are any less frequent or less serious than logical bugs. Thus, if the performance of a program or a system is important then it should be performance debugged by measurement and analysis. 2. If a new or better system or program is to be designed, then a good, quantitative understanding of the performance of previous systems is necessary to avoid performance bugs in the new design. 3. If an important program or system is intolerably slow, then the real reasons for its poor performance must be found by measurement and analysis. Otherwise time and money may be spent correcting many obvious but minor inefficiencies with no great effect on overall performance. Worse yet, the whole thing may be reimplemented with all key bugs preserved! In all three of these reasons the objective of performance analysis is to understand the unknown. We're looking for performance bugs. If we knew what these bugs were and what they cost in performance, then we wouldn't have to look for them. But because we are looking for unknown performance limiters, we don't know in advance what performance gains can be made by finding and fixing these bugs. We don't even know how hard or how easy it will be to fix these bugs after we find them. Thus, there is no way of predicting the performance payoff from the time and money spent in performance analysis. This time and money must be spent at risk, essentially on the basis of faith that the payoffs from performance analysis will exceed the value of any alternative way of spending this time and money. This is nothing new. This "faith" concept is well understood and accepted in the scientific and engineering communities. One of the purposes of this paper is to demonstrate that analysis pays off in programming to at least the same degree as in engineering and science.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信