前沿计组知识入门
这份PDF文件是一份关于计算机体系结构的讲义,涵盖了从基础概念到高级主题的多个方面。以下是详细的总结和分析:
- 计算机体系结构概述
定义:计算机体系结构是计算机系统的理论组成部分,根据其属性和功能进行划分,包括计算机的基本原理和理论。
对不同角色的意义:
对于系统设计者,它是研究计算机的基本设计原则和逻辑结构。
对于程序员,它是系统的功能描述,如指令集和编程方法。 - 现代计算机系统的平衡:通用性与专用性
通用性(Generality):
定义:系统能够适应多种任务和环境的能力。
优势:灵活性、可扩展性和效率。
成本:牺牲专用性,需要更多代码和处理逻辑,可能导致性能折衷。
专用性(Specificity):
定义:系统针对特定领域或任务的高度定制化。
优势:高性能、稳定性和安全性。
成本:牺牲通用性,难以适应多种任务。 - 实现通用性和专用性的方法
通用性:
关键思想:通过抽象层次实现通用性,接口是抽象层次之间的桥梁。
指令集是软件和硬件之间的关键接口。
专用性:
关键思想:通过并行性和局部性的权衡实现专用性。
数据使用与存储的权衡:增加并行性可能导致数据传输成本增加。 - 计算机体系结构的发展趋势
摩尔定律:单芯片上的晶体管数量每两年翻一番。
性能提升的瓶颈:
单核性能提升在2003年达到极限。
新的性能提升模型:通过并行性(如指令级并行、线程级并行、任务级并行)实现。
内存计算和近内存计算成为新趋势。 - 计算机的通用性
图灵机:通用计算机的理论基础。
二进制表示:数字信号与模拟信号的区别,以及二进制的补码表示。
逻辑门和加法器:介绍了基本逻辑单元(如AND、OR、NOT)和加法器的实现。 - 冯·诺依曼体系结构和指令集
指令集:软件和硬件之间的接口。
程序的抽象层次:
高级语言程序(如C语言)。
汇编语言程序(如MIPS)。
机器代码(二进制代码)。
单周期处理器:处理器设计的基本概念。 - 指令级并行性(ILP)
定义:通过重叠指令执行来提高性能。
挑战:
指令依赖性(如数据依赖、控制依赖)。
编译器和硬件技术(如指令调度、寄存器重命名)用于优化ILP。
动态调度和推测执行:通过硬件动态调整指令顺序以减少停顿。 - 多发射(Multiple Issue)
静态多发射:编译器将指令分组并打包到“发射槽”中。
动态多发射:CPU在运行时决定每周期发射的指令数量。
VLIW(超长指令字)处理器:将多个操作打包到一条指令中。 - 线程级并行性(TLP)
多线程:通过增加任务粒度(从单任务到多任务)实现并行性。
多核处理器:每个处理器需要多个线程。
多线程的类型:
细粒度多线程:每个周期切换线程。
粗粒度多线程:仅在长停顿时切换线程。
共享内存模型:
SMP(对称多处理):统一内存访问。
DSM(分布式共享内存):非统一内存访问。 - 数据并行性(DLP)
SIMD(单指令多数据):所有处理器同时执行相同指令,但数据不同。
向量处理器:通过向量指令和向量寄存器实现数据并行性。
向量指令示例:如DAXPY操作(Y = a × X + Y)。
向量处理器的优势:
简化数据并行编程。
减少硬件中的指令控制。
提高内存带宽利用率。 - 并行编程的挑战
Amdahl定律:系统的性能提升受限于不可并行化的部分。
并行编程的难点:
分区(Partitioning)。
协调(Coordination)。
通信开销(Communications overhead)。 - 总结
这份讲义涵盖了计算机体系结构的核心概念,从通用性和专用性的平衡,到指令级并行性、线程级并行性和数据并行性。它还探讨了现代处理器设计中的挑战,如性能瓶颈、并行编程的复杂性以及硬件和软件之间的接口。通过这些内容,读者可以对计算机体系结构有一个全面的理解。
希望这份总结对你有帮助!如果你对某个部分有更详细的问题,欢迎随时提问。
这份PDF是斯坦福大学CS149课程(2024年秋季)的第七讲讲义,主题是“GPU架构与CUDA编程”。它详细介绍了GPU的发展历程、架构设计、CUDA编程模型以及GPU的执行和调度机制。以下是对这份PDF的核心内容总结与分析:
- GPU的发展历程
起源:GPU最初是为了加速3D游戏渲染而设计的,专门用于处理图形相关的任务,如顶点处理、光栅化和像素操作。
演变:随着时间推移,GPU逐渐演变为通用并行计算引擎,广泛应用于深度学习、计算机视觉和科学计算等领域。
关键转折点:
2002-2003年:早期的“GPGPU”(通用计算GPU)尝试通过图形API进行科学计算。
2007年:NVIDIA推出Tesla架构,首次引入“计算模式”(compute mode),允许GPU直接运行非图形程序。 - GPU架构
基本架构:
GPU是一个多核芯片,支持单指令多数据(SIMD)和多线程执行。
高端GPU配备高带宽内存(如DDR5或HBM),带宽可达数百GB/s甚至TB/s。
图形渲染流程:
输入:3D场景描述(几何、材质、光源等)。
输出:渲染后的图像。
核心任务:计算每个三角形对图像中每个像素的贡献。
现代GPU架构:
NVIDIA V100 GPU:
80个流多处理器(SM),每个SM包含多个执行单元。
支持大规模并行执行,每个SM可以调度多达64个“warp”(每个warp包含32个线程)。
提供共享内存和L1缓存,用于线程间通信和数据共享。 - CUDA编程模型
CUDA简介:
CUDA是一种“C-like”语言,用于编写在GPU上运行的程序。
它提供了低级别的抽象,与GPU的硬件能力紧密匹配。
核心概念:
线程层次结构:线程被组织成线程块(block),线程块又被组织成网格(grid)。
内存模型:主机(CPU)和设备(GPU)有独立的地址空间。设备内存分为全局内存、共享内存和线程私有内存。
同步机制:__syncthreads()用于线程块内的同步;原子操作用于全局和共享内存的互斥访问。
CUDA执行模型:
主机(CPU)负责串行执行和管理设备(GPU)。
GPU负责并行执行CUDA内核(kernel)。
示例代码:
文档中通过矩阵加法和一维卷积的示例,展示了CUDA代码的编写方式和优化技巧(如使用共享内存减少全局内存访问)。 - GPU的执行和调度机制
线程块调度:
GPU的调度器动态地将线程块分配到SM上,调度顺序可以任意。
线程块内的线程以“warp”为单位执行,每个warp包含32个线程。
如果线程块内的线程执行路径不同(发散),性能会下降。
资源分配:
每个线程块需要分配共享内存和寄存器资源。
调度器根据资源需求动态分配线程块到SM。
执行效率:
线程块内的线程需要同时存在,因为它们可能通过__syncthreads()同步。
共享内存的使用可以显著提高性能,因为它比全局内存更快。 - CUDA的高级主题
持久线程编程风格:
一种编程模式,程序员根据GPU的硬件资源(如SM数量)启动线程块,确保所有线程块同时运行。
这种方式绕过了GPU的线程块调度器,程序员需要手动管理线程块的工作分配。
内存模型的复杂性:
全局内存、共享内存和线程私有内存之间的数据传输需要显式管理。
共享内存的使用需要考虑线程块的大小和数据局部性。 - 总结
GPU架构与CUDA编程:
GPU的架构设计使其成为强大的并行计算平台。
CUDA提供了灵活的编程模型,允许开发者充分利用GPU的并行能力。
然而,CUDA编程需要开发者仔细管理线程和内存,以实现最佳性能。
未来展望:
GPU在深度学习和科学计算中的应用将继续增长。
新的硬件特性(如张量核心)将进一步提升GPU的计算能力。
分析
这份讲义详细介绍了GPU和CUDA的核心概念,适合有一定并行计算和硬件背景的学生。通过从图形渲染的起源讲起,它展示了GPU如何从专用图形处理器演变为通用计算平台。CUDA编程模型的介绍和示例代码非常实用,可以帮助读者快速上手GPU编程。此外,对GPU执行和调度机制的深入分析,有助于读者理解CUDA程序在硬件上的运行方式,从而更好地优化代码性能。
从GPU之后,硬件技术的发展呈现出多样化和专业化的特点,主要围绕着高性能计算、人工智能、数据中心、物联网和移动设备等领域展开。以下是从GPU之后硬件发展的几个重要方向:
- 专用硬件加速器(ASIC和FPGA)
ASIC(Application-Specific Integrated Circuit):
ASIC是为特定应用定制的集成电路,能够提供极高的性能和能效比。
例如,在深度学习领域,谷歌的TPU(Tensor Processing Unit)是一种专门为张量计算设计的ASIC,能够高效处理矩阵运算和神经网络推理任务。
FPGA(Field-Programmable Gate Array):
FPGA是一种可编程的硬件,能够在制造后重新配置其逻辑功能。
它在灵活性和性能之间取得了平衡,适用于需要快速迭代和定制化的应用场景,如通信、数据中心和边缘计算。
例如,微软在Azure数据中心中使用FPGA加速网络和机器学习任务。 - 异构计算架构
CPU + GPU:
异构计算结合了CPU的通用性和GPU的并行计算能力,成为现代计算系统的重要架构。
例如,NVIDIA的CUDA和AMD的ROCm平台允许开发者同时利用CPU和GPU进行计算。
CPU + ASIC/FPGA:
随着专用硬件的发展,一些系统开始将CPU与ASIC或FPGA结合,以实现更高的性能和能效。
例如,英特尔的FPGA加速卡可以与CPU协同工作,用于特定的计算任务。 - 深度学习专用硬件
TPU(Tensor Processing Unit):
谷歌的TPU是专门为深度学习设计的ASIC,能够高效执行张量运算。
TPU在矩阵乘法和卷积运算上表现出色,广泛应用于训练和推理任务。
NPU(Neural Processing Unit):
许多公司(如华为、寒武纪)开发了NPU,用于加速神经网络的推理。
NPU通常集成在移动设备或边缘设备中,支持低功耗、高性能的AI应用。 - 量子计算
量子计算是一种基于量子力学原理的计算技术,能够处理传统计算机难以解决的复杂问题。
量子比特(qubit)是量子计算的基本单位,能够同时表示0和1的状态,从而实现并行计算。
虽然量子计算仍处于早期发展阶段,但一些公司(如IBM、谷歌、微软)已经开始探索量子计算的商业应用。 - 存储级内存(SCM)和非易失性内存
存储级内存(SCM):
SCM是一种介于传统内存(如DRAM)和存储设备(如SSD)之间的新型存储技术。
例如,英特尔的Optane技术提供了接近DRAM的性能和SSD的非易失性,可用于持久化内存和高性能存储。
非易失性内存(NVM):
随着技术的发展,非易失性内存(如3D XPoint、ReRAM)逐渐成为主流。
这些技术提供了更高的存储密度和更低的功耗,适用于数据中心和边缘设备。 - 光子计算
光子计算是一种利用光子而非电子进行计算的技术,具有低延迟、高带宽和低功耗的特点。
光子计算在通信和数据中心领域具有巨大的潜力,能够显著提高数据传输和处理效率。
虽然光子计算仍处于研究阶段,但一些公司和研究机构已经开始探索其商业应用。 - 物联网和边缘计算硬件
物联网(IoT):
随着物联网的发展,大量设备需要低功耗、高性能的硬件支持。
例如,ARM架构的微控制器和SoC(System on Chip)广泛应用于智能家居、智能城市和工业物联网。
边缘计算:
边缘计算需要在靠近数据源的地方进行计算,以减少延迟和带宽消耗。
专用的边缘计算硬件(如NVIDIA的Jetson系列)能够支持实时AI和数据分析。 - 数据中心硬件
高性能计算(HPC):
数据中心需要高性能的计算硬件来处理大规模的科学计算和数据分析任务。
例如,超级计算机通常结合了CPU、GPU和专用加速器,以实现极高的计算性能。
云计算:
云计算平台需要灵活、可扩展的硬件架构,以支持多种应用。
例如,AWS、Azure和Google Cloud等云服务提供商不断推出新的硬件实例,以满足用户的需求。
总结
从GPU之后,硬件技术的发展呈现出多样化和专业化的特点。专用硬件加速器(如ASIC和FPGA)在特定领域表现出色,而异构计算架构则结合了多种硬件的优势。深度学习专用硬件(如TPU和NPU)推动了人工智能的发展,量子计算和光子计算则为未来计算技术带来了新的可能性。同时,物联网、边缘计算和数据中心硬件的发展也满足了不同应用场景的需求。这些技术的共同目标是提高计算效率、降低功耗,并为未来的计算需求提供支持。
相关文章:
前沿计组知识入门
这份PDF文件是一份关于计算机体系结构的讲义,涵盖了从基础概念到高级主题的多个方面。以下是详细的总结和分析: 计算机体系结构概述 定义:计算机体系结构是计算机系统的理论组成部分,根据其属性和功能进行划分,包括计…...
力扣 最长递增子序列
动态规划,二分查找。 题目 由题,从数组中找一个最长子序列,不难想到,当这个子序列递增子序列的数越接近时是越容易拉长的。从dp上看,当遍历到这个数,会从前面的dp选一个最大的数加上当前数,注意…...
在项目中调用本地Deepseek(接入本地Deepseek)
前言 之前发表的文章已经讲了如何本地部署Deepseek模型,并且如何给Deepseek模型投喂数据、搭建本地知识库,但大部分人不知道怎么应用,让自己的项目接入AI模型。 文末有彩蛋哦!!! 要接入本地部署的deepsee…...
已解决IDEA无法输入中文问题(亲测有效)
前言 在使用IDEA的时候,比如我们想写个注释,可能不经意间,输入法就无法输入中文了,但是在其他地方打字,输入法仍然能够正常工作。这是什么原因呢,这篇文章带你解决这个问题! 快捷键 如果你的I…...
Java 语法新特性(Records、Pattern Matching、Sealed Classes)深度解析(11/17/21)✨
一、Records(Java 16) 📝 核心价值:简化不可变数据载体的定义 // 传统POJO vs Record public record User(String name, int age) {} // 自动生成:构造方法/equals()/hashCode()/toString() User user new User(&qu…...
书评与笔记:《如何有效报告Bug》
文章目录 书评笔记核心原则1. 首要目标:让程序员亲眼看到问题2. 次要目标:详细描述问题3. 保持冷静,避免误操作4. 提供额外信息5. 清晰、准确地表达 实用建议不要自作聪明地诊断问题类比:看医生时的症状描述程序员的心理 总结 原文…...
Node.js 中的 fs 模块详解
fs(File System)模块是 Node.js 的核心模块之一,用于处理文件系统的操作,包括文件的读取、写入、删除、重命名等。它提供了同步和异步两种操作方式,适用于不同的场景。 1. 前置知识 1.1 文件系统 文件系统是操作系统…...
【深度学习】如何一步步实现SGD随机梯度下降算法
如何一步步实现SGD随机梯度下降算法 文章目录 如何一步步实现SGD随机梯度下降算法SGD随机梯度下降算法的作用MNIST_SAMPLE数据集SGD算法的七大步骤Step1. 初始化模型参数Step2. 计算预测值predictionsStep3. 计算损失lossStep4. 计算梯度gradientsStep5. 更新模型参数Step6. 重…...
Android Hal AIDL 简介 (一)
Android 接口定义语言 (AIDL) 是一款可供用户用来抽象化 IPC 的工具。 以在 .aidl 文件中指定的接口为例,各种构建系统都会使用 aidl 二进制文件构造 C++ 或 Java 绑定,以便跨进程使用该接口(无论其运行时环境或位数如何)。 AIDL 可以在 Android 中的任何进程之间使用:在…...
【数据分析】2.数据分析业务全流程
业务流程方法论:3阶段6步骤 一、课程核心内容结构 1. 方法论概述 目标:系统性地解决商业中的关键问题框架:分为三个阶段,每个阶段包含两个步骤适用场景:适用于数据分析师、业务经理等需要通过数据分析支持决策的从业…...
如何使用Spark SQL进行复杂的数据查询和分析
使用Spark SQL进行复杂的数据查询和分析是一个涉及多个步骤和技术的过程。以下是如何使用Spark SQL进行复杂数据查询和分析的详细指南: 一、准备阶段 环境搭建: 确保已经安装并配置好了Apache Spark环境。准备好数据源,可以是CSV文件、JSON…...
【Spring+MyBatis】_图书管理系统(下篇)
图书管理系统上篇、中篇如下: 【SpringMyBatis】_图书管理系统(上篇)-CSDN博客 【SpringMyBatis】_图书管理系统(中篇)-CSDN博客 目录 功能5:删除图书 6.1 约定前后端交互接口 6.2 后端接口 6.3 前端…...
goland无法debug项目
1、其实个原因是因为正在使用的Delve调试器版本太旧,无法兼容当前的Go语言版本1.2。Delve是Go语言的一个调试工具,用于提供源码级别的调试功能。Go语言每隔一段时间会发布新版本,而相应的调试器Delve也可能会更新以提供新的特性或修复已知问题…...
001-监控你的文件-FSWatch-C++开源库108杰
fswatch 原理与应用简介fswatch 安装fswatch 实践应用具体应用场景与细节补充 1. 简介 有些知识,你知道了不算厉害,但你要是不知道,就容易出乱。 很多时候,程序需要及时获取磁盘上某个文件对象(文件夹、文件࿰…...
leetcode203.移除链表元素
目录 问题描述示例提示 具体思路思路一思路二 代码实现 问题描述 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val val 的节点,并返回 新的头节点 。 题目链接:移除链表元素 示例 提示 列表中的节点数目在范围…...
代码随想录算法训练营第六天| 242.有效的字母异位词 、349. 两个数组的交集、202. 快乐数 、1. 两数之和
242.有效的字母异位词 题目链接:242.有效的字母异位词 文档讲解:代码随想录有效的字母异位词 视频讲解:LeetCode:有效的字母异位词 状态:学会了 思路: 数组其实是简单哈希表。 哈希表用来快速判断元素是否在…...
DL/CV领域常见指标术语(FLOPS/mIoU/混淆矩阵/F1-measure)------一篇入门
1. FLOPS、FLOPs和GFLOPs FLOPS: floating-point operations per second,每秒浮点运算次数,用来衡量硬件性能。 FLOPs:floating point of operations,是浮点运算次数,用来衡量算法、模型的复杂度。 GFLOPSÿ…...
rknn 板端运行程序Invalid RKNN model version 6, Meet unsupported rknn target type
E RKNN: [09:15:53.053] 6, 1 E RKNN: [09:15:53.053] Invalid RKNN model version 6 E RKNN: [09:15:53.053] rknn_init, load model failed! [NN_ERROR] rknn_init fail! ret-1 或者报错: E RKNN: [08:35:30.804] Meet unsupported target type: 0x46495247 E…...
Linux 内核中的 container_of 宏:以 ipoib_rx_poll_rss 函数为例
在 Linux 内核编程中,container_of 是一个非常实用的宏,主要用于通过结构体的成员指针来获取包含该成员的整个结构体的指针。rx_ring = container_of(napi, struct ipoib_recv_ring, napi); 在代码中就是利用了这个宏,下面我们详细分析它的作用和工作原理。 背景知识 在内…...
【数据结构-红黑树】
文章目录 红黑树红黑树介绍红黑树的五个基本性质红黑树的平衡原理红黑树的操作红黑树的操作 代码实现节点实现插入和查询操作 红黑树 红黑树介绍 红黑树(Red-Black Tree)是一种自平衡的二叉查找树(Binary Search Tree, BST)&…...
一个简洁高效的Flask用户管理示例
Flask-Login 是 Flask 的用户管理扩展,提供 用户身份验证、会话管理、权限控制 等功能。 适用于: • 用户登录、登出 • 记住用户(“记住我” 功能) • 限制未登录用户访问某些页面 • 用户会话管理 1. 安装 Flask-Login pi…...
用Nginx打造防盗链护盾
用Nginx打造防盗链护盾 一、你的网站正在"为他人做嫁衣"? 想象一下这个场景: 你精心拍摄的摄影作品、录制的课程视频、设计的原创素材,被其他网站直接盗用链接。 更气人的是——当用户在他们网站查看这些资源时,消耗的…...
VS Code 如何搭建C/C++开发环境
目录 1.VS Code是什么 2. VS Code的下载和安装 2.1 下载和安装 2.2.1 下载 2.2.2 安装 2.2 环境的介绍 2.3 安装中文插件 3. VS Code配置C/C开发环境 3.1 下载和配置MinGW-w64编译器套件 3.1.1 下载 3.1.2 配置 3.2 安装C/C插件 3.3 重启VSCode 4. 在VSCode上编写…...
DeepSeek、微信、硅基流动、纳米搜索、秘塔搜索……十种不同方法实现DeepSeek使用自由
为了让大家实现 DeepSeek 使用自由,今天分享 10 个畅用 DeepSeek 的平台。 一、官方满血版:DeepSeek官网与APP 首推,肯定是 DeepSeek 的官网和 APP,可以使用满血版 R1 和 V3 模型,以及联网功能。 网址: htt…...
【Java】Enum类的常用方法、实现接口及其实际应用
Enum类的常用方法 package com.star.enum03;/** * author : Starshine */public class TestSeason { //这是一个main方法,是程序的入口: public static void main(String[] args) { //用enum关键字创建的Season枚举类上面的父类是ÿ…...
Linux | 进程控制(进程终止与进程等待)
文章目录 Linux | 进程控制 — 进程终止 & 进程等待1、进程终止进程常见退出方法1.1退出码基本概念获取退出码的方式常见退出码约定使用场景 1.2 strerror函数 & errno宏1.3 _exit函数1.4_exit和exit的区别1.4.1 所属头文件与函数原型1.4.2 执行过程差异**结合现象分析…...
三、tsp学习笔记——屏幕移植
泰山派-6寸猫屏转接板 - 立创开源硬件平台 泰山派樱猫的教程,屏资料链接: https://pan.baidu.com/s/1pNAKH33r7LtZG6EwHJ-HNA?pwdnsde 提取码: nsde (不要浪费时间下载,没有用,下载gitee上的) leefei/tspi-disp-6…...
python全栈-python进阶
python进阶 文章目录 python进阶异常except自定义异常类 文件操作序列化和反序列化CSV文件os模块os.path模块shutil模块 拷贝压缩 模块--modulefrom 模块 import 成员包package库LibraryPIP库 GUI编程-tkinter版使用类定义的GUI界面设置控件的属性方式Label标签的常用属性Butto…...
SpringBoot如何配置开发环境(JDK、Maven、IDEA等)
目录 1. 安装JDK 一、JDK介绍JRE(Java Runtime Envirnment):Java运行环境 二、下载JDK官网地址:Java Downloads | Oracle 三、安装JDK点击下载下来的安装包进行安装 四、配置JDK进入到环境变量中(下面介绍两种进入…...
图片粘贴上传实现
图片上传 html demo 直接粘贴本地运行查看效果即可,有看不懂的直接喂给 deepseek 会解释的很清晰 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"…...
C++--STL库-List
目录 1.list 的基本使用 1.1 创建和初始化 1.2. 插入元素 1.3. 删除元素 1.4. 访问元素 1.5 遍历 1.6 总结 list是C标准库(STL)中的双向链表容器,属于<list>头文件。 它的特点是: 动态大小:可以随时插入…...
kubeadm拉起的k8s集群证书过期的做法集群已奔溃也可以解决
kubeadm拉起的k8s集群证书过期的做法 这个是很久之前遇到的了,今天有空(心血来潮)就都回忆回忆写在这里为爱发光,部分内容来自arch先生(死党)的帮助。有时候有很多部门提了建k8s的需求,有些是临…...
idea连接gitee(使用idea远程兼容gitee)
文章目录 先登录你的gitee拿到你的邮箱找到idea的设置选择密码方式登录填写你的邮箱和密码登录成功 先登录你的gitee拿到你的邮箱 具体位置在gitee–>设置–>邮箱管理 找到idea的设置 选择密码方式登录 填写你的邮箱和密码 登录成功...
Kafka 简介
Kafka 简介 Apache Kafka 是一个开源的分布式流处理平台,广泛应用于实时数据流处理、日志管理、消息传递等场景。Kafka 最初由 LinkedIn 开发,并于 2011 年捐献给 Apache 软件基金会。 Kafka 的设计目标是高吞吐量、低延迟和高可用性,它能够…...
Ubuntu22.04 Deepseek-R1本地容器化部署/内网穿透/OPENWEBUI,打造个人AI助手!
1. 前言 本地部署DeepSeek并实现内网穿透,为家庭成员提供强大的AI支持。通过使用Ollama、Docker、OpenWebUI和Nginx,内网穿透,我们可以轻松实现快速响应和实时搜索功能。 2.软硬件环境 系统:ubuntu22.04, cuda12GPU: RTX3080Ti …...
红蓝对抗之常见网络安全事件研判、了解网络安全设备、Webshell入侵检测
文章目录 研判(入侵检测) 设备 经典网络云网络 异常HTTP请求Webshell分析 Webshell 的分类Webshell 的检测 主机层面流量层面 附录 常见端口漏洞…...
Linux部署DeepSeek r1 模型训练
之前写过一篇windows下部署deepseekR1的文章,有小伙伴反馈提供一篇linux下部署DeepSeek r1 模型训练教程,在 Linux 环境下,我找了足够的相关资料,花费了一些时间,我成功部署了 DeepSeek R1 模型训练任务,结…...
【大模型】DeepSeek:AI浪潮中的破局者
【大模型】DeepSeek:AI浪潮中的破局者 引言:AI 新时代的弄潮儿DeepSeek:横空出世展锋芒(一)诞生背景与发展历程(二)全球影响力初显 探秘 DeepSeek 的技术内核(一)独特的模…...
寒假学习总结
整个寒假都走在数据结构与算法的路上,深入学习了其中多个板块,刷了一些与之对应的题目,下面来一期总结(c) (emmm,主播在寒假试着去学习了几大语言的语法基础(丢丢) 如Ja…...
自愈网络的定义、其为用户带来的益处、具体的使用案例
在当今高度互联的世界中,网络稳定性和可靠性对于各种应用场景至关重要。无论是企业的日常运营、智能家居的便捷控制,还是工业网络的自动化管理,网络的任何中断都可能带来不可估量的损失和不便。正是基于这种需求,以太联—Intellin…...
NumPy的基本使用
在 Python 的数据科学与数值计算领域,NumPy 无疑是一颗耀眼的明星。作为 Python 中用于科学计算的基础库,NumPy 提供了高效的多维数组对象以及处理这些数组的各种工具。本文将带您深入了解 NumPy 的基本使用,感受它的强大魅力。 一、安装与导…...
HTTP 与 HTTPS:协议详解与对比
文章目录 概要 一. HTTP 协议 1.1 概述 1.2 工作原理 1.3 请求方法 1.4 状态码 二. HTTPS 协议 2.1 概述 2.2 工作原理 2.3 SSL/TLS 协议 2.4 证书 三. HTTP 与 HTTPS 的区别 四. 应用场景 4.1 HTTP 的应用场景 4.2 HTTPS 的应用场景 概要 HTTP(Hy…...
从零开始构建一个语言模型中vocab_size(词汇表大小)的设定规则
从零开始构建一个语言模型就要设计一个模型框架,其中要配置很多参数。在自然语言处理任务中,vocab_size(词汇表大小) 的设定是模型设计的关键参数之一,它直接影响模型的输入输出结构、计算效率和内存消耗。 本文是在我前文的基础上讲解的:从零开始构建一个小型字符级语言…...
斐波那契数列模型:在动态规划的丝绸之路上追寻斐波那契的足迹(上)
文章目录 引言递归与动态规划的对比递归解法的初探动态规划的优雅与高效自顶向下的记忆化搜索自底向上的迭代法 性能分析与比较小结 引言 斐波那契数列,这一数列如同一条无形的丝线,穿越千年时光,悄然延续其魅力。其定义简单而优美ÿ…...
RT-Thread+STM32L475VET6——ADC采集电压
文章目录 前言一、板载资源二、具体步骤1.打开CubeMX进行配置1.1 使用外部高速时钟,并修改时钟树1.2 打开ADC1的通道3,并配置为连续采集模式(ADC根据自己需求调整)1.3 打开串口1.4 生成工程 2. 配置ADC2.1 打开ADC驱动2.2 声明ADC2.3 剪切stm…...
基于Django快递物流管理可视化分析系统(完整系统源码+数据库+详细开发文档+万字详细论文+答辩PPT+详细部署教程等资料)
文章目录 基于Django快递物流管理可视化分析系统(完整系统源码数据库详细开发文档万字详细论文答辩PPT详细部署教程等资料)一、项目概述二、项目说明三、研究意义四、系统设计技术架构 五、功能实现六、完整系统源码数据库详细开发文档万字详细论文答辩P…...
【Pandas】pandas Series reindex_like
Pandas2.2 Series Computations descriptive stats 方法描述Series.align(other[, join, axis, level, …])用于将两个 Series 对齐,使其具有相同的索引Series.case_when(caselist)用于根据条件列表对 Series 中的元素进行条件判断并返回相应的值Series.drop([lab…...
Ollama安装和迁移,以及部署DeepSeek模型
什么是 Ollama Ollama 是大语言模型管理工具,它的主要作用是简化大语言模型的本地化部署和运行。如果你想调用本地模型,保护个人隐私,构建个人知识库,那你可以考虑使用 Ollama。 Ollama 的官网是 https://ollama.com/,正如官网所说,“Get up and running with large l…...
【数据挖掘】
数据挖掘 目录:1. 数据转换2. 属性选择3. 独立于方案的选择4. 探索空间5. 具体方案的选择6. 离散化数值属性无监督离散化基于熵的离散化其他离散化方法 k-means算法原理算法步骤优缺点优点缺点 代码示例(使用Python和scikit-learn库)代码解释…...
芝加哥学派(Chicago School):金融与经济学的创新力量(中英双语)
芝加哥学派:金融与经济学的创新力量 在经济学和金融学的历史上,有一个学派的影响力不容忽视,那就是芝加哥学派(Chicago School)。芝加哥学派不仅在学术界广受推崇,也深刻影响了全球的经济政策和金融市场。…...