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

计算机体系结构(1) 介绍和基础

为了跟上我们组学习的进度,打好体系结构的基础,接下来我会持续的学习计算机体系结构的知识。参考的课程是   苏黎世联邦理工 ETH Zurich:Digital Design and Computer Architect

Lecture 1: Introduction and Basics_哔哩哔哩_bilibili

这一节简单介绍体系结构。

四个方向(目标)

(1)secure/reliable/safe。更安全可靠。

(2)energy-feeicient(低功耗),符合可持续发展的目标。

(3)low-latency (低延迟),predictable(可预测),让系统更快。

(4)与其他领域结合,构建高效的系统。

以apple的体系结构为例:

需要了解每个部分的原理。为什么需要这些目标?

可以设计更好的硬件,软件,系统,思维。

(觉得下面这段话挺有道理的,记下来)

更重要的是学习经验,长远的权衡,批判性思维和决策能力。

利用这门学科为自己谋长远的福利,这才是终生学习者的心态。

解决问题是为了获取洞察力。

计算机体系结构在解决问题中的层次:

设计根据目标不同实现的方法也不同,设计不同的体系结构原则是相同的。

比如,特斯拉自动驾驶的芯片,是根据汽车的工作负载设计的,可以支持机器学习推理加速,行人识别等任务。

英伟达的GPU支持动态编程。GPU是一个特殊的系统,针对图形处理设计的。

机器学习的革命伴随着GPU的发展。

协同设计:需要和软件和操作系统系统优化。

软件创新是建立在计算机架构的变化之上。

在未来,个性化医疗,个性化基因工程可能会实现。

底层还有很多提高的空间

 现在的体系结构,能效是一个非常非常大的制约因素。能效和可持续发展关系很大,考虑要寿命、可降解性。

( 我的理解是减少发热,把能源尽可能用到计算上面)

计算机在使用的时候消耗了大量的电能。所以我们应该考虑对未来的责任。(绿色)

数据中心对环境非常不利,数据中心放在有大量水源的地方。

训练深度学习模型排放了很多的碳。

深度网络在指数增长。

可以加速推荐系统。

以内存为中心的计算架构 和以 数据为中心的架构是不同的

很多芯片是不可靠的。

 数据越来越多,很多应用产生了大量的数据,对体系结构造成了挑战。

数据制约了计算的性能和极限。

例如,在安卓手机中,60%的能耗都消耗在了data movement(储存器到CPU)上面。

研究发现,部署机器学习的边缘设备 90%的能耗 都花费在 内存上(data movement)。

如果想要降低能耗,最重要的是就是数据和内存。瓶颈不在于计算,而在于内存。

因为访问内存和固态硬盘比CPU运算要慢的多,所以能耗也高出好几个数量级。

提出了很多新的概念。

新的计算模式(量子计算,....)

针对算法的硬件加速器(机器学习,数据分析,音视频)

新的内存,存储系统

 过去的系统看起来很简单。

现在的体系结构看起来很复杂(可以集成GPU,FPGA)

研究计算机系统结构是一件重要的事情。

计算机体系结构和建筑类比。

 建筑的设计原则:.........

 如何评价一个设计的好坏是一个重要的问题。

建筑师如何设计一个好的建筑呢?

需要努力、毅力、几十年的专注、经验、创造力、很多技能的组合(数学、建筑、美学、工程学)、创业精神、运气,设计原则.......

觉得这段话挺有启发的,记一下。

 

计算机系统的基本构件。

相关文章:

  • iOS MT19937随机数生成,结合AES-CBC加密算法实现。
  • C语言从入门到实战————文件操作
  • 【头歌-Python】 函数自学引导
  • 探索IOT物联网接入数据中台架构的关键要素
  • Vue-B站学习笔记
  • 美国MDO4054B-3泰克混合域示波器
  • 【Redis】NoSQL之Redis的配置和优化
  • 本地MinIO存储服务通过Java程序结合cpolar实现远程连接上传文件
  • 深度优先搜索算法C实现
  • RFID智能绘本柜助力优化儿童阅读体验。
  • k8s部署efk
  • C#设计简单的WinForms多窗口应用程序[示例]
  • 对称排序(蓝桥杯)
  • springcloud第4季 使用resilience4j实现服务流量治理
  • LeetCode-热题100:300. 最长递增子序列
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • Effective Java 笔记(一)
  • java概述
  • js算法-归并排序(merge_sort)
  • scala基础语法(二)
  • Vim 折腾记
  • 回流、重绘及其优化
  • 技术:超级实用的电脑小技巧
  • 聚类分析——Kmeans
  • 理解在java “”i=i++;”所发生的事情
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 你不可错过的前端面试题(一)
  • 手写双向链表LinkedList的几个常用功能
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • ​学习一下,什么是预包装食品?​
  • #include到底该写在哪
  • #QT(一种朴素的计算器实现方法)
  • (1)(1.11) SiK Radio v2(一)
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (附源码)springboot家庭装修管理系统 毕业设计 613205
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (转) ns2/nam与nam实现相关的文件
  • (转)一些感悟
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .form文件_SSM框架文件上传篇
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .Net 基于MiniExcel的导入功能接口示例
  • .NET框架设计—常被忽视的C#设计技巧
  • .Net中wcf服务生成及调用
  • @DateTimeFormat 和 @JsonFormat 注解详解
  • [.net 面向对象程序设计进阶] (19) 异步(Asynchronous) 使用异步创建快速响应和可伸缩性的应用程序...
  • [<事务专题>]
  • [20190416]完善shared latch测试脚本2.txt
  • [3300万人的聊天室] 作为产品的上游公司该如何?
  • [ACTF2020 新生赛]Upload 1
  • [BZOJ2281][SDOI2011]黑白棋(K-Nim博弈)
  • [CareerCup] 12.3 Test Move Method in a Chess Game 测试象棋游戏中的移动方法
  • [CISCN2019 华东南赛区]Web11