<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[光明顶魔教工程师]]></title><description><![CDATA[业精于勤，荒于嬉]]></description><link>https://blog.youkuaiyun.com/a1171936767</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a1171936767]]></copyright><item><title><![CDATA[ROCM Kernel生成到GPU执行全流程分析]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/161335213</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/161335213</guid><author>a1171936767</author><pubDate>Sat, 23 May 2026 09:26:45 +0800</pubDate><description><![CDATA[本文档详细分析ROCm软件栈中从MIOpen到GPU硬件的完整kernel执行流程，包括kernel编译、加载、入队、AQL包生成、队列管理和Graph API机制。文件solver::pooling::PoolingForward2d, // 优化的2D poolingsolver::pooling::PoolingForwardNd, // 通用N-D poolingsolver::pooling::PoolingForwardNaive, // 简单动态solver。]]></description><category></category></item><item><title><![CDATA[MIGraphX Lowering 模块深度分析]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/161319659</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/161319659</guid><author>a1171936767</author><pubDate>Fri, 22 May 2026 16:29:55 +0800</pubDate><description><![CDATA[Lowering是 MIGraphX 编译管线中承上启下的关键 Pass，负责将平台无关的中间表示（IR）算子转换为后端特定的算子表示。输入：经过多轮图优化后的通用算子（如dotsoftmax输出：后端专属算子（如ref::op副作用：插入内存分配（allocate）、数据搬运（）、延迟编译标记（后端Lowering 核心任务GPU映射到 MIOpen/rocBLAS/hipBLASLt，或标记为 JIT 编译；插入显存分配与 H2D/D2H 拷贝CPU。]]></description><category></category></item><item><title><![CDATA[AMD MIGraphX 源码分析]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/161319599</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/161319599</guid><author>a1171936767</author><pubDate>Fri, 22 May 2026 16:28:30 +0800</pubDate><description><![CDATA[主要功能模块关系框图
#mermaid-svg-p8l3DOzeVp1qmWta{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-p8l3DOzeVp1qmWta .edge-a]]></description><category></category></item><item><title><![CDATA[stm32在linux环境下的开发与调试]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/143804084</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/143804084</guid><author>a1171936767</author><pubDate>Fri, 15 Nov 2024 17:35:27 +0800</pubDate><description><![CDATA[下载地址为：https://www.st.com/en/development-tools/stm32cubeclt.html选择 linux版本下载安装安装好后默认在家目录st下。]]></description><category></category></item><item><title><![CDATA[AMD ROCM软件栈 -clr项目分析]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/137911399</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/137911399</guid><author>a1171936767</author><pubDate>Thu, 18 Apr 2024 10:38:29 +0800</pubDate><description><![CDATA[项目层级结构fill:#333;color:#333;color:#333;fill:none;AMD CLR：Comgr 库提供用于编译和检查 AMDGPU 代码对象的应用程序接口CLR项目目录结构。]]></description><category></category></item><item><title><![CDATA[bthome协议分析及esp32上的实现]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/130246675</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/130246675</guid><author>a1171936767</author><pubDate>Wed, 19 Apr 2023 16:16:33 +0800</pubDate><description><![CDATA[最近自己搞了些智能家居的小节点，但由于wifi入网方式功耗太高，于是关注起了蓝牙bthome是一种灵活的低功耗BLE数据格式协议，用于广播传感器数据，此协议支持数据加密，目前最新为v2版本。在home assistant中也支持协议，这意味着自己DIY的传感器采集节点，通过BLE广播数据时只要遵守此协议，该节点就能被HA探测到并解析传感器数据。]]></description><category></category></item><item><title><![CDATA[ubuntu蓝牙设备重连接慢]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/125000163</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/125000163</guid><author>a1171936767</author><pubDate>Fri, 27 May 2022 11:07:27 +0800</pubDate><description><![CDATA[描述
我使用蓝牙鼠标和键盘连接到主机，操作系统是ubuntu 22
在使用过程中发现在主机或键盘休眠后 重连接速度很慢
解决方案

ubuntu 22

vim /etc/bluetooth/main.conf

