- 博客(17)
- 收藏
- 关注
原创 GEMM矩阵相乘与深度学习
GEMM矩阵相乘与深度学习1. GEMM矩阵相乘1.1 GEMM算法基础1.2 GEMM算法优化1.2.1 循环重排充分利用缓存1.2.2 平铺(Tiling)充分利用缓存1.2.3 展开(Unrolling)1.2.4 内存对齐1.2.5 向量化1.2.6 矩阵分块1.2.7 双缓冲2. GEMM与卷积计算2.1 计算卷积的方法2.2 Img2col2.2.1 CNN中张量的存储2.2.2 卷积运算转化为GEMM1. GEMM矩阵相乘1.1 GEMM算法基础 GEMM(General Matrix
2020-07-08 21:10:41 4746 2
原创 GPU与cuda
GPU与cudaGPU1. GPU的历史1.1 NVidia GPU架构发展史2. GPU的结构2.1 功能单元2.2 几种架构特性简介2.3 具体的几种微观架构3. GPU执行模型3.1 SIMT3.2 线程级别的映射3.3 编译cuda1. CUDA简介1.1 GPU和CPU1.2 可伸缩Scaleable的编程模式2. CUDA编程模型2.1 CUDA编程模型中的概念2.1.1 Kernel2.1.2 Thread Hierarchy2.1.3 索引和ID2.1.4 同步和原子2.2 CUDA的内存模
2020-07-08 20:53:53 2637
原创 并行编程模型之Actor/CSP/PGAS
并行编程模型之Actor/CSP/PGASActor1.背景2. 简介3.actor组成ActorMailbox邮箱behavior行为4.优势无锁异步隔离容错分布式5.劣势6.实践素数计算CSP1.简介2.CSP与go语言2.1 组成2.2Goroutine调度器3.Actor模型和CSP模型的区别PGAS1.简介2.实现Actor1.背景 处理并发问题就是如何保证共享数据的一致性和正确性,一般来说有两种策略用来在并发线程中进行通信:共享数据和消息传递。 熟悉c和java并发编程的都会比较熟悉
2020-07-08 20:13:35 2116
原创 原子操作
原子操作定义实现总结定义 所谓原子操作,就是“不可中断的一个或一系列操作”单核CPU: 在单核CPU中,能够在一条指令中完成的操作都可以看作为原子操作。无论是设备中断请求、时间片超时、程序主动schedule放弃CPU,抑或是发生抢占,从而引起线程调度中断当前程序操作,都是发生在指令间的。计算机的每条指令的执行天生就是原子性不可中断的,这是由硬件设计决定的。 对程序而言,一条语句对应几条指令,是由编译器、指令集(或者说硬件架构设计)决定的,即是由软件硬件共同决定。编译器决定了上层语言被翻
2020-06-08 18:32:11 1877
原创 开发辅助工具
个人开发辅助记录git常用命令error解决makefileCMakeAndroid.mkKConfigVSCodegit常用命令拉取常用 git pull git rebase --abort本地常用 git add (-u) * git checkout -- git commit (--amend -s) git reset --soft HEAD^ git reset --hard (commit_id) git stash git stash pop gi
2020-06-08 18:24:59 374
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人