- 博客(59)
- 资源 (1)
- 收藏
- 关注
原创 gitee使用之Pull Request
记录一下在gitee中创建issue和Pull Request的过程:···1.gitee中创建issue2.本地提交代码到demo分支3.gitee中创建Pull Request,从demo分支合入master分支,并关联1中创建的issue4.在gitee的Pull Request页面审核通过,合入。···...
2021-12-12 20:07:28
2407
原创 gitee-push代码权限
gitee push代码权限今天在本地创建分支后想push到gitee的远程仓库,结果提示没有权限。····[session-604a75a8] Auth error: Access deined: authorize failure.fatal: Could not read from remote repository.Please make sure you have the correct access rightsand the repository exists.····之前在代
2021-12-11 18:06:53
2790
原创 gcc/g++检查内存越界和内存泄漏
一.说明本说明来源于网络, 原文链接:https://blog.youkuaiyun.com/weixin_41644391/article/details/103450401gcc 4.8.5 : 只有Asan,即只能检测内存越界。gcc 4.9.2 : 有Asan和Lsan两种,可以用asan来做越界检测,用lsan做内存泄露检测。(建议使用, gcc的安装跟gcc4.8.5一样,详看tensorflow 配置centos6环境)gcc 7.2 : Asan中集成了LSan。(建议使用, gcc的安装跟
2021-11-17 14:41:26
5082
1
原创 C++学习之编译器生成各种构造函数
一.默认构造函数条件:没有定义任何构造函数注 : 编译器生成的默认构造函数会调用基类和成员的默认构造函数, 如果基类和函数没有默认构造函数会编译报错#include <iostream>#include <string>class A { public:std::string a_; int b_; };int main() { A a; std::cout << a.a_ << " " << a.
2021-11-12 18:32:31
825
原创 gdb学习之release版本打印string字符串
main.cc#include <string>#include <iostream>void print(std::string& s) { std::cout << s << std::endl;}int main() { std::string s("hello"); print(s); return 0;}编译g++ main.cc -std=c++11 -o aa查找print函数的符号$ readelf
2021-10-27 16:18:14
666
原创 gtest学习(三)之libgmock_main.a
上一篇中demo.cc中包含main函数,利用libgmock_main.a不需要添加main函数。demo.cc如下#include "demo.h"#include "gmock/gmock.h"class MockParent : public Parent { public://! MOCK_[CONST_]METHODx(方法名, 返回类型(参数类型列表)); MOCK_CONST_METHOD0(getNum, int()); //! 由于 getNum() 是 c
2021-10-26 19:33:30
511
原创 gtest学习(二)之gmock
#代码demo.h#include <string>using namespace std;class Parent { public: virtual ~Parent() {} virtual int getNum() const = 0; virtual void setResult(int value) = 0; virtual void print(const string &str) = 0; virtual int ca
2021-10-26 17:58:38
744
原创 gtest学习(一)之编译使用
gtest学习一之编译使用安装测试编译 && 运行安装git clone https://github.com/google/googletest.git -b release-1.11.0cd googletest # Main directory of the cloned repository.mkdir build # Create a directory to hold the build output.cd buildcmake ..
2021-10-26 16:55:03
507
原创 torch.div结果为nan和inf
1. Inf的情况>>> torch.div(1., torch.tensor(1e-39))tensor(inf)>>> torch.div(1., torch.tensor(1e-38))tensor(1.0000e+38)>>> 1. / 1e-391.0000000000000001e+392. Nan的情况>>> torch.div(0., torch.tensor(1e-46))tensor(nan
2021-08-17 17:18:39
1020
原创 tensorflow学习笔记
Graphmessage NodeDef { // The name given to this operator. Used for naming inputs, // logging, visualization, etc. Unique within a single GraphDef. // Must match the regexp "[A-Za-z0-9.][A-Za-z0-9_./]*". string name = 1; // The operation name.
2021-08-10 22:37:30
260
原创 gdb调试多线程和多进程
gdb调试多线程和多进程一.多线程调试多进程调试一.多线程调试代码 1 #include <thread> 2 #include <vector> 3 #include <iostream> 4 #include <stdio.h> 5 #include <unistd.h> 6 #include <stdlib.h> 7 using namespace std; 8 9 int f1(int
2021-08-05 15:48:04
642
原创 2021-07-19
shell命令1. 移动特定前缀的所有文件到其他目录1. 移动特定前缀的所有文件到其他目录grep -rl "pad" random_network_test/20210715200759/error_case_to_solve/ | awk -F"/" '{print $NF}' | awk -F'.' '{print $1"*"}' | xargs -I {} find random_network_test/20210715200759/error_case_to_solve/ -name {}
2021-07-19 19:49:39
105
原创 gdb命令print object
set print object on 命令可以使得用print来显示基类的实际类型1.代码示例class A{public: A(int c) : c_(c){} virtual void set(int c1) { c_ = c1; } int c_;};class B : public A {public: B(int b) : b_(b), A(b){} void set(int c1) { A::c_ = c1; } int b_;};void f(A&
2021-05-22 17:00:28
712
原创 gdb命令: dump restore
本文尝试使用gdb的dump命令和restore命令。dump命令用来将内存中的数据保存到文件中。restore命令用来将文件中的数据加载到内容中。1.示例代码#include <iostream>using namespace std;int main() { string a = "Hello"; float b = 3.9999; float c = 2.4; cout << a << endl; cout << b
2021-05-22 16:01:01
2258
原创 Python学习-with as语句
示例代码:class Sample: def __init__(self): self.a = "a" print("In __init__()") def __enter__(self): print("In __enter__()") return "Foo" def __exit__(self, exc_type, exc_value, exc_trace): print(exc_type)
2021-04-14 12:08:19
108
原创 c++ 学习笔记--调用模板类的模板函数前必须加template关键字的情况
// OKtemplate<typename D>class A{public:template<typename T>static T add(T a, T b) { return a + b;}};template<typename T>class B{public: int getNum(T a, T b) { //class A<T> ac; //return ac.add(a, b
2021-04-13 22:15:56
5184
4
原创 tvm.build过程
代码示例import tvmfrom tvm import ten = 2A = te.placeholder((n,), name='A')B = te.placeholder((n,), name='B')C = te.compute(A.shape, lambda *i: A(*i) + B(*i), name='C')s = tvm.te.create_schedule(C.op)m = tvm.lower(s, [A, B, C], name="test_add")rt_mod
2021-04-09 22:35:10
658
原创 TVM中python访问c++函数机制
/data/TVM/tvm/python/tvm/_ffi/registry.py/data/TVM/tvm/python/tvm/_ffi/registry.py/data/TVM/tvm/python/tvm/_ffi/_ctypes/packed_func.py/data/TVM/tvm/python/tvm/_ffi/base.py查找libtvm.s0库的路径/data/TVM/tvm/python/tvm/_ffi/libinfo.py获取库的路径/data/TVM/tv
2021-04-09 16:22:12
291
原创 TVM源码阅读记录
参考:https://www.zhihu.com/column/c_1254058636869603328https://www.zhihu.com/column/c_1093448543469166592#define TVM_REGISTER_GLOBAL(OpName) \ TVM_STR_CONCAT(TVM_FUNC_REG_VAR_DEF, __COUNTER__) = ::tvm::runtime::Registry::Register(OpName) TVM_REGISTER
2021-04-09 10:31:11
445
原创 gdb同时调试python和c++
说明:当我们的python程序的一些函数的后端实现为C++时可以使用当前方法调试。有两种方式可以安装调试环境:一.安装python的dbg包二.下载python源码包进行编译以Python3.7为例1.下载源码包2.编译Python源码包cd /path/to/python/sourcemkdir buildcd build../configure --with-pydebugmake #会在build目录下生成python-gdb.pymake testmake instal
2021-04-07 11:49:02
983
1
原创 tvm安装
参考:http://tvm.apache.org/docs/install/from_source.html1.下载代码git clone --recursive https://github.com/apache/tvm tvm2.编译共享库依赖包安装:sudo apt-get updatesudo apt-get install -y python3 python3-dev python3-setuptools gcc libtinfo-dev zlib1g-dev build-essent
2021-04-06 16:47:21
382
原创 编译llvm文档
编译llvm文档编译Doxygen格式的文档参考 llvm/docs/README.txt编译Doxygen格式的文档安装工具:sudo apt install doxygensudo apt-get install graphvizsudo apt-get install dot2tex编译cd <build-dir>cmake -DLLVM_ENABLE_DOXYGEN=On <llvm-top-src-dir>make doxygen-llvm # for
2021-03-30 02:22:41
341
原创 C++ Thread使用类成员函数
C++ Thread使用类成员函数示例代码编译运行结果示例代码#include <thread>#include <iostream>using std::cout;using std::endl;using std::thread;class Job {public: Job(int m) : _m(m){} void doSomeThing(int a, int b) { int c = a + b + _m; cout <<
2021-03-25 12:08:19
10050
1
原创 C++模板类型推导
int x =27;const int cx = x;const int& rx = x;const int* p = &x;1.ParamType是个指针或引用,但不是个万能引用template<class T>void f(T& param);f(x); //T型别是int, param的型别是int&f(cx); //T型别是const int, param的型别是const int&f(rx); //T型别是c.
2020-07-19 15:03:20
387
原创 c++ move和forward
右值引用、移动语义和完美转发可以参考这篇文章 https://www.jianshu.com/p/d19fc8447eaa一.move/usr/include/c++/7/bits/move.htemplate<typename _Tp> constexpr typename std::remove_reference<_Tp>::type&am...
2020-05-02 11:41:13
301
原创 gcc-7.5.0源码安装
1.源码下载:wget -c http://www.netgull.com/gcc/releases/gcc-4.4.0/gcc-4.4.0.tar.bz22.编译下载依赖:mpfr,mpc,gmp./configure CFLAGS="-g -O0" --prefix=/opt/i386 --target=i386-linux-gnumake (15:30)make i...
2020-03-20 15:33:08
3556
6
原创 ubuntu18.04源码安装pytorch
参考:【1】https://pytorch.org/get-started/locally/ (官网)【2】https://github.com/pytorch/pytorch#from-source (pytorch github项目)【3】https://blog.youkuaiyun.com/qq_15192373/article/details/81091098 (anaconda...
2020-02-20 23:13:55
1686
原创 sed,awk学习
一.n,Nnext(n)输出模式空间的内容(如果运行sed时有-n则不会输出),然后读取新的输入内容。Next(N)通过读取新的输入行,并将它添加到模式空间的现有内容之后来创建多行模式空间。模式空间最初的内容和新输入行之间用换行符分隔。在模式空间中嵌入的换行符可以利用转义序列‘\n’来匹配。在多行模式空间中,元字符‘^’匹配空间中的第一个字条,而不匹配换行符后面的字符。同样,’$‘只匹配模...
2020-01-14 15:59:54
167
原创 opencv学习——源码编译
opencv源码下载(git地址):https://github.com/opencv/opencv.git参考博客:https://blog.youkuaiyun.com/u011028771/article/details/83663437
2019-11-21 21:24:30
158
原创 egypt + graphviz生成C/C++源代码调用图(一)
一.安装egypt1.下载egypthttp://www.gson.org/egypt/download/egypt-1.10.tar.gz2.解压tar -zvxfegypt-1.10.tar.gz3.编译安装cdegypt-1.10perl Makefile.PLmakemake install二.使用1.编写test.ctest.c文件如下...
2019-11-14 20:07:42
5445
1
原创 Systemtap命令stap----安装
一.安装systemtapapt-get install systemtap二.安装内核调试信息直接在http://ddebs.ubuntu.com/pool/main/l/linux/页面下载下面的包(不需要重新编译内核,只需要下载这个包)linux-image-unsigned-4.15.0-66-generic-dbgsym_4.15.0-66.75_amd64.dde...
2019-11-04 21:17:24
2946
原创 git checkout 对工作目录的影响
参考链接:https://blog.youkuaiyun.com/longintchar/article/details/84146935本文要讨论的是:当我们用git checkout <branch_name>命令切换分支时,如果有未提交的修改,会发生什么?如果当前工作区的状态是“clean”,那么切换到其他分支是很容易的。但是,如果有未提交的修改,也许就不能顺利地切换过去,Git 会给...
2019-10-14 12:58:47
689
原创 GDB命令
1.display var当程序运行停止时(next,step,遇到断点停止,watch过的值变化导致程序停止等)会显示之前display过的值(当然这个值是在当前上下文可见)2.watch var watch过的值变化时会导致程序停止,并显示变量值。监视点的设定不依赖于断点的位置,但是与变量的作用域有关,也就是说,要设置监视点必须在程序运行时才可设置。在不确定发生问题的地方时,...
2019-10-11 13:05:59
1777
转载 机器学习:准确率(Precision)、召回率(Recall)、F值(F-Measure)、ROC曲线、PR曲线
增注:虽然当时看这篇文章的时候感觉很不错,但是还是写在前面,想要了解关于机器学习度量的几个尺度,建议大家直接看周志华老师的西瓜书的第2章:模型评估与选择,写的是真的很好!!以下第一部分内容转载自:机器学习算法中的准确率(Precision)、召回率(Recall)、F值(F-Measure)是怎么一回事摘要:数据挖掘、机器学习和推荐系统中的评测指标—准确率(Precision)、召回率...
2019-10-10 15:50:08
307
原创 ROS学习(七):三维可视化工具(RViz)
RViz是ROS的三维可视化工具。它的主要目的是以三维方式显示ROS消息,可以将 数据进行可视化表达。例如,可以无需编程就能表达激光测距仪(LRF)传感器中的传感 器到障碍物的距离,RealSense、Kinect或Xtion等三维距离传感器的点云数据(PCD, Point Cloud Data),从相机获取的图像值等。另外,利用用户指定的多边形(polygon)支持各种表现形式,...
2019-03-04 21:08:40
20559
2
原创 ROS学习(六):ROS信息命令
ROS信息命令用于识别话题、服务、节点和参数等信息。尤其是rostopic、 rosservice、rosnode和rosparam经常被使用,并且rosbag是ROS的主要特征之一,它 具有记录数据和回放功能。运行节点 我们将使用下面的命令,利用ROS提供的turtlesim来了解相关的节点、话题和服 务。在使用ROS信息命令进行测试之前,需要做好以下准备工作。...
2019-03-04 20:54:53
1230
原创 ROS学习(五):构建系统
ROS的构建系统默认使用CMake(Cross Platform Make),其构建环境在功能 包目录中的CMakeLists.txt文件中描述。在ROS中,CMake被修改为适合于ROS的 “catkin” 构建系统。 在ROS中使用CMake的是为了在多个平台上构建 ROS功能包。因为不同于只支持 Unix系列的Make,CMake支持Unix类的Linux、BSD和OS...
2019-03-04 20:00:29
2230
gcc-7.5.0_and_prerequisites.rar
2020-03-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人