- 博客(66)
- 资源 (10)
- 收藏
- 关注
原创 Modbus协议
本来需要用到Modbus,就了解了一下,不过后来用不到了,只作了一些调研,简单记录下。所有内容未实际测试。0.概述Modbus是一种工业协议,于1979年开发,旨在实现自动化设备之间的通信。最初是作为串行层传输数据的应用层协议实现的,现已扩展到包括串行、TCP和UDP的实现。主从网络关系英文完整版协议NI中文版协议介绍1.名词解释协议数据单元(PDU)通俗的理解,协议数据单元就是包含Modbus协议所规定的从机地址,功能码,数据,校验等各个数据部分的数据单元。Modbu.
2020-08-02 10:20:29 3941
转载 Linux下加载.ko驱动模块的两种方式:insmod & modprobe
假设我们要添加的驱动程序模块名为:demo.ko加载驱动模块方法一:进入demo.ko驱动模块文件所在的目录,然后直接terminal执行:insmod demo.ko即可。方法二:将demo.ko文件拷贝到 /lib/module/`uname -r`/目录下,这里,`uname -r`意思为在终端中输入此命令执行的结果后显示的内核版本及名称,例如exynos 441...
2018-11-22 14:11:38 2197
转载 NVIDIA / Intel 核芯显卡显示 + Nvidia 计算
今天折腾了好久intel集成显卡显示。最后好不容易才全部搞定,这里记录一下。 1. 首先在BIOS里是要打开Intel 核芯显卡的。我把它设置成了主显卡,显示器也接到核心显卡的口上。重启后, I卡警告low resolution, 进不去桌面 2. 切换N/I 卡的命令是prime-select (安装包是 nvidia-prime, 不需要装传说中的bumblee什么的)...
2018-11-19 16:42:40 1181
原创 nvidia_uvm: Unknown symbol task_stack_page (err 0)
When I run ./deviceQuery I get this result (the output without sudo is the same):$ sudo optirun ./deviceQuery./deviceQuery Starting...CUDA Device Query (Runtime API) version (CUDART static linki...
2018-11-19 14:45:19 721
转载 protoc命令引发的linux安装卸载软件问题
由于之前使用脚本安装protobuf,不知为什么不能使用protoc编译proto文件,因此自己重装了一下,与原来的装到了不同的路径下,测试新装的可以用,没有看是否影响到了原来的环境,今天发现不能用,于是各种查原因,结果使因为protoc的问题。准备卸载protoc,使用apt-get remove libprotobuf-dev始终不行,最后对原先的脚本安装的环境也各种卸载安装都不行。后来查到r...
2018-07-24 20:50:48 1552
转载 TX2记录
1、Jetson TX2 开发记录caffe-ssd,tensorflow,和TX2自带深度学习例子2、Jetson TX2 开发记录TensorRT Benchmark,TX2测试例子3、吉浦迅-让Jetson TX2火力全开的秘密原来在这里sudo nvpmodel -q –verbose # 查看当前模式sudo nvpmodel -m 0 #设置为模式0,即最强大模式...
2018-03-15 10:36:28 733
原创 小知识
以前一直以为Pascal架构单个SM只有64个CUDA核心,查到的资料大多也比较混淆。很多拿GP100架构过来说Pascal架构是64核心/SM,其实GP100架构确实是64核心/SM,但后来的Pascal架构并不是。用官方自带samples的deviceQuery查了下我的GTX1050是128核心/SM的,查了下源码。原来每种架构下,每个SM对应的核心数都是有表格 的。在helper_cuda...
2018-01-18 15:20:42 235
原创 CUDA使用FP16进行半精度运算
cudaSamples里面0_Simple里面有个关于fp16的例子,做fp16矢量的点积的。自己简单实现一个,做个对自己的测试。1、关于fp16定义CUDA 7.5 新特性介绍 -- FP16(即fp16是cuda7.5引入的,需要计算能力达到5.3或以上)16-bit Floating Point (半精度浮点)从 Tegra X1 开始,NVIDIA 的 GPU 将支持原生的 FP16 计算...
2018-01-13 21:10:52 27778 3
原创 python跑个人脸识别的例子,遇到的琐碎事情
本文使用的是windows7+python3.5+pycharm源码来自GitHubhttps://github.com/shantnu/FaceDetect注意,opencv3使用face_detect.py会出错,需要使用face_detect_cv3.py。一般大牛们会提供多个版本的代码,在此表示敬佩。使用pycharm打开工程,执行,遇到找不到cv2
2017-12-28 18:39:16 2830
转载 Python函数与变量作用域
函数与变量作用域一、函数1.1 函数定义def 函数名([参数1][,参数2][,参数3]...): [函数语句]#函数语句和return语句不能同时省略 [return [返回值]]#return后面可以没有返回值1.2函数调用在Python中,所有语句都是实时执行的,不存在C/C++的编译过程,def也是一条可执行语句,定义一个函数。所以函数的调用必须在
2017-12-26 09:24:53 1340
转载 Python程序流程控制
Python程序流程控制一、if分支结构1.1 基本结构if x>y: a=xelif x==y: a=0else: a=-x如c/c++一样,可以有多个elif分支,else可以省略,注意作用范围由缩进对齐控制1.2 真值测试非0即真0、空对象(空列表[],空字典{})、None都为假其他与c/c++类似特别说明下not
2017-12-25 09:14:41 759
转载 循环展开导致代码无法启动。。。cuda优化-展开循环的知识
前两天手动将循环展开,在windows下出现了错误,不知道为什么,在linux下成功启动,也可以设置register使用,但不知道原因。今天看到这个,才明白,记录下。原来展开后的代码的中间计算过程也是需要寄存器来存储临时变量的。转载:http://blog.csdn.net/redline2005/article/details/23161525最近看到了一些循环展
2017-12-20 17:59:27 409
转载 桩函数(stub)
今天师弟搞OpenCL时遇到了桩函数,结果运行出现错误。不懂桩函数是什么,查了下。记录一下。引用:http://blog.csdn.net/u013467442/article/details/49887761http://blog.csdn.net/vincetest/article/details/7387140桩函数实际上是白盒测试中的概念,意思是使用一些自己定义的测
2017-12-20 17:48:16 18689
原创 流和并发
流和并发一、流和事件概述CUDA流是一系列异步的CUDA操作,这些操作按照主机代码确定的顺序在设备上执行。流能够封装这些操作,保持操作的顺序,允许操作在流中排队,并使它们在先前的操作之后执行,并且可以查询排队操作的状态。这些操作包括在主机和设备间进行数据传输,内核启动以及大多数由主机发起但由设备执行的其他命令。流中操作的执行相对于主机总是异步的。CUDA运行时决定何时可以在设备上执行操
2017-12-20 17:36:44 1049
原创 WinSCP和SecureCRT使用
WinSCP:打开软件,点击新建站点,出现如下界面 选择文件协议为SCP,主机名选择待连接的远程主机IP,用户名填写远程主机用户名,密码填写远程主机密码,点击保存,登录,出现如下界面 复制文件时将文件从本地操作窗口复制到远程主机操作窗口即可。SecureCRT:1、进行网络连接:打开SecureCRT,点击图中按钮 选择SSH2 点击下一步,
2017-12-07 16:20:40 6463
原创 Vmware虚拟机使用常见问题
用了很久VMware,没怎么学会,今天跑程序,造成虚拟机死掉,幸好查资料有成功复活了,下来记下问题1、最常见的是系统突然死机,造成有文件没有来得及保存,而造成虚拟机无法打开解决方法:找到虚拟机的存储目录,搜索*.lck,将查到的文件或文件夹删除即可问题2、提示“Vmware workstation打开虚拟机失败,提示xxx.vmx文件不是有效的配置文件”这个时候虚拟机无法启动,且*
2017-11-21 16:41:34 7630
转载 Python数据类型:字典
数据类型:字典字典是一种无序的映射的集合,包含一系列的“键:值”对。字典常量用花括号表示,如{'name':'John','age':25,'sex':'male'}。其中,字符串name、age和sex为键,字符串John和male以及数字25为值。1、字典的特点字典具有下列主要特点字典的键通常采用字符串,但也可以用数字、元组等不可变的类型。字典值可以是任意类
2017-11-21 11:41:44 619
转载 Python数据类型:元组
数据类型:元组元组可以看做不可变的列表,它有列表的大多数特点。元组常量用圆括号表示,例如,(1,2)、('a','b','abc')都是元组。元组特点元组的主要特点如下:元组可包含任意类型的对象。元组是有序的。元组中的对象可通过位置进行索引和分片。元组的大小不能改变,既不能为元组添加对象,也不能删除元组中的对象。元组中的对象也不能改变。与
2017-11-20 22:49:04 732
原创 libtool: install: error: cannot install `libprotoc.la' to a directory not ending in /home/XXXX
在ubuntu系统上安装protobuf-3.1.0出现错误libtool: install: error: cannot install `libprotoc.la' to a directory not ending in /home/XXXX想来也没做什么事情啊,上网查了下,说是之前用./configure安装过,导致安装目录不太干净,但是我真的没有安装过啊。引:http:/
2017-11-15 20:12:34 12004
原创 protobuf无法使用open函数打开文件
说了一大堆就是说open函数在Windows下的在io.h头文件下,Linux下的在fcntl.h头文件下,不关心原因看到这里就结束了。今天在使用protobuf做简单的参数存取时发现,Windows下无法使用open函数获取文件描述符open 函数用于打开和创建文件。以下是 open 函数的简单描述#include int open(const char *pathname,
2017-11-15 16:16:48 766
原创 关于CUDA零拷贝内存的实验
零拷贝介绍和主要函数通常来说,之不能直接访问设备变量,同时设备也不能直接访问主机变量。但是有一个例外:另拷贝内存。主机和设备都可以访问零拷贝内存。GPU线程可以直接访问零拷贝内存。在CUDA核函数中使用另拷贝内存有以下优势:当设备内存不够时可利用主机内存避免主机和设备间的显示数据传输提高PCIe传输率当使用零拷贝内存来共享主机和设备间的数据时,必须同
2017-11-14 16:16:50 2954 2
转载 Python数据类型:列表
数据类型:列表python中的数据可以分为下面四个类型集合:几何中的元素无需、不可变。数字:整数、浮点数、负数、复数等,支持各种算术运算。序列:字符串、列表和元组都属于序列,支持索引、分片和合并等操作。映射:字典,将减映射到值。列表基本特点列表常量用方括号表示,例如:[1,2,'abc']。列表对象是一种有序序列,其主要特点如下。
2017-11-09 23:22:53 794
转载 Python数据类型:集合
数据类型:集合集合(set)是Python2.4引入的一种新类型。集合常量与字典类似,用花括号表示,如{1,2,3}。几何中的元素是唯一的、无序的和不可改变的。集合支持数学理论中的各种集合运算。集合常量集合常量用为字典对象的花括号表示,也可用内置的set函数来创建。例如:>>> x={1,2,3} #直接使用集合常量>>> x{1, 2, 3}>>> typ
2017-11-06 12:00:59 646
转载 Python变量与动态数据类型
变量与动态数据类型变量与对象x=5Python执行上面一句代码时分为三步1:创建代表整数5的对象(所有数据都以对象方式存在)2:检查变量x是否存在,若不存在则创建3:简历变量x到对象5的引用(引用实质上就是指针)Python中使用变量,应该理解:变量第一次赋值时被创建,再次出现直接使用变量没有数据类型概念,数据类型属于对象,类型决定了对象在内存中的存储方式
2017-11-04 16:24:27 931
转载 Python数据类型
数字常量整型常量>>>2**101024>>>a=input()0xa>>>a #Python支持类似于matlab一样的只输入变量,打印变量的值'0xa'>>>print(a)0xa>>>int(0xa)10>>>print(int(0xa))10>>>类似于上面的int函数将一个字符串转换为对应的整数,但也可以指定进制,按照指定进制转换为10进制
2017-11-04 10:40:36 833
转载 Python的基本输入和基本输出
Python的基本输入和基本输出基本输入input函数用于获得用户输入数据如:变量=input('提示字符串')变量和提示字符串都可以省略,用户输入以字符串形式返回给变量。用户按Enter键完成输入,Enter之前所有内容作为输入字符串赋给变量。如:>>>a=input('请输入数据:')请输入字符串:'abc' 123,456 "Python"&g...
2017-11-03 23:06:25 2245
原创 caffe使用cuda速度只比cpu快了2倍?
今天终于吧caffe配好了,迫不及待的测试了两个例子:一个是caffe自带的mnist例子。另一个是网上有人改了caffe的例子cpp_classification,功能是识别猫。配的比较困难,因为用到了opencv、boost和cuda的各种库,最终终于配好了。下面是测试数据(图像大小216kb),跑多次程序,提速基本保持在1.5-2倍CPU_ONLY=1-------
2017-11-03 15:31:47 2680
原创 几个VS的插件,挺好用
今天按照网上的东西,自己安装了几个vs的插件,发现挺好用的,在此记录下来首先是安装插件的方法:菜单栏->工具->扩展和更新,弹出窗口左侧有已安装(显示已经安装的插件),联机(显示互联网上的其他插件)。右上角有个小的搜索框,在此可以搜索需要安装的插件。找到需要安装的插件后就可以安装了,装成功后重启vs生效。第一个插件:Indent Guides(无需设置)这个插件可以达到
2017-10-31 16:12:58 4969
原创 CUDA Tegra、GeForce、Quadro、Tesla的区别
部分内容引自:http://blog.csdn.net/ziv555/article/details/51279424Tegra系列产品是转为移动和嵌入式设备而设计的,如平板电脑和手机,典型的如Tegra K1,Tegra X1,TegraX2等(为嵌入式芯片,功耗低,gpu和cpu芯片在同一块硅片上)GeForce面向图像用户,典型的如NVIDIA TITAN Xp、GeForce GT
2017-10-30 17:07:33 3823
原创 CUDA计算能力的含义
我们在学习GPU编程时经常看到计算能力(Compute Capability)这个词语,那么什么是计算能力呢?计算能力(Compute Capability)计算能力不是描述GPU设备计算能力强弱的绝对指标,他是相对的。准确的说他是一个架构的版本号。也不是指cuda软件平台的版本号(如cuda7.0,cuda8.0等)如TX1,版本号为5.3,实际上指的是:5、SM
2017-10-30 11:48:40 17408
转载 TCP和UDP的"保护消息边界" (经典)
在socket网络程序中,TCP和UDP分别是面向连接和非面向连接的。因此TCP的socket编程,收发两端(客户端和服务器端)都要有一一成对的socket,因此,发送端为了将多个发往接收端的包,更有效的发到对方,使用了优化方法(Nagle算法),将多次间隔较小且数据量小的数据,合并成一个大的数据块,然后进行封包。这样,接收端,就难于分辨出来了,必须提供科学的拆包机制。 对于UDP
2017-09-27 17:28:25 305
原创 查找某进程 并过滤grep
方法一:ps -ef | grep some_string |grep -v grep-v:表示忽略grep本身。方法二:grep的内容写成正则表达式这样grep进程就不符合要求了如ps aux| grep kworker/[1-5]
2017-09-16 22:41:01 1017
转载 linux 查看运行进程所在目录
通过ps及top命令查看进程信息时,只能查到相对路径,查不到的进程的详细信息,如绝对路径等。这时,我们需要通过以下的方法来查看进程的详细信息:Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件即记录了绝对路径,通过ll或ls –l命令即可查看。ll /proc/PIDcwd符号
2017-09-16 22:39:36 750
转载 linux进程优先级、进程nice值(转载)
进程cpu资源分配就是指进程的优先权(priority)。优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用,可以改善系统性能。还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能。一、先看系统进程:首先,我想用一个简单的命令来引起这个议题。 无论在linux或者unix系统中,用ps –l命令则会类似
2017-09-11 15:09:04 255
原创 读datasheet遇到的名词,Assert,De-assert,component
1、Assert(Asserting、Asserted),De-assert(Deassert、deasserting、deasserted) assert的意思就是把信号变为active(可以理解为有效),根据系统有求不同,该有效电平可以是高电平(即高有效)也可以是低电平(即低有效)。 de-assert的意思就是解除active状态,就是信号变
2017-09-06 11:09:32 937
原创 linux修改Mac地址
有三种方法:方法一(命令方式,网络远程连接下不建议用):1.关闭网卡设备ifconfig eth0 down2.修改MAC地址ifconfig eth0 hw ether MAC地址如:ifconfig eth0 hw ether 1E:ED:19:27:1A:B4MAC地址相同则有可能收不到对方发的数据3.重启网卡ifconfig eth0 up方法二
2017-09-06 11:04:49 7538
CUDA函数的一些例子简介和下载链接
2017-11-26
JetsonTX1模块数据手册
2017-11-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人