aarch64专题

QEMU用户模式测试AARCH64程序

QEMU的两种模式 QEMU(快速模拟器)是一个开源的机器模拟器和虚拟化器,它能够模拟多种处理器架构,并且可以在不同平台上运行。QEMU 支持两种模式:用户模式和系统模式。 用户模式(User Mode): 用户模式下的 QEMU 仅模拟用户空间的二进制执行环境,不模拟底层硬件。这种模式下,QEMU 可以运行不同架构编译的二进制程序,而不需要这些程序与宿主机的架构相匹配。用户模式通常用于测试和

x264 编码器 AArch64汇编系列:quant 量化相关汇编函数

quant x264_quant_init函数中初始化时指向不同的具体实现: 以4x4块量化为例 c 语言版本实现 4x4 块量化:quant_4x4 #define QUANT_ONE( coef, mf, f ) \

x86_64 DeepinV23交叉编译生成aarch64 linux执行文件

一、系统环境 X86_64 Deepin V23正式版 二、安装步骤 1. 查看本机g++版本 $ g++ -v ... gcc version 12.3.0 (Deepin 12.3.0-17deepin5) 2.下载arm工具链 下载网页: Arm GNU Toolchain Downloads – Arm Developer https://developer.a

rsyslog交叉编译(armv7、armv8、aarch64、arm32平台通用)

文章目录 1、依赖库列表2、编译建议3、编译3.1、编译libestr3.2、编译libfastjson3.3、编译zlib3.4、编译libuuid3.5、编译libgpg-error3.6、编译libgcrypt3.7、编译openssl3.8、编译curl3.9、编译rsyslog 该文档描述了如何交叉编译rsyslog到arm64嵌入式平台。 1、依赖库列表 lib

x264 编码器 AArch64汇编系列:DCT 变换相关汇编函数

DCT变换 在x264_dct_init函数中初始化具体的 dct 实现函数。 4x4 块DCT 变换 c 语言版本实现 4x4DCT 变换函数:sub4x4_dct。 pixel_sub_wxh 函数: 这个函数的作用是从两个像素块中减去一个像素块,得到差分值,这些差分值将用于DCT变换。参数: diff:指向存储结果差分值的数组的指针。i_size:差分值数组的宽度和高度,通常

x264 编码器 AArch64汇编系列:zigzag 扫描相关汇编函数

zigzag 在x264_zigzag_init函数中初始化具体的 zigzag 实现函数: 以scan_4x4为例 c 语言实现 4x4 变换块扫描:zigzag_scan_4x4_frame。 #define ZIGZAG4_FRAME\ZIGDC( 0,

x264 编码器 AArch64汇编系列:运动补偿之MBtree相关汇编函数

x264_mbtree_propagate_cost_neon c 语言对应的实现函数: 函数参数: dst:指向int16_t类型的指针,用于存储传播成本的结果。propagate_in:指向uint16_t类型的指针,包含输入的传播成本。intra_costs:指向uint16_t类型的指针,包含帧内预测成本。inter_costs:指向uint16_t类型的指针,包含帧间预测成本。

x264 编码器 AArch64汇编系列:4x4 块帧内预测函数

