cublas 的学习笔记_1
最近开始接触cublas,为了监督自己的学习,并希望得到其他朋友的指点,特地将自己的学习笔记写出来
1. 参考文档
CUBLAS_Library_2.1.pdf 》
2. 环境配置
1)添加头文件:cublas.h
2.)添加链接库:在能运行cuda程序的平台上,按照下面的方法添加cublas的lib文件:Project -> ** Properties -> Configuration Properties -> Linker -> Input -> Additional Dependencies -> 添加“cublas.lib”
3 文档的使用说明
CUBLAS_Library文档中提供了两种类型的库函数。
第一种:CUBLAS Helper function,该类库函数主要是为core function(即为第二类库函数) 利用GPU资源做准备,实现的功能包括显存空间的分配和释放,对向量和矩阵做set/get 操作等。
第二种:BLAS.x Function,也称为core function。其中x 可取1,2,3分别表示三种不同类型的线性代数的运算,BLAS.1 Function实现 vector 与vector 的运算,BLAS.2 Function实现 vector 与matrix 的运算,BLAS.3 Function 实现matrix 与 matrix 的运算。
Core Function 根据矩阵的类型和特殊矩阵的存储方式,提供了不同的接口。该库中包含的特殊矩阵类型有:常规型矩阵(general matrix),三角形矩阵(triangular matrix),对称矩阵(symmetric matrix),旋转矩阵(rotation matrix)。具体的存储方式见附录一 matrix type。针对稀疏矩阵,为了节约存储空间,cublas提供了两种存储方式:banded storage 和packed storage,具体的存储方式见附录二 storage type。
4 使用cublas 库函数的程序框架
1. cublasInit();
2. 将要计算的变量拷贝到显存上
3. 调用cublas core function
4. 将计算后变量拷贝回到内存上
5. cublasShutdown();
第二和第四步的说明:将要计算的变量“放到”显存上,这里有两种方式来实现:第一种利用cublas提供的helper function cublasAlloc和cublasSetMatrix,第二种:利用cuda提供的cudamalloc 和cudaMemcpy。经过测试,这两种方式的执行效率相差不大
cublas 的学习笔记_1相关推荐
- 12864液晶深入学习笔记_1——基于msp430g2553
12864液晶学习笔记 Created on: 2012-8-30 Author: zhang bin 这是我对12864的学习笔记,12864液晶功能很全面,使用起来也很方便,能够满足一般的研究和工 ...
- 带时滞的病毒模型计算模板【基于matlab的动力学模型学习笔记_1】
/*仅当作学习笔记,若有纰漏欢迎友好交流指正,此外若能提供一点帮助将会十分荣幸*/ 摘 要:无论是生物病毒还是网络病毒,其内核的传播机理都有很多的相似之处.因此,本文在经典的SIR病毒模型基础上改造出 ...
- 尚学堂JAVA高级学习笔记_1/2
尚学堂JAVA高级学习笔记 文章目录 尚学堂JAVA高级学习笔记 写在前面 第1章 手写webserver 1. 灵魂反射 2. 高效解析xml 3. 解析webxml 4. 反射webxml 5. ...
- 逆向破解_iOS_学习笔记_1
监测工具 Reveal.snoop-it.introspy 反汇编工具IDA.Hopper 开发工具iOSOpenDev.Theos OSX工具class-dump 然而出现了权限问题: cp: / ...
- 20220\8\20 C语言入门学习笔记_1 【试写未成年防沉迷系统模型】 (使用软件vs2022)
#include<stdio.h>int main(void)/*Fish_GD*/ {int age;int English_score;int IQ;printf("输入你 ...
- HMM学习笔记_1(从一个实例中学习DTW算法)
DTW为(Dynamic Time Warping,动态时间归准)的简称.应用很广,主要是在模板匹配中,比如说用在孤立词语音识别,计算机视觉中的行为识别,信息检索等中.可能大家学过这些类似的课程都看到 ...
- 爬虫实战学习笔记_1 爬虫基础+HTTP原理
1 爬虫简介 网络爬虫(又被称作网络蜘蛛.网络机器人,在某些社区中也经常被称为网页追逐者)可以按照指定的规则(网络爬虫的算法)自动浏览或抓取网络中的信息. 1.1 Web网页存在方式 表层网页指的是不 ...
- 目标跟踪学习笔记_1(opencv中meanshift和camshift例子的应用)
在这一节中,主要讲目标跟踪的一个重要的算法Camshift,因为它是连续自使用的meanShift,所以这2个函数opencv中都有,且都很重要.为了让大家先达到一个感性认识.这节主要是看懂和运行op ...
- 学习笔记_1 Matplotlib绘制散点图
这个是给数模学习过程的我看的,当然能帮助到大家也肯定更好. 在anaconda中调用numpy和matplotlib这两个包 首先是最基础的绘制函数 import numpy as np import ...
最新文章
- Linux服务器查看占用IO较高的进程
- mysql5_pn卸载_windows mySql(5.7.30) 卸载及重装
- 微信小程序自定义组件方案
- leetcode637. 二叉树的层平均值(层序遍历04)
- mysql大小写敏感_MySQL数据库大小写敏感的问题
- alloc_page分配内存空间--Linux内存管理(十七)
- word中填充效果锁定纵横比_【文艺范】Word文档中的首字下沉效果
- BeyondCompare3提示许可密钥过期完美解决方法:3281-0350
- 全网最全的Java岗集合面试题(含答案)
- Android Studio 下载安装教程
- day21、3 - 防火墙HA
- 打印选课学生名单 (25分)
- 深信服2019秋招技服岗面试总结
- 教你怎么在 Mac 电脑上进行语音实时输入
- dreamweaver8_Dreamweaver 8符合标准!
- Vue官网2文档笔记
- 用ChatGPT做嵌入式应用开发
- mysql 1146 错误处理
- Linux gzip压缩/解压 *.gz文件详解
- 2015百度竞价之如何增加有效点击率?