多处理器的基本概念

1. 计算机体系结构

  • 分类依据:根据指令流和数据流的数量关系,计算机体系结构可分为四种类型:SISD、SIMD、MISD、MIMD。

(1)SISD 单指令流单数据流

  • 定义:任意时刻计算机只能执行单一指令操作单一数据。
  • 特点
    • 传统桌面计算机处理文本编辑或简单图形操作时采用。
    • 指令执行过程是串行的。
  • 类比:如同单个厨师按食谱单独完成整个菜肴的制作过程。

(2)SIMD 单指令流多数据流

  • 定义:一条指令同时操作多个数据
  • 适用场景
    • 重复相同操作(如图像处理中的像素操作)
    • 现代 GPU 渲染 3D 图形时处理顶点和像素
  • 实现方式:通过指令控制部件指挥多个处理单元并行操作
  • 类比:单个厨师指挥多个助手同时完成食谱不同部分的食材处理

(3)MISD 多指令流单数据流

  • 定义:多条指令流同时操作同一数据
  • 现状
    • 难以实现且不必要
    • 实际中不存在此类架构
  • 类比:多个厨师对同一份食材进行不同处理(如一个切菜一个腌制)

(4)MIMD 多指令流多数据流

  • 定义:多个处理器同时执行不同指令序列处理不同数据
  • 应用场景
    • 大型服务器处理多用户请求
    • Web 服务器和数据库服务器
  • 特点:各处理器独立执行指令流处理各自数据流
  • 类比:多个厨师各自独立按不同食谱做不同的菜

(5)总结

  • 核心区别
    • SISD:单指令单数据(串行处理)
    • SIMD:单指令多数据(向量化处理)
    • MISD:多指令单数据(理论存在)
    • MIMD:多指令多数据(完全并行)
  • 效率对比:SIMD 相比 SISD 可并行处理相同指令,效率更高

(6)向量处理器

  • 本质:SIMD 的变体,专为复杂数学运算设计
  • 特点
    • 处理数据量级远大于普通 SIMD
    • 使用向量寄存器同时处理大量数据
  • 工作方式:一次性对向量中所有元素执行相同操作
  • 类比:厨师用超大炒锅同时翻炒所有食材

2. 线程

  • 定义:操作系统中的基本执行单位
  • 与进程关系
    • 进程包含多个线程
    • 每个线程可执行多条指令
  • 注意:详细区别将在操作系统课程中讲解

3. 细粒度多线程

  • 实现方式:处理器每个时钟周期轮换不同线程
  • 优势:避免因单个线程阻塞导致资源闲置
  • 调度机制:按固定时间片轮转执行各线程指令

4. 粗粒度多线程

  • 实现方式:当前线程阻塞完成后才切换
  • 切换条件:等待 I/O 操作、长时间计算等资源延迟
  • 特点:相比细粒度切换频率低,上下文切换开销小

5. 同时多线程

  • 实现基础:多核处理器
  • 特点:多个线程指令在同一时间内并行执行
  • 资源利用:通过处理器内部资源共享和复用实现

6. 多核处理器

  • 定义:单个 CPU 中集成多个处理单元(核)
  • 特点
    • 各核有独立执行单元和 cache
    • 共享主存资源
  • 现代应用:当前计算机普遍采用多核架构

7. 共享内存多处理器

  • 别名:对称多处理器 (SMP)
  • 基本特征
    • 多个相同处理器共享主存和 I/O 设备
    • 通过高速总线互联
    • 共享单一操作系统

(1)统一存储访问 UMA 多处理器

  • 内存访问
    • 所有处理器平等访问全部内存单元
    • 访问时间基本一致
  • 缓存问题:需特别注意各处理器中的 cache 的一致性

(2)非统一存储访问 NUMA 多处理器

  • 内存分配主存分割给不同处理器
  • 访问特点
    • 访问本地内存更快(自身附近)
    • 访问远程内存较慢(远程内存)
  • 适用场景:需要大规模并行处理的系统

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vscode 插件开发activityba