x264_predict_4x4_h_aarch64 汇编函数原理分析 声明一个名为 predict_4x4_h_aarch64 的函数,export=1 标明将其导出,以便其他模块或程序可以调用;ldurb w1, [x0, #0*FDEC_STRIDE-1]:从寄存器 x0 指向的地址开始,减去1,表示向左偏移一个像素偏移量,然后加载该地址处的一个字节数据到 w1 寄存器的低8位,同时

kunpeng的aarch64架构cpu、openeuler系统、昇腾服务器适配文档转换功能(doc转docx、ppt转pptx)

一、安装flatpak sudo yum install flatpak flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo 二、安装libreoffice flatpak install flathub org.libreoffice.LibreOffice

RDK X3(aarch64) 测试手柄

0. 环境 - 亚博智能的ROSMASTER-X3 标准版 - XDK X3 1.0 - 冰原狼等win10免驱的手柄 1. RDK X3 1.0 串口通信 波特率 921600 root/root mobaterm -> Session -> VNC     -> 192.168.8.108:5900     -> runrise 2. 测试 ROSMASTER-X3 标准版 配套

openi启智社区 aarch64 npu环境安装飞桨paddlepaddle和PaddleNLP(失败)

以前在启智社区都是编译安装飞桨,这回看到飞桨提供了npu安装包,兴冲冲的以为安装很简单。 之所以安装飞桨,是因为想在启智社区的启智大脑调试环境使用最新的PaddleNLP,结果报错:No module named 'paddle.nn.layer.layers',提issuenpu下import paddlenlp报错:No module named 'paddle.nn.layer.layer

软件架构x86 、 x86_64、 arm64、aarch64

看系统信息: 大多数Linux发行版都提供如 uname -a命令     arch命令用于显示当前主机的硬件架构类型。   例如 下面的是Kylin Linux Advanced Server for Kunpeng V10 操作系统 (鲲鹏处理器是华为在2019年1月向业界发布的高性能数据中心处理器 ) 下面这个是 ubuntu 18.04.6 操作系统   ( 处理器型号 AMD

解决方案:昇腾aarch64服务器安装CUDA+GCC+CMake,编译安装Pytorch,华为昇腾HPC服务器深度学习环境安装全流程

目录 一、安装CUDA和cudnn1.1、下载CUDA驱动1.2、安装CUDA驱动1.3、配置环境变量1.4、安装cudnn1.5、安装magma-cuda 二、安装gcc编译器三、安装CMake四、安装NCCL五、编译安装Pytorch5.1、前提准备5.2、下载pytorch源码5.3、配置环境变量5.4、Pytorch编译安装5.5、测试Pytorch 特别鸣谢以下博客 最近

AARCH64 常用的指令和寄存器描述

当我们在写汇编时要参考什么 1. ABI// 当考虑了ABI之后,这样子写的汇编代码就可以和C代码兼容,可以相互调用3. 语法 (指令解释中的各种概念是什么)// C1.2 Structure of the A64 assembler language// C2.1 Understanding the A64 instruction descriptions// C6.2 Alphabetic

编译安装 ncftp (麒麟 aarch64 也可以)

ncftp 下载地址 选择 source code 源码包 wget https://www.ncftp.com/downloads/ncftp/ncftp-3.2.6-src.tar.gztar xvf ncftp-3.2.6-src.tar.gzcd ncftp-3.2.6./configure && make && make install 如果是 centos ,可以

Learn the architecture——AArch64 内存管理

本文是对arm developer网站《Learn the architecture - AArch64 memory management Guide》的学习笔记(Documentation – Arm Developer) 一、背景概述         本文介绍了AArch64中的内存转换,这是内存管理的关键,它解释了虚拟地址如何转换为物理地址、转换表的格式以及软件如何管理

Kylin Linux V10 SP1 aarch64部署k8s集群严重bug

目录 1.部署方式 2.遇到问题 3.问题解决   1.部署方式 通过sealos方式部署 2.遇到问题 适配Kylin Linux  V10 SP1 aarch64部署pod 不少出现CrashLoopBackOff 通过命令: kubectl describe pod xxx -n default 查看,发现报错如下:  Error response from

MySQL:飞腾2000+Centos7.6 aarch64 部署MySQL8.0.36

目录 1.硬件环境 2.MySQL选择 Bundle版本【全部文件】​编辑 3.下载并安装 4.安装完成后检查mysql  5.初始化MySQL 6.那就问了,都初始化了啥? 7.尝试启动MySQL 8.给mysql文件授权  9.再次尝试启动正常 10.mysql初始化目录出现了mysql.sock 11.找到MySQL初始化时的密码 12.测试PC客户端连接工具 13

下载软件时的Ubuntu x86_64-v2、skylake、aarch64版本分别代表什么?

Ubuntu-x86_64-v2、Ubuntu-x86_64-skylake和Ubuntu-aarch64都是Ubuntu的不同版本或变种,它们之间的主要区别在于所支持的硬件架构和针对特定硬件的优化。 Ubuntu-x86_64-v2: 这是基于x86_64(也称为AMD64或Intel 64)架构的Ubuntu版本。x86_64是64位计算机体系结构,广泛用于个人计算机和服务器。“v2”可能

银河麒麟 v10 sp2 aarch64架构制作openssh 9.7p1 rpm包(显示openssl版本信息)—— 筑梦之路

【国产化适配】银河麒麟v10 sp2 aarch64 制作openssh 9.6p1 rpm——筑梦之路_openssh 9.6ky10-CSDN博客 之前做过openssh 9.6 p1 rpm包,使用的是官方的spec文件,没有修改过,不过最新版9.7已经默认不使用openssl,因此制作出来的rpm包安装后不会显示openssl版本信息,而广大网友对此还念念不忘,因此我这里修改了spec文

ky10.aarch64安装Jenkins

参考地址:《安装部署 Jenkins》 前言 有war包和rpm两种安装方式,如果是长期使用更加推荐rpm的安装方式,可以更好的管理Jenkins; 我此次安装jenkins主要用于测试和简单的个人使用,所以选择更轻便的war安装。 1 下载Jenkins 下载地址:https://get.jenkins.io/war-stable/ 1.1 版本选择 jekins 选择2.4以上,尽

在Raspberry Pi 4上安装NCNN/MNN深度学习框架(aarch64+armv7l)

注意:如果尚未安装 OpenCV,请先安装它。 ncnn Raspberry 64-bit (aarch64) # check for updates (64-bit OS is still under development!)$ sudo apt-get update$ sudo apt-get upgrade# install dependencies$ sudo ap

ARMv8-AArch64 的异常处理模型详解之异常处理详解(同步异常和异步异常的分析和处理)

这里写目录标题 一,同步异常的分析1.1 同步异常分析-异常链接寄存器ELR1.2 同步异常分析-异常综合寄存器ESR,Exception Syndrome Register1.3 同步异常分析-错误地址寄存器FAR,Fault Address Register 二, 同步异常的处理示例 Synchronous exception handling三, 异步异常的处理示例 Asynchron

CentOS7安装RabbitMQ(鲲鹏服务器aarch64)

一、安装背景 由于项目需要,准备安装RabiitMQ,项目使用的服务器为华为云鲲鹏服务器。通过centos安装RabiitMQ 3.5.8时,发现glibc版本不对,故卸载glibc重装,结果卸载后系统崩溃,无法恢复,造成重大损失。 所以安装各类组件时一定要优先选用鲲鹏本身支持的版本,并且erlang和RabbitMQ之间的版本对应关系要正确。 二、安装依赖环境Erlang [root@le

CentOS7安装Mysql5.7(鲲鹏服务器aarch64)

1. 前置工作 [root@les bin]# cd /home [root@les home]# wget https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip [root@les home]# [root@les home]# unzip rpm-bug.zip

从goahead代码的bug看aarch64平台的移位操作

假设在32位arm平台的一个移位操作 int bit = 1<<30; 这是合法的。 那么平台换成了64位arm, int bit = 1 << 34; 合法吗,显然不合法,因为int的长度就是32 比特,不管32位arm还是64位arm上。要移动34位显然超出了它的表示范围。 我们知道在aarch64架构下,long是64位的,那么改成: long bit = 1 << 34 合法