06:冯诺依曼计算机

news2025/2/25 1:33:07

布尔代数:是现代电子计算机的数学和逻辑基础

----------

布尔代数与开关电路:

----------

1945年:冯诺依曼101报告

 硬件,操作系统软件、防病毒软件、办公软件、日程生活娱乐软件......

冯诺依曼体系结构:

 算术逻辑单元、控制单元、存储单元、输入设备、输出设备

将CPU与存储器分开并非十全十美,反而会导致所谓的冯·诺伊曼瓶颈(von Neumann bottleneck):在CPU与存储器之间的流量(数据传输率)与存储器的容量相比起来相当小,在现代计算机中,流量与CPU的工作效率相比之下非常小,在某些情况下(当CPU需要在巨大的数据上运行一些简单指令时),数据流量就成了整体效率非常严重的限制。CPU将会在数据输入或输出存储器时闲置。由于CPU速度远大于存储器读写速率,因此瓶颈问题越来越严重。

而冯·诺伊曼瓶颈是约翰·巴科斯在1977年ACM图灵奖得奖致词时第一次出现,根据巴科斯所言:

“……确实有一个变更存储设备的方法,比借由冯·诺伊曼瓶颈流通大量数据更为先进。瓶颈这词不仅是对于问题本身数据流量的叙述,更重要地,也是个使我们的思考方法局限在‘一次一字符’模式的智能瓶颈。它使我们怯于思考更广泛的概念。因此编程成为一种计划与详述通过冯·诺伊曼瓶颈的字符数据流,且大部分的问题不在于数据的特征,而是如何找出数据。”

在CPU与存储器间的高速缓存存储器抒解了冯·诺伊曼瓶颈的性能问题......

----------

数据流量相较CPU的工作效率小,所以CPU计算的速度相对较快,但是如果数据量较大,将数据输入或输出存储器需要较长的时间,这个时间里面,CPU的算力就会闲置。这对于进一步提升计算机的算力是一个瓶颈一样的限制。可能的克服方法:(1)CPU的寄存器,可能提高一些数据的存取效率;(2)分布式计算,或者并行式计算,我曾经看过林子雨老师“大数据原理与应用”网课,其中有介绍到数据量大的时候可以采用分布式存储,而在做计算的时候,可以用程序去靠近数据,而不是让数据跟着程序走。我想,在不同分机上针对不同数据分别进行一部分计算,最后加以分析汇总,这样可能有助于克服冯·诺依曼瓶颈的一些问题。

由于指令与数据放在同一内存带来的CPU利用率(吞吐率)限制就是冯诺依曼瓶颈

冯诺依曼瓶颈的缓解办法有:

1.在CPU和主存之间提供高速缓存

2.为数据和指令提供单独的缓存或单独的访问路径(所谓的改良哈佛体系结构)

3.使用分支预测器算法和逻辑

4.提供有限的CPU堆栈或其他片上草稿行内存以减少内存访问

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/561594.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能Python-python_pu__

Python pu()函数介绍及使用方法 在Python编程中,pu()函数是一个常用的输出函数,可以将输出的内容打印到控制台上。在这篇文章中,我们将探讨pu()函数的具体用法以及它在Python编程中的实际应用。 什么是pu()函数 pu()函数是Python标准库中的…

Nacos、Eureka和Zookeeper有什么区别

Nacos、Eureka和Zookeeper都是服务注册中心,它们的主要功能是管理分布式系统中各个微服务实例的注册与发现。它们之间的主要区别在于: 1. 语言支持:Nacos是用Java语言开发的,Eureka是用Java语言开发的,Zookeeper则是用…

MySQL高级篇——覆盖索引、前缀索引、索引下推、SQL优化、主键设计

导航: 【Java笔记踩坑汇总】Java基础进阶JavaWebSSMSpringBoot瑞吉外卖SpringCloud黑马旅游谷粒商城学成在线MySQL高级篇设计模式牛客面试题 目录 8. 优先考虑覆盖索引 8.1 什么是覆盖索引? 8.1.0 概念 8.0.1 覆盖索引情况下,“不等于”…

chatgpt赋能Python-python_pythoncom

Python与Pythoncom:为您的SEO提供强大的支持 Python是一种经过广泛应用的高级编程语言,可用于多种应用程序的开发,包括爬虫、机器学习、数据分析、Web开发等等。而Pythoncom则是用于与Windows系统进行交互的Python模块,可以实现与…

小航编程题库机器人等级考试理论一级(2022年12月) (含题库教师学生账号)

需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号)_程序猿下山的博客-CSDN博客 单选题2.0分 删除编辑 答案:C 第1题下列哪个是机器人?( ) A、aB、bC、cD、d 答案解析: 单选题…

小航编程题库机器人等级考试理论一级(2022年6月) (含题库教师学生账号)

需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号)_程序猿下山的博客-CSDN博客 单选题2.0分 删除编辑 答案:D 第1题下列哪个选项属于机器人?(?) A、aB、bC、cD、d 答案解析&a…

