【发布时间】:2011-11-14 05:31:14
【问题描述】:
考虑一台多级计算机,其中所有级别都不同。每个级别的指令是其下一层的指令的 m 倍;也就是说,一条r级指令可以完成m级r-1条指令的工作,如果一个1级程序需要k秒运行,假设n级r指令,等效程序在2、3和4级需要多长时间需要解释单个 r+1 指令吗?
这是我想出的解决方案。有人可以确认或评论吗?
这是我最终想出的解决方案。任何人都可以验证或评论吗?
Level (r) Level-1 Instructions (m) Time
4 m^3 t(q) ==(m^3q+n+nm+nm^2) (k/q)
3 m^2 t(q) =(m^2q+n+nm)(k/q)
2 m t(q) = (mq+n)(k/q)
1 1 t(q) = k
为了计算包含 q 条一级指令的给定程序的运行时间 t(q),我们必须同时考虑每条 r 级指令所代表的呈指数增长的一级指令数量(显示为 m^( r-1)) 以及执行程序的每一层解释所需的额外 1 级指令数量(显示为 nm^(r-1))。对于 r>2,还必须将用于由较低级别解释的附加级别 1 指令添加到最终方程中。最后,对于每个方程,我们可以通过将使用的一级指令总数乘以一个一级循环的执行时间来确定程序运行所需的秒数,计算方式为 (k/q)。
免责声明:这是作业,作业已经交了。我根本无法理解这个问题的语义,我很想理解它。
【问题讨论】:
-
提示:制作一个表,其列标记如下:Level、NumInstructionsInProgram、InstructionsPerSecond、TotalTime。第一行将是 1、N、N/k、k。继续逐行填写。
-
我认为问题不在于是否所有指令都需要相同数量的时钟来执行。
-
我一直在填写表格,我只是对每个变量的确切含义以及如何将它们纳入表格值的语义有疑问。
-
这真的不是一个 CS 问题。更像是基础数学,上面有一些很好的味道。
-
在没有常数时求解 x?他们想要一个方程式来回答吗?
标签: logic