<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[The space of Shining]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/xxradon</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xxradon]]></copyright><item><title><![CDATA[gitlab CI/CD系列之使用 GitLab Runner注册和基本环境配置]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/107101053</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/107101053</guid><author>xxradon</author><pubDate>Fri, 03 Jul 2020 11:25:08 +0800</pubDate><description><![CDATA[这里主要使用的是shell模式
简介
理解了上面的基本概念之后，有没有觉得少了些什么东西 —— 由谁来执行这些构建任务呢？
答案就是 GitLab Runner 了！
想问为什么不是 GitLab CI 来运行那些构建任务？
一般来说，构建任务都会占用很多的系统资源 (譬如编译代码)，而 GitLab CI 又是 GitLab 的一部分，如果由 GitLab CI 来运行构建任务的话，在执行构建任务的时候，GitLab 的性能会大幅下降。
GitLab CI 最大的作用是管理各个项目的构建状态，因此，运行构]]></description><category></category></item><item><title><![CDATA[gitkraken免费版本6.5.1,Linux下载地址]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104939418</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104939418</guid><author>xxradon</author><pubDate>Wed, 18 Mar 2020 10:54:45 +0800</pubDate><description><![CDATA[来源：https://www.kaisawind.com/2020/03/04/2020-03-05-git/
gitkraken自6.5.3本地库开始收费,所以推荐下载旧版本下载地址
收费版本
{
“version”: “6.5.3”,
“url_deb”: “https://release.axocdn.com/linux/GitKraken-v6.5.3.deb”,
“url_rpm”: “...]]></description><category></category></item><item><title><![CDATA[跨平台最好用的Git GUI工具gitkraken]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104819450</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104819450</guid><author>xxradon</author><pubDate>Thu, 12 Mar 2020 15:35:23 +0800</pubDate><description><![CDATA[初级使用教程
视频版
https://www.bilibili.com/video/av66288720/
git的视频教程
https://www.bilibili.com/video/av29968708/?p=10
文字版
https://www.ifuntools.cn/git-kraken/
git-lfs 额外说明
安装：
sudo apt-get install git-lfs

什...]]></description><category></category></item><item><title><![CDATA[十、ONNX Runtime与pytorch的对接方法汇总]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104182111</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104182111</guid><author>xxradon</author><pubDate>Sun, 08 Mar 2020 12:30:02 +0800</pubDate><description><![CDATA[来源：
1、https://github.com/onnx/tutorials/tree/master/PyTorchCustomOperator
How to export Pytorch model with custom op to ONNX and run it in ONNX Runtime
This document describes the required steps for e...]]></description><category></category></item><item><title><![CDATA[八、ONNX Runtime的图优化方法说明]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104117617</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104117617</guid><author>xxradon</author><pubDate>Sun, 08 Mar 2020 12:28:44 +0800</pubDate><description><![CDATA[来源文档
ONNX Runtime的图优化方法 Graph Optimizations in ONNX Runtime
ONNX Runtime提供了各种图优化来改善模型性能。 图优化本质上是图级别的转换，包括小图简化、节点消除甚至是更复杂的节点融合和布局优化。
根据图的优化的复杂性和功能将其分为几类（或“级别”）。 它们可以在线或离线执行。 在在线模式下，优化是在执行推理之前完成的；而在离线模式...]]></description><category></category></item><item><title><![CDATA[四、ONNX Runtime中的构建工具CMake使用指南和ABI_Dev_Notes]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104100442</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104100442</guid><author>xxradon</author><pubDate>Sun, 08 Mar 2020 12:27:42 +0800</pubDate><description><![CDATA[翻译来源
通常，有多种方法可以完成同一件事。这就是为什么我们有此指南。这与哪个正确/错误无关。这是为了使项目代码朝着同一方向发展。
构建一套软件通常有很多方法，这里是ONNX Runtime团队建议的构建规范。
将影响最小化 Scope the impact to minimal
如果您想更改某些设置，请尝试将影响范围缩小到本地。
If you want to change some settin...]]></description><category></category></item><item><title><![CDATA[三、ONNX Runtime添加一个新的execution provider]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104100243</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104100243</guid><author>xxradon</author><pubDate>Sun, 08 Mar 2020 12:25:48 +0800</pubDate><description><![CDATA[ONNX Runtime添加一个新的execution provider
execution provider从本质上来讲就是一个针对不同硬件平台的executor，ONNX Runtime目前提供了以下


MLAS (Microsoft Linear Algebra Subprograms)


NVIDIA CUDA


Intel MKL-ML


Intel DNNL - subgrap...]]></description><category></category></item><item><title><![CDATA[onnx模型如何增加或者去除里面node，即修改图方法]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104715524</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104715524</guid><author>xxradon</author><pubDate>Sun, 08 Mar 2020 12:24:45 +0800</pubDate><description><![CDATA[有时候我们通过pytorch导出onnx模型，需要修改一下onnx的图结构，怎么修改呢？
下面两个Python实例可以提供了修改思路。
Changing the graph is easier than recreating it with make_graph, just use append, remove and insert.参考https://github.com/onnx/onnx/i...]]></description><category></category></item><item><title><![CDATA[二、ONNX Runtime增加新的operator/kernel]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104100114</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104100114</guid><author>xxradon</author><pubDate>Mon, 03 Feb 2020 14:56:41 +0800</pubDate><description><![CDATA[翻译来源
onnx增加新的operator/kernel
可以通过以下3种方式在ONNXRuntime中编写和注册新operator/kernel
1. 使用实验性的c API，暂不推荐，因为API还不稳定，可能会有大变动。不需要编译源码 Using the experimental custom op API in the C API (onnxruntime_c_api.h)
Note: Th...]]></description><category></category></item><item><title><![CDATA[一、ONNX Runtime的设计理念]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/104099603</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/104099603</guid><author>xxradon</author><pubDate>Fri, 31 Jan 2020 13:09:08 +0800</pubDate><description><![CDATA[翻译来源
ONNX Runtime的设计理念
本文档概述了高性能，跨平台的推理引擎ONNX Runtime的设计理念。
ONNX Runtime的主要目标

最大化自动地在不同的平台上利用定制的accelerators和runtimes。
为定制的accelerators和runtimes提供正确的抽象和运行环境。并且我们把这种抽象称之为execution
provider，它定义并公开了ONNX...]]></description><category></category></item><item><title><![CDATA[c++ string转char*]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103991494</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103991494</guid><author>xxradon</author><pubDate>Wed, 15 Jan 2020 16:21:50 +0800</pubDate><description><![CDATA[如果要将string转换为char*，可以使用string提供的函数c_str() ，或是函数data()，data除了返回字符串内容外，不附加结束符’\0’，而c_str()返回一个以‘\0’结尾的字符数组。


const char *c_str();
c_str()函数返回一个指向正规C字符串的指针,内容与本string串相同.
这是为了与c语言兼容,在c语言中没有string类型,故必...]]></description><category></category></item><item><title><![CDATA[TensorRT5,TensorRT6不兼容pytorch1.2，1.3，1.4导出的ONNX模型解决方案]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103959758</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103959758</guid><author>xxradon</author><pubDate>Mon, 13 Jan 2020 16:27:08 +0800</pubDate><description><![CDATA[错误点
使用pytorch1.2,1.3导出的ONNX模型，如下面这个resnet18的代码：
import torch
import torch.nn as nn
import math

dummy_input = torch.randn(10, 3, 224, 224, device='cuda')






def conv3x3(in_planes, out_planes, strid...]]></description><category></category></item><item><title><![CDATA[pytorch初始化时占用过多内存问题]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103617179</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103617179</guid><author>xxradon</author><pubDate>Thu, 09 Jan 2020 14:40:18 +0800</pubDate><description><![CDATA[问题来源：
使用pytorch部署代码，我们会发现一个问题，就是如果只是使用cpu不适用gpu，pytorch加载进来的时候并不会占用多大的内存，一切都是正常的。

下面是问题描述：
There is a huge RAM overhead for using the GPU even for processing small tensors.
Here’s a standalone script...]]></description><category></category></item><item><title><![CDATA[gcc和g++的区别]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103776995</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103776995</guid><author>xxradon</author><pubDate>Tue, 31 Dec 2019 09:07:42 +0800</pubDate><description><![CDATA[看的Linux公社的一篇文章，觉得不错，内容复制过来了。
其实在这之前，我一直以为gcc和g++是一个东西，只是有两个不同的名字而已，今天在linux下编译一个c代码时出现了错误才找了一下gcc和g++的区别。
先描述一下今天遇到的错误：
因为以前写程序的时候，写的都是cpp文件，然后就直接使用g++编译，没出错，也就没有在意过这些问题，今天有一个c文件，但里面包含后STL中的vector语法，想...]]></description><category></category></item><item><title><![CDATA[GStreamer基础教程02 - 基本概念]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103612874</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103612874</guid><author>xxradon</author><pubDate>Thu, 19 Dec 2019 14:58:58 +0800</pubDate><description><![CDATA[原作者：John.Leng
出处：http://www.cnblogs.com/xleng/
摘要
在 Gstreamer基础教程01 - Hello World中，我们介绍了如何快速的通过一个字符串创建一个简单的pipeline。为了能够更好的控制pipline中的element，我们需要单独创建element，然后再构造pipeline，下面将介绍GStreamer的一些基本概念并展示pipe...]]></description><category></category></item><item><title><![CDATA[GStreamer基础教程01 - Hello World]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103610481</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103610481</guid><author>xxradon</author><pubDate>Thu, 19 Dec 2019 10:58:36 +0800</pubDate><description><![CDATA[作者：John.Leng
出处：http://www.cnblogs.com/xleng/
摘要
在面对一个新的软件库时，第一步通常实现一个“hello world”程序，来了解库的用法。对于GStreamer，我们可以实现一个极简的播放器，来了解GStreamer的使用。
环境配置
为了快速掌握Gstreamer相关的知识，我们优先选择基于debian的deepin作为我们的开发环境，其他平台的...]]></description><category></category></item><item><title><![CDATA[pytorch推理时将prelu转成relu实现]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103560990</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103560990</guid><author>xxradon</author><pubDate>Mon, 16 Dec 2019 13:54:44 +0800</pubDate><description><![CDATA[很多时候，我们的推理框架如，tensorrt，支持relu实现，但是不支持Prelu。此时我发现了该项目https://github.com/PKUZHOU/MTCNN_FaceDetection_TensorRT，其中说道:
Considering TensorRT don't support PRelu layer, which is widely used in MTCNN, one so...]]></description><category></category></item><item><title><![CDATA[Linux平台基于v4l2开发免驱摄像头->输出为Opencv Mat]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103425225</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103425225</guid><author>xxradon</author><pubDate>Tue, 10 Dec 2019 18:37:10 +0800</pubDate><description><![CDATA[V4L2
简介
作者：onesixthree
链接：https://www.jianshu.com/p/fd5730e939e7
来源：简书
Video for Linuxtwo(Video4Linux2)简称V4L2，是V4L的改进版。V4L2是linux操作系统下用于采集图片、视频和音频数据的API接口，配合适当的视频采集设备和相应的驱动程序，可以实现图片、视频、音频等的采集。可以对uvc免驱...]]></description><category></category></item><item><title><![CDATA[pytorch1.2，pytorch1.3如何使用1.1及以前生成的script(.pt)文件]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/102968867</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/102968867</guid><author>xxradon</author><pubDate>Tue, 10 Dec 2019 17:12:54 +0800</pubDate><description><![CDATA[pytorch自从1.2版本以后，主要的数据结构上面的变化就是增加了bool变量，所以以前的uint8输入需要更改一下。
不解压，使用压缩工具软件，如rar，打开.pt文件，如图。

找到里面的code/xray.py文件，这里面记录的就是我们的静态图，所有的参数都是固定写好的。
将dtype=0 的改为dtype=11
下面是c10/core/ScalarType.h中定义的顺序
#define...]]></description><category></category></item><item><title><![CDATA[c++  undefined reference std::__cxx11::basic_string]]></title><link>https://blog.youkuaiyun.com/xxradon/article/details/103086594</link><guid>https://blog.youkuaiyun.com/xxradon/article/details/103086594</guid><author>xxradon</author><pubDate>Fri, 15 Nov 2019 16:00:25 +0800</pubDate><description><![CDATA[记录今天遇到的问题：


使用c++11 写了一段c++程序，使用gcc 7.3编译。程序引用了非c++11编写的静态库。


链接时总是报某个函数找不到 但是使用nm命令查看，符号确实存在。


我们百度或者Google可以发现，这个原因来源与GCC的版本问题。因为自gcc 5以后引入了新的ABI，简单点说就是gcc5 重写了string和list，我们使用的库的接口一旦使用这几个类，就容易出现...]]></description><category></category></item></channel></rss>