在 VS Code 插件开发中,**Activity Bar(活动栏)**是左侧垂直导航栏的核心组成部分,它为用户提供了快速访问插件功能的入口。通过自定义 Activity Bar,开发者可以显著提升插件的可见性和用户体验。以下是关于 Activity …

【橘子分布式】Thrift RPC(理论篇)

一、简介 首先还是那句话,概念网上已经很多了,我们就不多逼逼了。我来大致介绍一下。 Thrift是一个RPC框架可以进行异构系统(服务的提供者 和 服务的调用者 不同编程语言开发系统)的RPC调用为什么在当前的系统开发中,会存在着异构系统的RPC…

项目进度依赖纸面计划,如何提升计划动态调整能力

项目进度依赖纸面计划会导致实际执行中的调整能力不足。提升计划动态调整能力的方法包括:建立动态进度管理系统、强化团队沟通与协作、定期开展风险评估与进度复盘。特别是建立动态进度管理系统,通过信息技术工具实现实时跟踪和反馈,使计划能…

递推预处理floor(log_2{n})

在C中&#xff0c;除了使用<cmath>中的log或log2函数求对数&#xff0c;也可以通过递推求出所有可能用到的⌊log⁡2i⌋,i∈[1,n]\lfloor \log_2i\rfloor, i\in[1, n]⌊log2​i⌋,i∈[1,n] 证明&#xff1a;⌊log⁡2i⌋⌊log⁡2⌊i2⌋⌋1\lfloor \log_2i \rfloor\lfloor \…

【AI智能体】智能音视频-搭建可视化智能体

可视化智能体是语音小伴侣智能体的升级版&#xff0c;支持语音与视频的双模态交互。本文详细介绍了音视频交互的实现原理、智能体搭建方法及效果测试&#xff0c;帮助开发者快速构建支持音视频交互的智能体。 应用场景 可视化智能体适用于多种场景&#xff0c;举例如下&#…

Sensoglove推出新一代外骨骼力反馈手套:主动力反馈+亚毫米级手指追踪,助力机器人操控与虚拟仿真

在工业自动化、虚拟现实和医疗康复等领域&#xff0c;高精度手部交互设备的需求日益增长。Sensoglove推出的Rembrandt外骨骼力反馈手套&#xff0c;结合主动力反馈、触觉反馈与亚毫米级追踪技术&#xff0c;为用户提供更自然、更安全的操作体验。Sensoglove外骨骼力反馈手套核心…

AutoMapper入门

在 ASP.NET Core 开发中&#xff0c;我们经常需要在不同层之间传递数据&#xff1a;比如从数据库模型&#xff08;Entity&#xff09;转换到 DTO&#xff0c;再从 DTO 转换为前端视图模型。这些转换代码大量重复、冗长、容易出错。为了解决这个问题&#xff0c;AutoMapper 诞生…

PyTorch武侠演义 第一卷:初入江湖 第1章:武林新秀遇Tensor - 张量基础

第一卷&#xff1a;初入江湖 第1章&#xff1a;武林新秀遇Tensor - 张量基础晨起码农村 鸡鸣三声&#xff0c;林小码已经收拾好了行囊。他最后看了眼床头那本翻旧的《Python入门心法》&#xff0c;轻轻抚平卷起的书角。 "小码&#xff0c;路上小心。"父亲将一把青铜匕…

Python进阶(4):类与面向对象程序设计

面向对象OOPOOP:Object Oriented Programming,面向对象编程,面向对象中的对象(Obiect)&#xff0c;通常是指客观世界中存在的对象&#xff0c;这个对象具有唯一性&#xff0c;对象之间各不相同&#xff0c;各有各的特点&#xff0c;每个对象都有自己的运动规律和内部状态;对象与…

如何在 Shopify 中创建退货标签

退货是电商运营中不可避免的一环&#xff0c;而一个顺畅、透明的退货流程&#xff0c;不仅能减少客户投诉&#xff0c;也有助于提升顾客对品牌的信任与忠诚度。Shopify 虽然没有内建退货标签自动生成功能&#xff0c;但通过合理设置与外部工具整合&#xff0c;你完全可以打造一…

