C/C++ (on ARM)
文章平均质量分 77
C/C++ programming (on ARMv8)
xiangyong58
海外Top高校博士,主要研究高效轻量化Deep-Neural-Network模型设计、压缩和可解释性,应用领域为计算机视觉、普适计算。研究项目经历:基于特定Chip的高性能DNN模型开发【AI Chip】、障碍物规避【自动驾驶应用场景】、时空大数据可视化分析【智慧交通】、数据挖掘【智慧城市领域】。
博客内容主要为“科研&学习笔记”。
展开
-
arm-linux-gnueabihf-g++ gcc编译、优化命令 汇总
gcc编译与优化命令原创 2023-08-10 20:39:54 · 2327 阅读 · 0 评论 -
arm-linux-gnueabihf-gcc 安装 OpenBLAS
参考:1.MIPS(arm)交叉编译 OpenBLAS 编译和安装 2.ubuntu18.04 安装OpenBLAS问题一:LAPACK make fails: “recipe for target ‘znep.out‘ failed” errorgfortran -O2 -frecursive -c -o zunt03.o zunt03.fgfortran -o xeigtstz zchkee.o zbdt01.o zbdt02.o zbdt03.o zbdt0...原创 2022-01-19 18:06:32 · 1993 阅读 · 0 评论 -
ARM NEON 程序debug: error识别arm neon intrinsics 命令, LD_LIBRARY_PATH shouldn‘t
/usr/lib/gcc/arm-linux-gnueabihf/6/include/arm_neon.h:5792:1: error: inlining failed in call to always_inline ‘vdupq_n_s32’: target specific option mismatch vdupq_n_s32 (int32_t __a) ^~~~~~~~~~~neon_test.c:94:13: note: called from here int32x4_t sum.原创 2021-12-24 10:50:46 · 1380 阅读 · 0 评论 -
ARM Neon 编程笔记一(ARM NEON Intrinsics, SIMD运算, 优化心得)
1. ARM Neon Intrinsics 学习指北:从入门、进阶到学个通透1.入门:基本能上手写Intrinsics1.1 Neon介绍、简明案例与编程惯例1.2 如何检索Intrinsics1.3 优化效果案例1.4 如何在Android应用Neon2. 进阶:注意细节处理,学习常用算子的实现2.1 与Neon相关的ARM体系结构2.2 对非整数倍元素个数(leftovers)的处理技巧2.3 算子源码学习(ncnn库,AI方向)2.4 算子源码学习(Nvidia caro..原创 2021-12-07 15:03:27 · 1783 阅读 · 2 评论 -
C++输入输出流格式控制
C++输入输出流格式控制cout标准输出流常用控制格式 使用这些格式需要声明包含long flags( ) const 返回当前的格式标志。 long flays(long newflag) 设置格式标志为newflag,返回旧的格式标志。 long setf(long bits) 设置指定的格式标志位,返回旧的格式标志。 long setf(l转载 2013-08-22 10:49:25 · 922 阅读 · 0 评论 -
while循环输入cin ,scanf()
1.while((scanf"%d,%d",&m,&n)==2) { //... }2.while((scanf"%d,%d",&m,&n)!=EOF) { //... }3.while(cin>>m>>n) { //... }( scanf("%d %d", &n, &转载 2013-08-24 09:18:59 · 2636 阅读 · 0 评论 -
memcpy() -- 拷贝内存内容
memcpy() -- 拷贝内存内容相关函数: bcopy(), memccpy(), memmove(), strcpy(), strncpy()表头文件: #include 定义函数: void *memcpy(void *dest, const void *src, size_t n)函数说明: memcpy()用来拷贝src所指的内存内容前n个字节到dest所指转载 2013-09-15 16:10:23 · 762 阅读 · 0 评论 -
编程中无穷大常量的设定技巧
如 果问题中各数据的范围明确,那么无穷大的设定不是问题,在不明确的情况下,很多程序员都取0x7fffffff作为无穷大,因为这是32-bit int的最大值。如果这个无穷大只用于一般的比较(比如求最小值时min变量的初值),那么0x7fffffff确实是一个完美的选择,但是在更多的情况 下,0x7fffffff并不是一个好的选择。很多时候我们并不只是单纯拿无穷大来作比较,而是会运算后再转载 2013-09-23 20:00:33 · 905 阅读 · 0 评论 -
地图匹配算法实践
参考:http://blog.jobbole.com/88993/#comment-1553861 背景如下图所示,1、2、3 这三个点是汽车的GPS定位结果,尽管汽车是在道路上,但定位结果与道路存在偏差。地图匹配(Map Matching)是指将行车轨迹的经纬度采样序列与数字地图路网匹配的过程,其本质上是平面线段序列的模式匹配问题( Alt等,2003)。在实际应转载 2016-01-23 16:45:57 · 4624 阅读 · 14 评论 -
printf()输出格式
1.转换说明符 %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float和doulbe) %e(%E) 浮点数指数输出[e-(E-)记数法] %g(%G原创 2013-08-22 10:54:30 · 840 阅读 · 0 评论 -
计算机经典书籍电子书合集
计算机经典书籍电子书合集(适合计算机学生学习以及程序员笔试、面试)分类: c++ 2楼 JAVA篇此篇收录:.《Java 2 核心技术》、2.《Java编程语言》、3.《Effective Java》、4.《Java解惑》、5.《Java编程思想》3楼 C篇此篇收录:1.《C程序设计语言》、2.《C和指针》、3.《C陷阱与缺陷》转载 2013-04-24 13:36:02 · 2410 阅读 · 1 评论 -
位运算
位运算百科名片程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算说穿了,就是直接对整数在内存中的二进制位进行操作。比如,and运算本来是一个逻辑运算符,但整数与整数之间也可以进行and运算。举个例子,6的二进制是110,11的二进制是1011,那么6 and 11的结果就是2,它是二进制对应位进行逻辑运算的结果(0表示False,1表示True,空位都转载 2012-08-12 15:09:02 · 2427 阅读 · 0 评论 -
C++ Map详解
• map定义类型 /* 1. map对象的元素是键值对,也就是每个元素包含两个部分:键以及由键关联的值。 键的类型必须是可以比较的,但键类型是自定义类型时,必须重写比较函数: inline bool compare(const keytype &key,const keytype &key) 2. map对象的键是不可修改的,值可以;用转载 2012-08-18 17:06:22 · 1104 阅读 · 0 评论 -
C++关于"using namespace std;"
C++关于"using namespace std;"引:#include using namespace std; 与 //#include #include using namespace std; void main() { int n,i,j,c; coutcin>>n; if(n>20) cout转载 2012-09-06 21:29:44 · 472 阅读 · 0 评论 -
strlen 与 sizeof()
strlen函数 (见sometime learn 1——C语言中sizeof与strlen区别) strlen函数测试字符串的实际长度(不包括'/0'),并将该长度作为函数的值返回。函数参数“字符串”可以是字符串常量,也可以是字符变量一般形式是: length=strlen(字符翻译 2012-11-04 10:42:44 · 467 阅读 · 0 评论 -
c语言结构体后定义*Ruler_ptr 含义
程序含义可以不看,只分析红体字部分#ifndef DATATYPE_H_#define DATATYPE_H_typedef struct Ruler {int len;double start;double step;double stop;} *Ruler_ptr, Ruler;Ruler_ptr initRuler();#end翻译 2012-11-07 09:49:01 · 836 阅读 · 0 评论 -
第三届蓝桥杯复赛题解析
第三届蓝桥杯复赛题解析第三届蓝桥杯复赛题原题:http://www.cnblogs.com/AkQuan/archive/2012/04/10/2440370.html第一题: 1 #include 2 int main() 3 { 4 long int X=10, Y=90; 5 for(int k=1; k120; k++)//半分钟一个单位转载 2013-03-12 12:22:45 · 2777 阅读 · 0 评论 -
跳出while/for循环
跳出while/for循环for(xx;xx;xx){ break ;//跳出for循环 } while(){ break;跳出while循环 }==================while(){if(){ ....; continue;//跳到while循环,继续执行下一次while原创 2013-04-08 15:18:12 · 2203 阅读 · 0 评论 -
malloc 与 new 用法
(LinkList*)malloc(sizeof(LNode)是什么意思2011-11-01 14:56今天学习数据结构—单链表,这点不懂通过查阅资料弄明白,整理一下,如下: malloc是向系统请求分配内存空间 (c语言) sizeof(LNode)是要分配内存大小 LinkList*)表示请求的内存是用来装LinkList这种类型的原创 2013-03-25 20:12:48 · 1099 阅读 · 0 评论 -
sstream 的应用与解析
#include #include #include using namespace std;int main(){int a, b;string Str1, Str2;string Input = "abc 123 bcd 456 sss 999";//ostringstream 对象用来进行格式化的输出,可以方便的将各种类型转换为string类型翻译 2012-08-11 16:05:49 · 707 阅读 · 0 评论