1.4.3 价格对系统结构的影响
我们将介绍各种改进系统性能的方法和技术。要较全面地评价一个系统结构时,既要考虑性能又要考虑价格。目前大多数情况下,大家把性能和价格当作一个参数看待,即性能/价格比。如果你把一台机器的速度提高了10%,那么用户一般是愿意多付10%的钱,即这台机器的性能/价格比保持不变。如果价格提高10%而机器的性能是提高20%,那么用户会更愿意购买这台新机器,可以得到真正的实惠,实际上这台机器有较高的性能/价格比。如果价格提高10%而性能只提高5%,即单位计算的成本增加而不是减少,那么大多数用户对这台机器就不会感兴趣。当然也有例外的情况,例如已有的某台机器的解题能力已不能满足用户的需要,用户迫切需要一台容量更大速度更快的机器,这时的性能/价格比另有解释了。因为用户有了较大解题能力的机器所获得的实惠要比所付出的钱合算。实际情况是用户为了得到大的解题能力,单位计算的成本增加了,所带来的好处是过去不能做的计算现在能在这台机器上完成了。然而,用户在购买这种解题能力很强的机器时如果有几种方案可供选择,虽然所有方案的性能/价格比都比用户现有的系统要低,但可以从中选择一个性能/价格比最高的系统。
前面列举的例子都是性能和价格相差不大的系统,这种情况下用性能/价格比这个参数能较好的反映系统之间的相对性能。如果两个系统的性能和价格相差很大,那么性能/价格比这个参数就没有实用意义了。
例如,用性能/价格比这个参数对一台八位电子游戏机和一台功能很强的CAD工作站进行比较时,往往会得出使人误解的结论。这两个系统都能显示图象和实时交互式地处理图象。如果我们有办法测出它们的相对性能,那么电子游戏机的性能/价格比会比工作站好得多。问题是两个系统的价格之比高达1000∶1,虽然两者的性能之比也很大,但不会大到1000∶1。这个例子告诉我们为了使性能/价格比这个参数能说明问题,进行比较的两个系统的功能须比较类似或性能相对接近。
上述讨论指出了改进系统结构的两条重要途径:
(1)性能或价格较小的变化产生比原系统好的性能/价格比。这个"小"是指性能或价格变化10倍左右的情况。
(2)提高系统的绝对性能,而价格增加比较合理。这种方法实际上会使性能/价格比下降,但只要用户有能力支付这笔增加的费用,并认为支付的费用所获得的高性能给他们带来的实惠是值得就行了。
由于通货膨胀等原因,用货币表示成本有时不太说明问题。因此用能反映成本高低的其它参数来定义成本可能更合理。例如用插头数、芯片面积、芯片引腿数、功耗等物理参数;设计时间、软件大小、开发队伍人数等和研制有关的参数。
本书无法列出影响成本的全部因素,只能讨论最重要的几个因素。在两个只有几个关键设计不同而其它都很相近的系统结构进行比较时,把影响成本的最主要部分孤立出来是很有必要的。这样可以把注意力放到两者的差别上,集中研究它们对成本的影响。每种方案有它的优点和缺点,优点和缺点反过来又影响该方案的成本。有时我们很难给出某种方案的绝对费用是多少,但可以给出各种设计对成本影响的大小。我们可以用对成本影响最大的因素去评价一个系统。