当前位置: 首页 > news >正文

【习题答案】《深入理解计算机系统(原书第三版)》

第一章 计算机系统漫游

考察Amdahl 定律

【练习题 1.1】

假设你是个卡车司机,要将土豆从爱达荷州的 Boise 运送到明尼苏达州的 Minneapolis, 全程 2500 公里。在限速范围内,你估计平均速度为 100 公里/小时,整个行程需要 25 个小时。
A. 你听到新闻说蒙大拿州刚刚取消了限速,这使得行程中有 1500 公里卡车的速度可以为 150 公里/小时。那么这对整个行程的加速比是多少?
B. 你可以为自己的卡车买个新的涡轮增压器。不过速度越快,价格越高。如果想要让整个行程的加速比为 1.67X ,那么你必须以多快的速度通过蒙大拿州?

【解A】

原本总耗时 = 25h
可改进部分为 1500 公里,原本用时 = 1500 / 100 = 15h,改进用时 = 1500 / 150 = 10h
改进部分的初始耗时比例 α = 15 / 25 = 0.6‬
加速比例因子 k = 15 / 10 = 1.5
加速比
image
S = 1 / [0.4 + 0.6/1.5] = 1.25×

更直观的理解:
image
S = 25 / (10 + 10) = 1.25×

【解B】

原本总用时 / 改进总用时 = 1.67
改进总用时 = 原本总用时 / 1.67 = 25 / 1.67 ≈ 15 = 可改进部分用时 + 固定用时
可改进部分用时 = 15 - 固定用时 = 15 - 10 = 5h
速度 = 1500 / 5 = 300km/h

【练习题 1.2】

公司的市场部向你的客户承诺,下一个版本的软件性能将改进 2X 。这项任务被分配给你。你 已经确认只有 80% 的系统能够被改进,那么,这部分需要被改进多少(即 k 取何值)才能达到整体性能目标?

【解】

S = 原本总用时 / 改进总用时 = 2
设原本总用时2t,改进后总用时为t
可改进部分的原本用时 = 0.8 x 2t = 1.6t
不可改进部分用时 = 0.4t
2t / (可改进部分改进后用时 + 0.4t) = 2
可改进部分改进后用时 = 0.6t
k = 1.6t / 0.6t = 2.67

也可以直接套公式计算
image

http://www.rkmt.cn/news/10664.html

相关文章:

  • 软件体系结构——负载均衡 - 指南
  • Qwen3-Max 2025年完整发布解析:阿里巴巴最强AI模型深度评测
  • css-伪元素清除浮动
  • 在K8S中,Deployment⽀持扩容吗?它与HPA有什么区别?
  • ABC424 游记(VP)
  • Java实现大乐透历史是否中奖查询
  • HTTP Request Blocker的下载与使用 - 实践
  • NeurIPS 2025 spotlight |FSDrive 自动驾驶最新VLA+世界模型 - 详解
  • 主要测试的测试用例
  • TensorFlow 和 PyTorch两大深度学习框架训练素材,并协作一个电商推荐系统
  • Memento:基于记忆无需微调即可让大语言模型智能体持续学习的框架
  • Java 与物联网(IoT):边缘计算与智能终端应用
  • AI 落地应用最新工具集
  • JAVA的计算方式
  • 线性结构常见应用之栈[基于郝斌课程]
  • go的泛型
  • 【汽车电子】汽车功能安全标准 ISO 26262
  • 02020405 EF Core基础05-EF Core反向工程、EF Core和ADO.NET Core的联系、EF Core无法做到的事情
  • 在CodeBolcks下wxSmith的C++编程教程——使用菜单和组件
  • jpegdump
  • 一个基于 .NET 开源、简易、轻量级的进销存管理系统 - 教程
  • Nginx 部署及配置
  • vite静态资源处理
  • SerpApi:一站式搜索引擎数据抓取API完全指南
  • 【Rust管理MySql】Actix Web 框架结合 MySQL 数据库进行交互
  • 审美积累 | 这样的科技网站怎么做?
  • css 使用记录 随笔
  • 【OI 档案-2025】CSP 赛前集训记(初赛后+复赛)
  • Git 从零到一:以 Gitee 为例的实战与可视化指南
  • 前沿速览:TrafficVLM、DeepSeek-Terminus、Qwen3-Omni、蚂蚁百灵、Wan2.2-Animate、Qianfan-VL