- 博客(91)
- 资源 (2)
- 收藏
- 关注
原创 【计算机组成 课程笔记】7.3 高速缓存 Cache
高速缓存,也就是Cache,位于CPU和DRAM主存之间,相比于主存,它的容量要小得多,但速度要快得多。但是为什么在CPU和主存之间增加这么一个速度更快但是容量很小的存储部件,就能提升整个计算机系统的性能呢?
2023-10-06 21:48:28 347 1
原创 【计算机组成 课程笔记】7.2 DRAM和SRAM
SRAM比较快,DRAM比较慢,SRAM比较贵,DRAM比较便宜。记住这些结论是很容易的, 但是比是什么更重要的是为什么,这一节我们就从电路的级别来探索DRAM和SRAM为什么会具有它们这样各自的特点。
2023-10-06 18:08:49 423
转载 【计算机组成 课程笔记】6.2 流水线的冒险
冒险(Hazard):在流水线中我们希望当前每个时钟周期都有一条指令进入流水线可以执行。但在某些情况下,下一条指令无法按照预期开始执行,这种情况就被称为冒险。
2023-09-20 22:15:00 211
原创 【计算机组成 课程笔记】5.1 处理器的设计步骤
处理器,或者说是CPU,是现代计算机中最为复杂的一个部件。不过先不要劝退,要设计一个简单但是能工作的处理器,也没有那么的神秘。这一节我们就一起来探索处理器是怎么设计出来的。
2023-09-05 22:00:00 325
原创 【计算机组成 课程笔记】4.2 除法器的硬件实现
在加减乘除这样的基本算数运算中,除法是最为复杂的,因此我们想要实现硬件的除法器,还是从最简单的情况开始说起。
2023-09-03 16:53:58 955 4
原创 【计算机组成 课程笔记】4.1 乘法器的硬件实现
乘法是比加减法更复杂的算数运算。小学的时候我们学习乘法,需要背一个九九乘法表。那么如果是计算机,又是如何实现乘法的呢?
2023-09-03 13:20:46 1016
原创 【计算机组成 课程笔记】3.2 算数运算和逻辑运算的硬件实现
现代计算机的CPU和其他很多功能部件都是基于晶体管的集成电路,想要了解计算机组成的基本原理,还是需要有一些集成电路的基本知识。就让我们从最简单的门电路的实现开始吧。
2023-09-01 21:15:00 666
原创 【计算机组成 课程笔记】3.1 算数运算和逻辑运算
计算机的核心功能就是运算,运算的基本类型包括算数运算和逻辑运算。想要了解计算机是如何实现运算的,我们就要从算数运算指令和逻辑运算指令开始说起。
2023-08-31 20:30:00 571
转载 【计算机组成 课程笔记】2.2 几种芯片架构:X86、ARM、RISC-V和MIPS
从这里可以看到,对于命令别人做事这样一件事情,不同的人有不同的理解,有人认为,如果我首先给接受命令的人以足够的训练,让他掌握各种复杂技能(即在硬件中实现对应的复杂功能),那么以后就可以用非常简单的命令让他去做很复杂的事情——比如只要说一句“吃饭”,他就会吃饭。我们为什么不可以把事情分为许多非常基本的步骤,这样只需要接受命令的人懂得很少的基本技能,就可以完成同样的工作,无非是下达命令的人稍微累一点——比如现在我要他吃菜,只需要把刚刚吃饭命令里的“舀起一勺饭”改成“舀起一勺菜”,问题就解决了,多么简单。
2023-08-30 21:00:00 591
原创 【计算机组成 课程笔记】1.2 冯·诺伊曼结构
现代的计算机形态各异,但究其本质,几乎全部采用了冯·诺依曼结构。要了解计算机,首先要知道什么是冯·诺依曼结构。
2023-08-29 20:45:00 458 3
转载 【计算机组成 课程笔记】1.1 电子计算机的兴起
随着人类文明的进步,人们对计算能力的需求也越来越大。与此同时,科技的迅速发展也为强大计算能力的诞生奠定了基础。在这样的环境下,电子计算机就应运而生了。在这个过程中很多科学家、工程师和各行和业的人投入了大量的智慧和辛劳。而其中一个人是我们在谈论到计算机的组成结构时必须要提及的,因为我们今天所使用的计算机几乎全部采用了相同的结构,这个结构就是以他的名字命名的,而这个人就是冯·诺依曼。
2023-08-28 20:00:00 78
转载 【深度学习编译器系列】3. 领域专用语言(DSL)与中间表示(IR)
领域专用语言(Domain-specific Language,DSL)与中间表示(Intermediate Representation,IR)。
2023-08-23 09:31:21 402
转载 Diffusion 和Stable Diffusion的数学和工作原理详细解释
扩散模型的兴起可以被视为人工智能生成艺术领域最近取得突破的主要因素。而稳定扩散模型的发展使得我们可以通过一个文本提示轻松地创建美妙的艺术插图。所以在本文中,我将解释它们是如何工作的。
2023-03-15 12:10:34 613 1
原创 【深度学习编译器系列】4. 前端优化:算子融合
不同深度学习编译器的算子融合规则根据它们各自的算子能力而有所不同。不同深度学习编译器的算子融合算法主要分为两大类,一类是以TVM为代表的通用算子融合算法,它在算子级别做了融合规则的分类,然后用一个通用的算法对计算图上的所有算子进行融合。另一类是像XLA/Pytorch/OpenVINO这些,采用的是更加细粒度的算子融合算法,对于不同的规则定制不同的pass/function,然后这些pass都在计算图上进行遍历,最终输出优化后的计算图。
2023-03-14 22:35:40 1974
原创 【深度学习编译器系列】2. 深度学习编译器的通用设计架构
深度学习编译器主要包括编译器前端和编译器后端两部分。编译器前端主要执行硬件无关的转换和优化,编译器后端主要执行硬件相关的优化。
2023-02-21 21:12:39 567
原创 【深度学习编译器系列】1. 为什么需要深度学习编译器?
深度学习(DL)编译器的产生有两方面的因素:深度学习模型的广泛应用,以及深度学习芯片的层出不穷。
2023-02-19 21:27:25 1364
原创 CPU两大架构:X86和ARM
主流的CPU架构包括X86架构和ARM架构。X86架构的CPU是PC服务器行业的老大,ARM架构的CPU则是移动端的老大,两者之间的竞争似乎永远也不会有结局,今天我们就一起来了解一下这些架构之间的区别。
2021-12-22 12:15:46 10657
原创 【论文笔记】CNN图像分类Tricks合集
paper:Bag of Tricks for Image Classification with Convolutional Neural Networksauthor: Tong He, Zhi Zhang, Hang Zhang, Zhongyue Zhang, Junyuan Xie, Mu Li (Amazon Web Services)code:https://github.com...
2019-01-09 19:39:08 3120
原创 【论文笔记】视频分类与图网络的结合 Videos as Space-Time Region Graphs
Paper: https://arxiv.org/abs/1806.01810 (ECCV 2018)Author: Xiaolong Wang, Abhinav Gupta (CMU)0. 引言GNN最近在深度学习领域受到了广泛关注,其具有解决深度学习无法解决的因果推理和可解释性的问题,可以说是一个比较有前景的方向。今天来分享一篇ECCV2018的paper,结合图网络来做视频分类。视频和...
2018-12-26 20:40:04 3353
原创 【论文笔记】时空域特征学习的反思:视频分类中速度与精度的权衡
论文链接:rethinking spatiotemporal feature learning: speed-accuracy trade-offs in video classificationGoogle Research & University of California San Diego1. 文章想回答的3个问题我们是否真的需要3d conv? 如果需要的话,哪些层我...
2018-10-12 20:06:31 3945 2
原创 【论文笔记】光流在视频行为识别中的作用
Paper:On the Integration of Optical Flow and Action Recognition Author:Facebook,Zhejiang University,MPI for Intelligent Systems,NVIDIA0. 引言在做视频行为识别时,特别是基于two-stream框架时,常常会引入光流图作为双流网络其中一支的输入。这是很...
2018-07-02 23:06:22 10360 4
原创 【论文笔记】Non-local Neural Networks
Paper:https://arxiv.org/abs/1711.07971v1 Author:Xiaolong Wang, Ross Girshick, Abhinav Gupta, Kaiming He (CMU, FAIR)0.简述convolution和recurrent都是对局部区域进行的操作,所以它们是典型的local operations。受计算机视觉中经典的非局部均值...
2018-06-26 21:34:50 71239 19
原创 【论文笔记】视频分类系列 Recognize Actions by Disentangling Components of Dynamics
Paper:http://openaccess.thecvf.com/content_cvpr_2018/papers/Zhao_Recognize_Actions_by_CVPR_2018_paper.pdf Anthor: Yue Zhao, Yuanjun Xiong, and Dahua Lin (SenseTime, CUHK, Amazon Rekognition)这是商汤在20...
2018-06-25 23:03:30 1310 2
原创 【论文笔记】视频分类系列 Optical Flow Guided Feature: A Fast and Robust Motion Representation for Video (OFF)
Paper: Optical Flow Guided Feature: A Fast and Robust Motion Representation for Video Action Recognition (CVPR2018, SenseTime)0. 简述运动信息对于视频中动作的识别有着重要的作用。其中最常用的一种运动信息,是光流。之前的方法计算光流是offline的,比较耗时,...
2018-06-24 21:44:45 3172
原创 【论文笔记】视频分类系列 Temporal Relational Reasoning in Videos (TRN)
Paper:https://arxiv.org/abs/1711.08496v1 Code:https://github.com/metalbubble/TRN-pytorch 作者:Bolei Zhou, Alex Andonian, Antonio Torralba (CSAIL, MIT)简述时间关系推理(Temporal relational reasoning)是指理...
2018-06-20 22:24:36 13988 3
原创 【论文笔记】CVPR2018 Detecting and Recognizing Human-Object Interactions
Paper:https://arxiv.org/abs/1704.07333 作者:Georgia Gkioxari, Ross Girshick, Piotr Dollár, Kaiming He。从题目中看出这篇文章主要是研究人与物的互动。根据统计,CVPR2018中分析图像中的人类的有100多篇,说明人们开始关注对图像中主体和关系的理解(这也是Graph Network火的原因)。...
2018-06-19 22:39:57 2424 2
原创 【论文笔记】视频分类系列 Appearance-and-Relation Networks for Video Classification (ARTNet)
时间空间域的特征学习对于视频分类来说很重要。文章提出了Appearance-and-Relation Networks(ARTNet)的结构,用于end-to-end地学习视频时间空间域的特征。ARTNet是由多个名为SMART的block堆叠而成。SMART模块的目标是从RGB帧中分别学习到appearance和relation。
2018-03-05 23:04:49 4849
原创 【论文笔记】视频分类系列 Temproal Segment Networks (TSN)
论文:https://arxiv.org/abs/1608.00859 代码:https://github.com/yjxiong/temporal-segment-networks1. 引言在视频分类中,对长时间域的建模有利于掌握整个视频的类别。而ConvNets擅长的是对appearance的建模和短时的motion。因此对于长时域结构的建模,CUHK提出了TSN。
2018-03-04 22:16:29 4587 1
原创 【caffe源码笔记】VideoDataLayer解析
caffe中video_data_layer.cpp的解析,直接看代码中的注释。// include的部分就不介绍了#include <fstream>#include <iostream>#include <string>#include <utility>#include <vector>#include "ca...
2018-03-03 22:55:00 1172 1
转载 Mac 挂载NTFS移动硬盘进行读写操作 Readonly file system
1. diskutil info /Volumes/YOUR_NTFS_DISK_NAME 找到 Device NodeDevice Node: /dev/disk1s12. hdiutil eject /Volumes/YOUR_NTFS_DISK_NAME"disk1" unmounted."disk1" ejected.弹出你的硬盘3
2018-02-07 10:05:15 10971 2
原创 【论文笔记】视频物体检测(VID)系列 NoScope:1000x的视频检索加速算法
计算机视觉的进展,特别是近期深度神经网络的进展,使得在不断增长的视频数据中进行检索成为可能。但是,基于神经网络去做大规模视频检索,直接的问题就是计算量激增。比如现在最快的物体检测器能达到1~2.5x real time的效率(30~80fps),前提是买一个$4000的GPU。
2017-12-17 12:17:34 1648 2
原创 【论文笔记】物体检测系列 SSD: Single Shot MultiBox Detector
一句话概述:SSD是One-stage的物体检测器,它是直接预测每个default box(在RCNN中称为anchor)是各物体类别的概率,并做回归。另外,SSD使用不同层的feature map来handle不同大小的物体。
2017-12-17 11:17:29 1923
原创 【论文笔记】物体检测系列 Light-Head R-CNN: In Defense of Two-Stage Object Detector
文章:https://arxiv.org/abs/1711.07264v1 这篇文章是旷视科技和清华大学联合出品的,主要是对其今年在COCO检测竞赛上的部分成果分享。他们总共拿下了 COCO Detection/Segmentation Challenge(检测/分割)、COCO Keypoint Challenge(人体关键点检测)、Places Instance Segmentation(实体
2017-12-03 17:27:35 3707 1
翻译 C++ API载入tensorflow graph
通过C++ API载入tensorflow graph在tensorflow repo中,和C++相关的tutorial远没有python的那么详尽。这篇文章主要介绍如何利用C++来载入一个预训练好的graph,以便于单独使用或者嵌入到其他app中。Requirements安装bazel:tensorflow是使用bazel来进行编译的,所以如果要编译其他需要用到tensorflow的文件,我们就
2017-12-03 16:19:33 5926
原创 Bazel入门2:C++编译常见用例
1. 在一个target中包含多个文件可以利用glob在单个target中包含多个文件,例如:cc_library( name = "build-all-the-files", srcs = glob(["*.cc"]) hdrs = glob(["*.h"]),)在这个target中,Bazel会编译BUILD文件所在目录下的所有.cc和.h文件(不包括子目录)。2.in
2017-11-29 23:05:17 16181 1
原创 Bazel入门:编译C++项目
官网:https://www.bazel.build Github: https://github.com/bazelbuild/bazel最近用到tensorflow的时候遇到了个新的编译工具Bazel,踩了无数坑之后终于决定还是系统地学习一下这货。Bazel是一个类似于Make的编译工具,是Google为其内部软件开发的特点量身定制的工具,如今Google使用它来构建内部大多数的软件。Goog
2017-11-29 18:46:04 86129 23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人