FastConnectable = true


]]></description><category></category></item><item><title><![CDATA[bits/libc-header-start.h: No such file or directory]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/124959686</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/124959686</guid><author>a1171936767</author><pubDate>Wed, 25 May 2022 09:29:33 +0800</pubDate><description><![CDATA[问题描述
最近需要在debian 安装下arm和riscv的交叉工具链
sudo apt install gcc-10-riscv64-linux-gnu

在安装完后使用交叉工具链编译东西时报错
orangepi@orangepi4-lts:~/float-test$ riscv64-linux-gnu-gcc-10 float-cmov3.c -O2 -S
In file included from float-cmov3.c:1:
/usr/include/stdio.h:27:10: fatal e]]></description><category></category></item><item><title><![CDATA[设置git协议clone代理]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/119247740</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/119247740</guid><author>a1171936767</author><pubDate>Fri, 30 Jul 2021 15:03:42 +0800</pubDate><description><![CDATA[0x0
最近在clone yaffs2仓库时发现clone的异常缓慢，就算开了代理也是，搜索一番发现网上大多都是将设置http、https、ssh协议的代理，对于git协定的代理讲的很少，下面分享下如何让git协议走socks代理
以下内容前提是里已经在电脑上系统用了代理
0x1
yaffs2 代码仓库是git协议的，并且没有提供http协议的地址，ssh格式的需要注册后才能使用
git clone git://www.aleph1.co.uk/yaffs2


安装环境

sudo apt-get ins]]></description><category></category></item><item><title><![CDATA[在centos8 stream启用 Extra Packages]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/119236823</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/119236823</guid><author>a1171936767</author><pubDate>Fri, 30 Jul 2021 10:18:24 +0800</pubDate><description><![CDATA[前言
最近把一台机器装了centos8 stream，centos8 的维护周期将会在2021-12-31结束
而centos8 stream和centos8有什么区别呢？我参考官方的描述简单总结下

由下游变更到上游
centos8是RHEL的rebuild版本，所以是处在下游的，意思是收到的都是稳定的更新
centos8 stream是处在上游的，是从RHEL的公共开发分支构建的，centos8 stream 经过一段时间（测试、踩坑）后会变成RHEKL的下一个小版本
centos8 stream的测试]]></description><category></category></item><item><title><![CDATA[meson构建系统]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/116201113</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/116201113</guid><author>a1171936767</author><pubDate>Tue, 27 Apr 2021 14:50:24 +0800</pubDate><description><![CDATA[简明使用
本部分针对那些基于meson build的项目，记录一些meson的基础命令


编译项目


setup 1
使用meson build的项目在源码根目录都能看到一个名为“meson.build”的文件，此文件规定了构建项目的规则
在meson下要求要指定一个单独的build目录，这样在编译过程中产生的中间文件不会污染源代码目录，使用以下命令创建build目录并初始化编译
meson build

命令执行后会自动探测环境、探测编译器，创建一个名为“build”的构建目录，并生成后续compil]]></description><category></category></item><item><title><![CDATA[MIPS内联汇编]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/116171646</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/116171646</guid><author>a1171936767</author><pubDate>Mon, 26 Apr 2021 20:32:11 +0800</pubDate><description><![CDATA[0X0
近几天由于项目需求需要使用内联汇编来完成部分功能，下面总结下基础知识点
语法基本结构
	__asm__ __volatile__(
    "汇编语句\n\t"
	"汇编语句\n\t"
	:输出寄存器
	:输入寄存器
    :寄存器破坏表
	);

**????*把内联汇编分割为了4个部分


第一部分
如上的第二、第三行，这里可以填写若干条汇编指令


第二部分
如上的第四行，在这里对输出寄存器进行描述


第三部分
如上的第五行，在这里对输入寄存器进行描述


第四部分
如上的第六行，


第]]></description><category></category></item><item><title><![CDATA[极路由4刷机]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/116148345</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/116148345</guid><author>a1171936767</author><pubDate>Mon, 26 Apr 2021 11:35:32 +0800</pubDate><description><![CDATA[准备工作


https://www.right.com.cn/forum/thread-161906-1-1.html


https://breed.hackpascal.net/


在第二个链接里下载路由器对应的breed固件，固件的说明见第一个链接，下文以极路由4为例演示
由于极路由官方挂了，无法进行root，但最近有大佬做了个网站可以进行root
步骤


复位
先对极路由进行复位操作，一直按着路由器的reset按钮，直到指示灯变红闪烁，然后自动重启这样就复位完毕


root路由器
网站链接点]]></description><category></category></item><item><title><![CDATA[radare2 常用操作总结]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/115491333</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/115491333</guid><author>a1171936767</author><pubDate>Wed, 07 Apr 2021 17:38:05 +0800</pubDate><description><![CDATA[radare2 简介
radare2是一个用C语言编写的跨平台的二进制分析工具，支持ARM、MIPS、X86等平台，支持分析多种格式的二进制文件如ELF、Mach-O、Fatmach-O, PE、PE+、 MZ、 COFF等，同时也支持多种操作系统如Windows (since XP)、GNU/Linux、GNU/Darwin、GNU/Hurd、Apple’s 等等，总之就是巨屌。
核心功能：

16进制编辑器
调试器，可对源来自于磁盘、网络连接、内核驱动程序、正在运行的进程进行调试
汇编、反汇编
程序模拟]]></description><category></category></item><item><title><![CDATA[stmmac描述符的结构和初始化]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/115374177</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/115374177</guid><author>a1171936767</author><pubDate>Thu, 01 Apr 2021 14:53:19 +0800</pubDate><description><![CDATA[stmmac 描述符（Descriptors）
stmmac的描述符有两个个模式，分别是ring模式和chain模式，根据特性的不同支持，描述符又有以下3个形式norm、Alternate 、 Enhanced。下面主要讲下ring模式下的Enhanced描述符结构，以及比较重要的位。stmmac的收发的描述符相同位的含义有些差别，所以我们分开分析下描述符的初始化
​	0.描述符几个关键要素


OWN，用来表示描述符的状态，相当于Intel网卡里的DD位


buf地址，指明网卡将收到的数据包放到哪里

]]></description><category></category></item><item><title><![CDATA[龙芯3a4000 交叉编译链接错误]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/114534171</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/114534171</guid><author>a1171936767</author><pubDate>Mon, 08 Mar 2021 15:44:48 +0800</pubDate><description><![CDATA[0x0

交叉编译平台： amd + ubuntu20
交叉编译目标平台：LOONGSON 3A4000
交叉编译器：7.3.1

在编译时出现如下报错：
mips-linux-gnu-ld -r -Lmips-loongson3a-app-gcc/lib -o octeontx_fpavf.o.o octeontx_fpavf.o.pmd.o octeontx_fpavf.o
mips-linux-gnu-ld: octeontx_fpavf.o.pmd.o: compiled for a little ]]></description><category></category></item><item><title><![CDATA[解决crontab 定时任务加载失败]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/114521033</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/114521033</guid><author>a1171936767</author><pubDate>Mon, 08 Mar 2021 09:46:32 +0800</pubDate><description><![CDATA[0x0

系统：centos7
内核：3.10.0-1160.15.2.el7.x86_64

今天用crontab创建定时任务，在测试时发现任务并没有按预期执行，
使用systemctl status crond 查看crond的状态
&gt; # systemctl status crond                                                                                        
● crond.service - C]]></description><category></category></item><item><title><![CDATA[ubuntu下网易云音乐适配高分辨率屏幕]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/114324666</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/114324666</guid><author>a1171936767</author><pubDate>Wed, 03 Mar 2021 17:29:03 +0800</pubDate><description><![CDATA[0x0

环境 ubuntu20
处理器 AMD

我主流工作环境是Ubuntu20，而且很依赖音乐，网易云音乐适配了Ubuntu，而最近我换了个4K屏幕
开机启动网易云音乐后发现界面文字变得很小完全没法看，如下图

分析发现网易云音乐是通过 /opt/netease/netease-cloud-music/netease-cloud-music.bash 脚本启动的，先看看脚本
#!/bin/sh
HERE="$(dirname "$(readlink -f "${0}")")"
export LD_LI]]></description><category></category></item><item><title><![CDATA[linux下使用网易邮箱发邮件]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/114270828</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/114270828</guid><author>a1171936767</author><pubDate>Mon, 01 Mar 2021 20:38:02 +0800</pubDate><description><![CDATA[0x0
最近要写个脚本监视系统运行情况，有异常及时通过邮件通知我。
本次测试中使用网易的邮箱作为邮件发送服务器（邮箱账号需要开启smtp服务如下图），由于网易邮箱验证比较严格，需要进行一些额外操作才可以正常发送邮件，特此记录

安装软件
yum -y install sendmail
yum -y install mailx

获取证书
mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.126.com:465 | sed -ne ]]></description><category></category></item><item><title><![CDATA[Linux stmac网卡代码分析 -- open]]></title><link>https://blog.youkuaiyun.com/a1171936767/article/details/114141038</link><guid>https://blog.youkuaiyun.com/a1171936767/article/details/114141038</guid><author>a1171936767</author><pubDate>Fri, 26 Feb 2021 17:00:36 +0800</pubDate><description><![CDATA[Open
stmmac_open是在stmmac_netdev_ops结构体里的，这个ops在probe时就已经注册到了net_device结构体里，在网卡对于stmmac_open函数调用的时间我还不确定是否是在网卡link up时
下面看看stmmac_open函数，文件位置： drivers/net/ethernet/stmicro/stmmac/stmmac_main.c

在open函数中主要完成了以下操作


连接到PHY，设置好合适的速率


申请、初始化dma 描述符资源和队列，在后面初始化]]></description><category></category></item></channel></rss>