MySQL第一章、MySQL安装与配置

目录 一、数据库介绍 1.1什么是数据库 1.2数据库分类 1.3数据库编程 1.4其他客户端 ​1.5MySQL总结 一、数据库介绍 1.1什么是数据库 存储数据用文件就可以了,为什么还要弄个数据库? 文件保存数据有以下几个缺点: 文件的安全性问题文件不利于数…

chatgpt赋能Python-python_plup

Python Plug-In: 如何让你的Python代码更加高效? Python是一种高级编程语言,它的代码易于阅读和编写,通常是程序员的首选语言之一。但是,Python本身并不能满足所有需求,如果需要做一些复杂的任务,就需要使…

物联网应用的全球最低功耗无线芯片——芝麻芯片和大米天线

今天的内容是两则科技新闻,“用于物联网应用的全球最低功耗的无线芯片”,和“一款多频段微型芯片天线”。由于芯片的面积分别为1平方毫米,和21平方毫米,差不多是1粒芝麻和2粒大米的大小,故称为芝麻芯片和大米天线。 0…

easypan部署记录

文章目录 项目部署学习链接1.安装ffmpeglinux centos下安装ffmpeg的详细教程 2. springboot maven 多环境配置文件pom.xmlapplication.propertiesapplication-dev.propertiesapplication-prod.propertieslogback.xml 3. 配置nginx配置要点nginx配置 4. 启动项目5.访问 项目部署…

Java --- 云尚办公之权限管理模块

目录 一、权限管理 二、JWT 三、用户登录功能实现 四、用户登录后的信息 五、前端代码 六、spring-security 6.1、用户认证 6.2、用户授权 一、权限管理 粗粒度权限: 不同用户进入系统,因权限不同看到菜单不同 细粒度权限: 在一个页…

一、尚医通平台前端搭建

文章目录 一、尚医通平台前端搭建1、服务端渲染技术NUXT 二、首页实现1、公共处理1.1添加静态资源1.2 定义布局1.2.1 修改默认布局1.2.2 提取头文件1.2.3 提取尾文件1.2.4 默认布局引入头尾文件 2、首页引入2.1 引入首页静态页面2.2 首页数据分析 3、首页数据api接口3.1 医院分…

chatgpt赋能Python-python_penup怎么用

Python Penup - 内在交互性的有用工具 Python编程语言的流行一直与其灵活性和易于使用性息息相关。除此之外,Python还提供了大量的扩展和库,以满足各种编程需求。Penup是Python编程中一个非常有用的工具。 什么是Python Penup? Penup是Pyt…

windows环境下安装RabbitMQ(超详细),

windows环境下安装RabbitMQ(超详细) 注:安装路径,用户名均为英文 一、RabbitMq简介 1.1消息队列中间件简介 消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题…

Discourse 如何配置 MAXMIND 来对 IP 地址反向查询

【配置 MAXMIND,Discourse 需要重新构建,这将会导致服务中断。 】 什么是 MAXMIND 和为什么我们需要使用这个服务 Discourse 使用 MAXMIND 来通过 IP 地址反向查询具体的物理地址。 如果 Discourse 没有配置 Maxmind’s 数据库,我们看到的配…

leetcode 数据库题 196,197,262,511,550,570

leetcode 数据库题第二弹 196. 删除重复的电子邮箱197. 上升的温度262. 行程和用户511. 游戏玩法分析 I550. 游戏玩法分析 IV570. 至少有5名直接下属的经理577. 员工奖金小结 196. 删除重复的电子邮箱 题目地址:https://leetcode.cn/problems/delete-duplicate-emai…

二、服务网关-Gateway

文章目录 一、服务网关1、网关介绍2、Spring Cloud Gateway介绍3、搭建server-gateway模块3.1 搭建server-gateway3.2 修改配置pom.xml3.3 在resources下添加配置文件3.4添加启动类3.5 跨域处理3.5.1 为什么有跨域问题?3.5.2解决跨域问题 3.6服务调整3.7测试 一、服…

chatgpt赋能Python-python_pulp包怎么安装

Python Pulp包的安装方法 如果你正在进行线性规划或整数规划问题的研究或解决,那么Python Pulp包是一个非常实用的工具,它可以快速、高效地解决这些问题。但是,在使用Python Pulp包的过程中,你可能会遇到一些安装问题。本文将介绍…

Http协议网络读卡器Aspx网页Request获取刷卡数据Response回应驱动显示

三种提交方式可自由设置 RFID网络WIFI无线TCP/UDP/HTTP可编程二次开发读卡器POE供电语音-淘宝网 (taobao.com) HttpReader.aspx.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebCont…

C/C++ 数据结构设计与应用(四):C++数据压缩与传输:从理论到实践的全景解析

C数据压缩与传输:从理论到实践的全景解析 一、数据压缩的策略与方法 (Strategies and Methods of Data Compression)1.1 数据压缩的基本概念与原理 (Basic Concepts and Principles of Data Compression)1.2 C中的数据压缩技术 (Data Compression Techniques in C)1…