NVIDIA CUDA初级教程视频学习笔记1
周斌老师
课程链接:
目录
- 第一课
- 内容
- 生态环境
- 第一课 CPU体系架构的概述
- 什么是CPU
- 指令
- 存储器架构
- CPU内部的并行性
第一课
预修课程:
Cuda c programming guide
参考内容 1,2,3查找一下。
内容
CPU体系架构概述
并行程序设计概述
CUDA开发环境搭建和工具配置
GPU体系架构概述
GPU编程模型
CUDA编程
CUDA程序分析和调试工具
基本优化
深入优化
最新NVIDIA GPU和CUDA特性
生态环境
nvidia cuda zone
QQ群:
GPU深度开发==》还没有加,记得去加群
多核系统和并行系统,是因为我们的单频系统性能遇到了瓶颈。
第一课 CPU体系架构的概述
什么是CPU
执行指令,处理数据的器件
- 能够完成基本的逻辑和算术指令
指令
算术
访存
控制
这三类指令组成了一个计算机程序。
优化的目标:
每天指令需要的时钟周期最少
时钟周期尽量短
程序指令占比:
分支:12.5%
访存:46%
矢量运算:0.2%
CPU结构图:
芯片做计算
内存接口,接内存到CPU上
外部接口:显示系统的接口、多媒体的接口
桥接芯片接口==》硬盘、南桥北桥、
摩尔定律
芯片的集成密度每2年翻一番,成本下降一半。
28nm,芯片加工到了极限。
所以,摩尔定律表现不那么理想了。
百亿的量级的晶体管,这些晶体管都在干什么?
22亿个晶体管,8和芯片
中间最大的部分是三级缓存。
CPU是一个吞吐机,是一个处理机,不断把数据倒来倒去,花费在存储仓库花费在路上的成本最大。
简单的CPU结构图
上面部分数据通道
下面是控制逻辑
流水线
利用指令级并行
- 极大的减小时间周期
增加一些延迟和芯片面积
会带来的问题:
具有依赖关系的指令怎么办?
分支应当处理?
流水线的长度:
- core 2 14级
- pentium 4 > 20级
- Sandy Bridge 14到20级之间
旁路Bypassing
add R1,R7需要用到sub R2,R3指令的结果,可以加一个旁路,这样就不用访问内存,直接获取R7的结果。
停滞Stalls
load [R3]->R7
add R1,R7->r2
add指令需要等待load指令完成
分支 Branches
分支预测Branch Prediction
基于过去的分支记录
分支断定
提升IPC
超标量
峰值N
增加了面积
- N倍资源使用
- 旁路网络N
Sandy Bridge超标量
指令调度Scheduling
寄存器重命名
乱序执行
把指令重新排一下,做一个优化
存储器架构
越大越慢
缓存Caching
将数据放在尽可能接近的位置
利用:
时间的邻近性
空间的邻近性
缓存层次
存储器的另外的设计考虑
分区==》避免多端口
一致性Coherency
控制器Memory controller==>
CPU内部的并行性
向量运算
相同处理的数据同时去做
数据级并行
单指令多数据
X86的向量运算
线程级的并行
多核Multicore
锁、一致性和同一性
CPU遇到了现实的困境,我们称为能量墙,cpu主频提升导致功耗很强度的提升,功耗的提升导致功耗的面积、集成度、成本不能无限增加。
结论
相关文章:
NVIDIA CUDA初级教程视频学习笔记1
周斌老师 课程链接: 目录第一课内容生态环境第一课 CPU体系架构的概述什么是CPU指令存储器架构CPU内部的并行性第一课 预修课程: Cuda c programming guide 参考内容 1,2,3查找一下。 内容 CPU体系架构概述 并行程序设计概述 CUDA开发环境…...
CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)
一、星雀优化算法NOA 星雀优化算法(Nutcracker optimizer algorithm,NOA)由Mohamed Abdel-Basset等人于2023年提出,该算法模拟星雀的两种行为,即:在夏秋季节收集并储存食物,在春冬季节搜索食物的存储位置。 星鸦单独或成对活动&…...
工作实战之密码防重放攻击
目录 前言 一、登录认证密码加密 二、bcrypt加密密码不一样,匹配原理 1.程序运行现象 2.原理解释 三、密码防重放 总结 前言 密码重放攻击:请求被攻击者获取,并重新发送给认证服务器,从而达到认证通过的目的 一、登录认证密…...
如何编写测试用例?
编写测试用例流程 1、确定测试目标:首先,需要明确测试目标,即测试人员需要测试什么,这有助于测试人员了解需要测试哪些方面,以及如何测试。 2、识别测试场景:在确定测试目标后,测试人员需要识…...
5.排序算法之二:选择排序
选择排序(select sort)在无序列表中,把无序列表分成有序区(刚开始有序区元素个数为0)和无序区(刚开始无序区元素个数为n),循环n-1趟,每一趟找到最小或最大的那个元素&…...
Ubuntu18系统安装:node及node版本管理工具nvm部署前端项目
注意在安装之前先安装好Git 如何在Ubuntu 上安装Git与入门教程_ubuntu安装git_飞鹰雪菲的博客-CSDN博客 1、把nvm远程镜像克隆到指定目录 git clone https://gitee.com/mirrors/nvm 1.1在终端指定的文件夹下 drciZwz91oq31508figapkas0Z:~/qiang/tools$ git clone https://…...
统计学 假设检验
文章目录假设检验假设检验的基本原理提出假设作出决策表述决策结果一个总体参数的检验总体均值的检验总体比例的检验总体方差的检验两个总体参数的检验两个总体均值之差的检验两个总体比例之差的检验两个总体方差比的检验总体分布的检验正态性检验的图示法Shapiro-Wilk 和 K-S …...
【C++】哈希
哈希一、unordered系列关联式容器二、哈希原理2.1 哈希映射2.2 哈希冲突2.2.1 闭散列—开放地址法2.2.2 代码实现2.2.3 开散列—拉链法2.2.4 代码实现三、哈希封装unordered_map/unordered_set3.1 基本框架3.2 迭代器实现3.2.3 operator*和operator->和operator!3.2.4 opera…...
「TCG 规范解读」PC 平台相关规范(3)
可信计算组织(Ttrusted Computing Group,TCG)是一个非盈利的工业标准组织,它的宗旨是加强在相异计算机平台上的计算环境的安全性。TCG于2003年春成立,并采纳了由可信计算平台联盟(the Trusted Computing Platform Alli…...
这篇教你搞定Android内存优化分析总结
一、内存优化概念1.1 为什么要做内存优化?内存优化一直是一个很重要但却缺乏关注的点,内存作为程序运行最重要的资源之一,需要运行过程中做到合理的资源分配与回收,不合理的内存占用轻则使得用户应用程序运行卡顿、ANR、黑屏&…...
概率论与数理统计期末小题狂练 11-12两套,12-13-1
11-12第一学期A1 略。2 X服从正态分布N(0,1),X^2服从卡方分布。又考查了卡方分布均值和方差公式。一开始如果对本题无从下手,大概是没看出来是什么分布。3 第二小空本身也可以作为一个结论。4 考查切比雪夫不等式&…...
golang对字符串的处理操作 如何正确理解 rune byte和string
fmt.Printf相关参数介绍 先来看代码的演示 package mainimport ("fmt""unicode/utf8" )func main() {s:"我爱中国人haha!"fmt.Println(len(s))//20个字节 一个中文三个字节 1541fmt.Print("\n echo byte \n")for k,v: range []byte(…...
软件项目管理简答题复习(1)
1.项目:创造唯一的产品,唯一的服务临时性的努力 2.项目特征:不可见性,复杂性,一致性,变更性,特殊性 3.项目和日常活动的区别? 项目具有特殊性,负责人是项目经理&#…...
云Windows Server 2022 Datacenter 安装MySQL8解压缩版 mysql-8.0.32-winx64 230301记录
MySQL Community Downloads MySQL社区版压缩包下载地址 https://dev.mysql.com/downloads/mysql/ 解压到了C盘 没打算设置环境变量 右键点击开始 或 winx 以管理员身份打开 PowerShell 进入到安装目录下的 bin 目录 可以输入cd 后, 拖动 bin 文件夹到控制台&…...
如何使用BeaconEye监控CobaltStrike的Beacon
关于BeaconEye BeaconEye是一款针对CobaltStrike的安全工具,该工具可以扫描正在运行的主动CobaltStrike Beacon。当BeaconEye扫描到了正在运行Beacon的进程之后,BeaconEye将会监控每一个进程以查看C2活动。 工作机制 BeaconEye将会扫描活动进程或Mini…...
STM32开发(17)----CubeMX配置CRC
CubeMX配置CRC前言一、什么是CRC?二、实验过程1.STM32CubeMX配置2.代码实现重载printf3.实验结果总结前言 本章介绍使用STM32CubeMX对CRC进行配置的方法,CRC的目的是保证数据的完整性,所有的STM32芯片都内置了一个硬件的CRC计算模块…...
【MySQL】基础操作:登录、访问、退出和卸载
一、MySQL简介 MySQL数据库最初是由瑞典MySQL AB公司开发,2008年1月16号被Sun公司收购。2009年,SUN又被Oracle收购。MySQL是目前IT行业最流行的开放源代码的数据库管理系统,同时它也是一个支持多线程、高并发、多用户的关系型数据库管理系统。…...
【算法经典题集】递推(持续更新~~~)
😽PREFACE🎁欢迎各位→点赞👍 收藏⭐ 评论📝📢系列专栏:算法经典题集🔊本专栏涉及到的知识点或者题目是算法专栏的补充与应用💪种一棵树最好是十年前其次是现在递推简单的斐波那契…...
mysql兼容性验证
MySQL是一个关系型数据库管理系统。 一、安装启动 安装mysql相关软件包 yum install mysql-server 启动mysql服务 systemctl start mysqld systemctl status mysqld mysql数据库启动失败问题汇总: <问题1>、start mysqld显示失败,如下所示&…...
C++回顾(五)—— 构造函数和析构函数
5.1 构造和析构 5.1.1 构造函数 (1)定义 1)C中的类可以定义与类名相同的特殊成员函数,这种与类名相同的成员函数叫做构造函数;2)构造函数在定义时可以有参数;3)没有任何返回类型的…...
嵌入式学习笔记——概述
嵌入式系统概述前言“嵌入式系统”概念1.是个啥?2.可以干啥?3.有哪些入坑方向?4.入坑后可以有多少薪资?单片机1.什么是单片机?2.架构简介3.基于ARM架构的单片机结构简介总结前言 断更很长时间了,写博客确实…...
化繁为简高效部署 华为云发布部署服务CodeArts Deploy
随着互联网、数字化的发展,公司机构与各类企业往往需要进行大量频繁的软件部署,部署设备类型多样,如:本地机器、云上裸金属服务器、云上虚拟机与容器等。面对多种部署模式、分布式复杂运行环境,如何用最短时间、高质…...
注意力机制详解系列(四):混合注意力机制
👨💻作者简介: 大数据专业硕士在读,CSDN人工智能领域博客专家,阿里云专家博主,专注大数据与人工智能知识分享。 🎉专栏推荐: 目前在写CV方向专栏,更新不限于目标检测、OCR、图像分类、图像分割等方向,目前活动仅19.9,虽然付费但会长期更新,感兴趣的小伙伴可以…...
Makefiles学习1
初识"Makefiles" 创建一个 “Makefile” 文件 touch Makefile“touch” 用于修改文件或者目录的时间属性,包括访问时间和修改时间,若文件不存在,则重新建立一个新的文件。这里有两个需要我们注意的: 进入并编辑"…...
日志框架以及如何使用LogBack记录程序
使用日志框架可以记录一个程序运行的过程和详情,同时便捷地存储到文件里面,并且性能和灵活性都比较好。日志的体系结构包括两类日志规范接口:Commons Logging,简称:JCL;Simple Logging Facade for Java&…...
集成RocketChat至现有的.Net项目中,为ChatGPT铺路
文章目录前言项目搭建后端前端代理账号鉴权方式介绍登录校验模块前端鉴权方式后端鉴权方式登录委托使用登录委托处理聊天消息前端鉴权方式后端校验方式项目地址前言 今天我们来聊一聊一个Paas的方案,如何集成到一个既有的项目中。 以其中一个需求为例子:…...
王道操作系统课代表 - 考研计算机 第三章 内存管理 究极精华总结笔记
本篇博客是考研期间学习王道课程 传送门 的笔记,以及一整年里对 操作系统 知识点的理解的总结。希望对新一届的计算机考研人提供帮助!!! 关于对 “内存管理” 章节知识点总结的十分全面,涵括了《操作系统》课程里的全部…...
Cypher中的聚合
深解Cypher中的聚合 值或计数的聚合要么从查询返回,要么用作多步查询下一部分的输入。查看数据模型 CALL db.schema.visualization() 查看图中节点的属性类型 CALL db.schema.notetypeproperties() 查看图中关系的属性类型 CALL db.schema.reltypeproperties() C…...
图注意网络GAT理解及Pytorch代码实现【PyGAT代码详细注释】
文章目录GAT代码实现【PyGAT】GraphAttentionLayer【一个图注意力层实现】用上面实现的单层网络测试加入Multi-head机制的GAT对数据集Cora的处理csr_matrix()处理稀疏矩阵encode_onehot()对label编号build graph邻接矩阵构造GAT的推广GAT 题:Graph Attention Netwo…...
项目成本管理中的常见误区及解决方案
做过项目的人都明白,项目实施时间一般很长,在实施期间总有很多项目结果不尽人意的问题。要使一个项目取得成功,就要结合很多因素一起才能作用,其中做好项目成本的管理就是最重要的步骤之一,下面列出了常见的项目成本管…...
网站建设收费标准新闻/seo接单
nginx 反向代理设置 假设对本机80端口的访问为一台服务器,对本机8000端口的访问为另一台服务器,下面这样写一个nginx的反向代理配置,就可以实现所有请求都转移 server {listen 0.0.0.0:80;se ... C语言碰到的一元二次方程 最近开始在学习C语言,看视频,是http://www.rjzxw.com/j…...
做网站专用软件/seo怎么做整站排名
最近,有一则好消息CorelDRAW X8特惠啦!功能不少价格却不高的CDR X8很快成了设计师们的新宠,三折之后你动心了么? 点击这里了解更多.. 那么CDR X8到底有何功能和亮点呢? 完全可自定义的 UI CorelDRAW Graphics Suite X8…...
市住房住房城乡建设委官方网站/重庆优化seo
softmax回归的从零开始实现 xiaoyao 动手学深度学习 tensorflow2.1.0 这一节我们来动手实现softmax回归。首先导入本节实现所需的包或模块。 import tensorflow as tf import numpy as np import sys print(tf.__version__)2.1.0获取和读取数据 使用Fashion-MNIST数据集&am…...
手机怎样制作个人网站/如何弄一个自己的网站
将List类型转化为Json,是我们平常开发时最常见的了。在使用中,有很多种方法,也可以使用。 第一种 第三方组件:Newtonsoft.Json.dll //转化成Json Newtonsoft.Json.JsonConvert.SerializeObject(obj);//反序列化 Newtonsoft.Json.J…...
广告设计公司名称/重庆seo整站优化效果
实际上,百度官方已经有明确说法,不建议url中放置汉字,某些时候蜘蛛无法解析此类网址,就会影响网站的seo优化结果,详情如下: 从事SEO职业的人都知道页面URL的处理是优化过程中一个非常重要组成部分ÿ…...
做公寓酒店跟网站合作有什么技巧/百度营销搜索推广
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8nzIWCwO-1595910345969)(https://img.alicdn.com/tfs/TB1Vsk1PkL0gK0jSZFtXXXQCXXa-640-120.gif)] 发布会传送门 查看产品详情 近日,”万仓计划”发布会由阿里云智能数据库事业部总负责…...