I2C设备寄存器读取调试方法

1、查看I2C挂载设备 2、读取i2C设备所有寄存器 3、读取i2c设备的某个寄存器 4、向i2C设备某个寄存器写入一个值1、查看

K8S的Helm包管理器

一、背景 官网: https://helm.sh/ 我们针对K8S环境中&#xff0c;部署对应的应用&#xff0c;无外乎就是编写一堆yaml资源清单文件. 资源清单、依赖性少的时候&#xff0c;可以直接手动维护。但是&#xff0c;随着资源清单越来越复杂&#xff0c;越来越多&#xff0c;不同的环…

多模态数据处理新趋势:阿里云ODPS技术栈深度解析与未来展望

多模态数据处理新趋势&#xff1a;阿里云ODPS技术栈深度解析与未来展望 &#x1f31f; 嗨&#xff0c;我是IRpickstars&#xff01; &#x1f30c; 总有一行代码&#xff0c;能点亮万千星辰。 &#x1f50d; 在技术的宇宙中&#xff0c;我愿做永不停歇的探索者。 ✨ 用代码丈…

AI数据分析仪设计原理图:RapidIO信号接入 平板AI数据分析仪

AI数据分析仪设计原理图&#xff1a;RapidIO信号接入 平板AI数据分析仪 1 、概述 本仪器是一款面向工业控制、新能源、震动测量等业务开发的平板AI数据分析仪。基于 Jetson Orin Nano&#xff08;AI边缘计算&#xff09;、实现RapidIO接口数据接入&#xff0c;进行AI分析。Rap…

人工智能正逐步商品化,而“理解力”才是开发者的真正超能力

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

玩转ClaudeCode:ClaudeCode安装教程(Windows+Linux+MacOS)

Windows 环境安装 Claude Code 一、安装 WSL 环境 1. 确认 Windows 功能已开启 打开 “控制面板 → 程序 → 启用或关闭 Windows 功能” 勾选 “适用于 Linux 的 Windows 子系统” 和 “虚拟机平台” 点“确定”后重启电脑。 开机后&#xff0c;管理员模式打开 Terminal…

PyTorch多层感知机(MLP)模型构建与MNIST分类训练

冲冲冲&#x1f60a; here&#x1f60a; 文章目录PyTorch多层感知机模型构建与MNIST分类训练笔记&#x1f3af; 1. 任务概述⚙️ 2. 环境设置2.1 导入必要库2.2 GPU配置&#x1f9e0; 3. 模型构建3.1 模型定义关键点3.2 损失函数选择3.3 模型初始化与设备选择&#x1f527; 4. …

android tabLayout 切换fragment fragment生命周期

1、TabLayout 与 Fragment 结合使用的常见方式 通常会使用 FragmentPagerAdapter 或 FragmentStatePagerAdapter 与 ViewPager 配合,再将 TabLayout 与 ViewPager 关联,实现通过 TabLayout 切换 Fragment。 以下是布局文件示例 activity_main.xml: <LinearLayout xmln…

马蹄集 BD202401补给

可怕的战争发生了&#xff0c;小度作为后勤保障工作人员&#xff0c;也要为了保卫国家而努力。现在有 N(1≤N≤)个堡垒需要补给&#xff0c;然而总的预算 B(1≤B≤)是有限的。现在已知第 i 个堡垒需要价值 P(i) 的补给&#xff0c;并且需要 S(i) 的运费。 鉴于小度与供应商之间…

《Llava:Visual Instruction Tuning》论文精读笔记

论文链接&#xff1a;arxiv.org/pdf/2304.08485 参考视频&#xff1a;LLAVA讲解_哔哩哔哩_bilibili [论文速览]LLaVA: Visual Instruction Tuning[2304.08485]_哔哩哔哩_bilibili 标题&#xff1a;Visual Instruction Tuning 视觉指令微调 背景引言 大模型的Instruction…