MySQL监控Innodb信息

Innodb监控

Innodb由于支持事务操作,是mysql中使用最多的存储引擎,所以如何监控Innodb存储引擎以进行性能优化是在使用mysql过程中遇到最多的,那么如何进行监控呢?

show engine

-- 显示innodb存储引擎状态的统计和配置信息
show engine innodb status;

展示的主要内容有
-----------------
BACKGROUND THREAD  --后台线程
-----------------
srv_master_thread loops: 19610306 srv_active, 0 srv_shutdown, 9705136 srv_idle  --统计Innodb启动后的活动
srv_master_thread log flush and writes: 29312902  --写入和刷新日志的次数
----------
SEMAPHORES  --信号量包含了线程等待互斥锁或读写锁的信息
----------
OS WAIT ARRAY INFO: reservation count 52795642  --os等待数组信息,分配插槽的次数
OS WAIT ARRAY INFO: signal count 57522728  --os等待数组信息,线程通过数组得到信号的次数
RW-shared spins 0, rounds 77349143, OS waits 9180114  --共享锁期间,读写锁存器上自旋等待个数,自旋循环迭代次数以及操作系统调用的等待个数
RW-excl spins 0, rounds 179767865, OS waits 2534243  --排他锁期间,读写锁存器上自旋等待个数,自旋循环迭代次数以及操作系统调用的等待个数
RW-sx spins 2068750, rounds 40171680, OS waits 844522  --共享排他锁期间,读写锁存器上自选等待个数,自旋循环迭代次数以及操作系统调用的等待个数
Spin rounds per wait77349143.00 RW-shared179767865.00 RW-excl, 19.42 RW-sx  --对于每一个互斥锁,操作系统调用等待的每一个自旋循环迭代个数
------------
TRANSACTIONS --包含所有当前正在执行的事务的信息
------------
Trx id counter 1888483436  --当前事务id
Purge done for trx s n:o < 1888483436 undo n:o < 0 state: running but idle --所有编号小于1888483436的事务都已经从历史记录列表中清除了,清除旧的MVCC行时所用的事务id,这个值与当前事务ID进行比较,就可以知道有多少老版本的数据未被清除
History list length 17 --历史列表的长度,位于Innodb数据文件的撤销空间里的页面的数目,如果事务执行了更新并提交,该数目就会增加,当清理进程移除旧版本数据时,该数目会减少
LIST OF TRANSACTIONS FOR EACH SESSION: 当前事务列表
---TRANSACTION 422068961001072, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068960999248, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961005632, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961013840, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961012016, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961010192, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961001984, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961000160, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961017488, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961011104, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961012928, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961004720, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961002896, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961003808, not started
0 lock struct(s), heap size 11360 row lock(s)
---TRANSACTION 422068961007456, not started
0 lock struct(s), heap size 11360 row lock(s)
--------
FILE I/O  --各种IO操作的Innodb内部线程以及执行了多少次IO操作
--------
-- 有四个线程
-- insert buffer thread 负责插入缓冲合并
-- log thread 负责异步刷日志
-- read thread 执行预读操作以尝试预先读取Innodb预感需要的数据
-- write thread 刷脏缓冲
I/O thread 0 state: waiting for completed aio requests (insert buffer thread--IO线程的状态
I/O thread 1 state: waiting for completed aio requests (log thread)
I/O thread 2 state: waiting for completed aio requests (read thread)
I/O thread 3 state: waiting for completed aio requests (read thread)
I/O thread 4 state: waiting for completed aio requests (read thread)
I/O thread 5 state: waiting for completed aio requests (read thread)
I/O thread 6 state: waiting for completed aio requests (write thread)
I/O thread 7 state: waiting for completed aio requests (write thread)
I/O thread 8 state: waiting for completed aio requests (write thread)
I/O thread 9 state: waiting for completed aio requests (write thread)
Pending normal aio reads: [0000] , aio writes: [0000] ,
 ibuf aio reads:, log i/o's:, sync i/o's:
Pending flushes (fsync) log0; buffer pool: 0 -- 挂起操作的信息,aio是指异步io
83934578288 OS file reads, 282688772 OS file writes, 190348192 OS fsyncs --innodb启动后的总统计信息
984.40 reads/s, 16384 avg bytes/read, 10.15 writes/s, 9.12 fsyncs/s --最后一次显示后的总统计信息
-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX  --插入缓冲区与自适应散列统计信息
-------------------------------------
Ibuf: size 1, free list len 3078, seg size 30808815726 merges --在页中插入缓冲索引树的当前大小,空闲列表的长度,在包含插入缓冲树与头信息的文件段中已分配页的个数,被合并页的个数
merged operations:
 insert 6898371delete mark 38430046delete 1226485  --通过类型区分,索引页被执行合并操作的次数
discarded operations:
 insert 1019delete mark 0delete 0 --无须合并丢弃操作的数量
Hash table size 34673, node heap has 1 buffer(s)
Hash table size 34673, node heap has 74 buffer(s)
Hash table size 34673, node heap has 1 buffer(s)
Hash table size 34673, node heap has 1 buffer(s)
Hash table size 34673, node heap has 1 buffer(s)
Hash table size 34673, node heap has 2 buffer(s)
Hash table size 34673, node heap has 28 buffer(s)
Hash table size 34673, node heap has 7 buffer(s)
5203.54 hash searches/s, 128.14 non-hash searches/s --成功使用自适应散列索引查找的数量,当不能使用自适应索引时向下搜索B树的次数
---
LOG    --Innodb日志中活动信息
---
Log sequence number 319041331834 --当前日志序号
Log flushed up to   319041331699 -- 日志已经刷到的位置
Pages flushed up to 319033170877 
Last checkpoint at  319033170877  -- 上一个检查点,当前日志序列号LSN
0 pending log flushes, 0 pending chkp writes 
169033177 log i/o's done, 8.92 log i/o's/second --挂起的日志写入次数,挂起的检查点写入个数,innodb启动后的IO操作个数,从最近一次显示之后的每秒IO操作个数
----------------------
BUFFER POOL AND MEMORY   --Innodb缓冲池与内存使用情况
----------------------
Total large memory allocated 137428992 --分配的内存
Dictionary memory allocated 1204989 --被数据字典表与索引对象所占空间的字节数
Buffer pool size   8191 --缓冲池个数
Free buffers       1024 --空闲缓冲区个数
Database pages     7052 --当前缓冲区LRU队列的长度(分配用来存储数据库页的页数)
Old database pages 2583 --旧的LRU队列的长度
Modified db pages  530 --需要刷新的页面的数量(脏数据库页数)
Pending reads      0 --挂起读操作的个数
Pending writes: LRU 0flush list 0, single page 0 --通过LRU算法,等待刷新的页数
Pages made young 983912385not young 304833753259 --因为最近第一次被访问时,变成新页面的数目和没有变成新页面的数目
1.54 youngs/s, 16246.04 non-youngs/s -- 上述两个值每秒的速率
Pages read 83934649301, created 4135172, written 103030852 --读操作的页面数目,在缓冲区中创建但是没有读取的页面数目,写操作的页面数目
984.40 reads/s, 0.17 creates/s, 1.15 writes/s -- 上述值美妙的速率
Buffer pool hit rate 972 / 1000, young-making rate 0 / 1000 not 478 / 1000 --读取到的页面数与获得的缓冲池页面的比例,变为新页面的页面数与获得缓冲池页面的比例,没有变为新页面的页面数与获得缓冲池页面的比例
Pages read ahead 913.79/s, evicted without access 5.60/s, Random read ahead 0.00/s --预读的速率与不通过访问剔除的预读页面的个数
LRU len7052, unzip_LRU len0 --LRU列表的长度,unzip_LRU列表的长度
I/O sum[4121]:cur[0], unzip sum[0]:cur[0--IO操作的次数:当前间隔的IO
--------------
ROW OPERATIONS   --行操作
--------------
0 queries inside InnoDB0 queries in queue --当前有多少个正在执行的查询,在innodb_thread_concurrency队列中的查询个数
0 read views open inside InnoDB --只读视图的数量
Process ID=1543Main thread ID=140593683990272, state: sleeping --线程id以及状态
Number of rows inserted 56092883updated 133093048, deleted 40729879read 477150639699 --从innodb启动后,插入、更新、删除、读取的行数
0.19 inserts/s, 7.73 updates/s, 0.00 deletes/s, 138100.85 reads/s -- 速率


-- 展示Innodb的互斥体信息
show engine innodb mutex;

Type   Name                        Status
InnoDB rwlock: dict0dict.cc:2782    waits=4
InnoDB rwlock: dict0dict.cc:1228    waits=80
InnoDB rwlock: log0log.cc:846      waits=75
InnoDB sum rwlock: buf0buf.cc:1460  waits=11

-- name列显示了创建互斥体的源文件和行号
-- status列显示了互斥体在操作系统上的等待次数

show status

通过查看日志文件
show status like 'innodb%log%'

Variable_name              Value
Innodb_log_waits             0     日志文件太小时,操作必须等待日志刷新的等待时间计数器,该值如果长期大于0,可以适当增加日志文件大小
Innodb_log_write_requests   4539    日志写入请求的数量
Innodb_log_writes            22     数据被写入日志的次数
Innodb_os_log_fsyncs        1020   操作系统文件同步的数量(fsync()方法调用)
Innodb_os_log_pending_fsyncs 0     阻塞的文件同步请求的数量,如果该值开始增长并长期大于0,需要检查磁盘访问问题
Innodb_os_log_pending_writes 0     阻塞的日志写请求的次数,如果该值开始增长并长期大于0,需要检查磁盘访问问题
Innodb_os_log_written      2855424  写入日志中的字节总量
Innodb_available_undo_logs 128
缓冲池信息

缓冲池是Innodb缓存频繁访问数据的地方,对缓冲池内数据的任何更新也会被缓存

-- 可以查看存储引擎的统计信息,其中包含有缓冲池的信息
show engine innodb status;

截取出缓冲池的信息来进行分析
----------------------
BUFFER POOL AND MEMORY
----------------------
Total large memory allocated 137428992
Dictionary memory allocated 223164
Buffer pool size   8191
Free buffers       7374   空的且可用于缓冲数据的缓冲段个数
Database pages     809   
Old database pages 299
Modified db pages  0   发生变化的页数
Pending reads      0   等待中的读请求个数
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 0not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 503, created 306, written 2534
0.00 reads/s, 0.00 creates/s, 0.00 writes/s
No buffer pool page gets since the last printout
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len809, unzip_LRU len0
I/O sum[0]:cur[0], unzip sum[0]:cur[0]

在查看一下缓冲区相关的变量

show status like 'innodb%buf%'


Variable_name                      Value
Innodb_buffer_pool_pages_data        809    含有数据的页数,包括不变和改变的页
Innodb_buffer_pool_bytes_data      13254656 含有数据的字节数
Innodb_buffer_pool_pages_dirty       0      改变的字节数
Innodb_buffer_pool_bytes_dirty       0      改变的页的数目
Innodb_buffer_pool_pages_flushed    2525    缓冲池页面被刷新的次数
Innodb_buffer_pool_pages_free        7374    空页面的数目
Innodb_buffer_pool_pages_misc         8      用于管理工作的页数,公式为'Innodb_buffer_pool_pages_total-Innodb_buffer_pool_pages_free-Innodb_buffer_pool_pages_data'
Innodb_buffer_pool_pages_total      8191    缓冲池中的总页数
Innodb_buffer_pool_read_ahead_rnd     0      扫描大块数据时发生随机读头的数量
Innodb_buffer_pool_read_ahead         0      
Innodb_buffer_pool_read_ahead_evicted 0
Innodb_buffer_pool_read_requests   107632   逻辑读请求的次数
Innodb_buffer_pool_reads             504    直接从磁盘中逻辑读取的次数(没有从缓冲池中读)
Innodb_buffer_pool_wait_free          0     如果缓冲池繁忙且没有空页,innodb需要等待页面刷新,该值表示等待次数,若始终大于0,可适当增加缓冲池大小
Innodb_buffer_pool_write_requests    47403   写入innodb缓冲池的次数
线程和连接统计信息

使用show status like '变量'来查询,这些变量用来跟踪尝试的连接、退出的连接、网络流量和线程统计

  • Connections
  • Max_used_connections
  • Threads_connected
  • Aborted_clients
  • Aborted_connects 如果不为0,表示有人尝试连接失败
  • Bytes_received
  • Bytes_sent
  • Slow_launch_threads
  • Threads_cached
  • Threads_created
  • Threads_running
二进制日志状态
  • Binlog_cache_use和Binlog_cache_disk_use表示在二进制日志缓存中有多少事务被存储过,以及多少事务因为超过二进制日志缓存而被存储到一个临时文件中
  • Binlog_stmt_cache_use和Binlog_stmt_cache_disk_use表示非事务语句对应的度量值
命令计数器

Com_*变量统计了每种类型的SQL发起的次数

临时文件和临时表

通过Create_tmp%来查看隐式临时文件和临时表的统计

select类型

select_*变量统计select查询的计数器

  • Select_full_join 交叉连接或并没有条件匹配表中行的连接的数目,如果存在,需要检查sql语句
  • Select_full_range_join 使用在表t1中的一个值来从表t2中通过参考索引的区间内获取行所做的连接数,比Select_scan开销大些
  • Select_range 扫描表的一个索引区间的连接数目
  • Select_range_check 在表t2中重新评估表t1中的每一行的索引是否开销最小所做的连接数,意味着表t2中对该连接而言并没有使用索引,这种查询应该避免,开销很大
  • Select_scan 扫描整张表的连接数目
排序
  • Sort_merge_passes 依赖于sort_buffer_size服务器变量,sort_buffer_size来容纳排序的行块,当完成排序后,会将这些排序后的行合并到结果集中,此时就会增加Sort_merge_passes值
  • Sort_scan和Sort_range 当mysql从文件排序结果中读取已经排好序的行并返回给客户端会导致这两个变量的增长,如果是当Select_scan增加时Sort_scan增加;如果是Select_range增加时Sort_range增加

information_schema数据库中关于innodb的表

information_schema数据库中有几个对于innodb的特殊表,可以用于监控压缩、事务和锁

  • INNODB_CMP表 显示压缩表的详细信息和统计信息
  • INNODB_CMP_RESET表 与INNODB_CMP信息相同,但是会在查询表时将重置统计信息,可以定期跟踪统计信息
  • INNODB_CMPMEM表 显示在缓冲池中使用压缩的详细信息和统计信息
  • INNODB_CMPMEM_RESET表 与INNODB_CMPMEM信息相同,但是会在查询表时将重置统计信息,可以定期跟踪统计信息
  • INNODB_TRX表 显示所有事务的详细信息和统计信息,包括事务状态和当前正在运行的查询信息
  • INNODB_LOCKS表 显示事务请求的锁的详细信息和统计信息,描述每个锁的状态、模式、类型等信息
  • INNODB_LOCK_WAITS表 显示被阻塞的事务请求的锁的详细信息和统计信息,描述每个锁的状态、模式、类型和阻塞事务

https://zhhll.icu/2021/数据库/关系型数据库/MySQL/进阶/29.Innodb监控/

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/680452.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MogaNet实战:使用MogaNet实现图像分类任务(一)

文章目录 摘要安装包安装timm 数据增强Cutout和MixupEMA项目结构计算mean和std生成数据集 摘要 论文&#xff1a;https://arxiv.org/pdf/2211.03295.pdf 作者多阶博弈论交互这一全新视角探索了现代卷积神经网络的表示能力。这种交互反映了不同尺度上下文中变量间的相互作用效…

C语言函数指针实现函数参数化

之前学习了基本的函数指针;函数指针有多种用途;下面看一下函数参数化; 函数参数化是指通过函数指针将函数的某些行为参数化。这样可以在调用函数时动态地指定函数的行为。 新建一个单文档工程;下述增加的函数声明加到视类cpp文件的头部,函数体加到视类cpp文件的尾部,在…

时域和离散域的重要转换器

自然界的模拟信号都是连续信号&#xff0c;也就是我们常说的时域信号&#xff0c;而我们的计算机只能处理离线的数字量信号&#xff0c;但是我们的闭环控制系统都是由离散域和时域所组成的&#xff0c;这里的离散域包括我们的计算机微控制器&#xff0c;时域包括我们的被控对象…

2024.2.3 作业

1、实现单向循环链表的头插头删尾插尾删 #include<stdio.h> #include<string.h> #include<stdlib.h> typedef int datatype; typedef struct node {//数据域int data;//指针域struct node *next; }*Linklist; Linklist create() {Linklist s(Linklist)mallo…

linux应用 进程间通信之信号量(POSIX)

1、前言 1.1 定义 POSIX信号量是一种用于同步进程之间对共享资源访问的机制。它允许进程在访问共享资源之前进行互斥和同步操作&#xff0c;以确保数据的一致性和正确性。POSIX信号量通常由一个整数值表示&#xff0c;可以进行原子增减操作&#xff0c;以及等待和通知操作。 …

【Python网络编程之DHCP服务器】

&#x1f680; 作者 &#xff1a;“码上有前” &#x1f680; 文章简介 &#xff1a;Python开发技术 &#x1f680; 欢迎小伙伴们 点赞&#x1f44d;、收藏⭐、留言&#x1f4ac; Python网络编程之DHCP服务器 代码见资源&#xff0c;效果图如下一、实验要求二、协议原理2.1 D…

线性时间非比较类排序之计数排序

计数排序 计数排序由 HaroldH.Seward 于1954年提出&#xff0c;它是一种非基于比较的排序算法&#xff0c;通过辅助数组来确定各元素的最终位置。因为在排序过程中不存在元素之间的比较和交换操作&#xff0c;所以当待排序数组为整数且数组内数据的范围较小时&#xff0c;其优…

计算x的平方根x含负数和复数cmath.sqrt(x)

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 计算x的平方根 x含负数和复数 cmath.sqrt(x) cmath.sqrt(-4)输出的结果是&#xff1f; import cmath import math a 4 print("【显示】a ",a) print("【执行】math.sqrt(a)&…

有状态DHCPv6快速模式配置及EUI-64介绍

正文共&#xff1a;1024 字 15 图&#xff0c;预估阅读时间&#xff1a;3 分钟 我们现在已经熟悉了IPv6的地址架构&#xff08;IPv6地址架构一本通&#xff09;&#xff0c;掌握了IPv6地址的手工配置方式&#xff08;IPv6从入门到精通&#xff09;和DHCPv6有状态地址配置&#…

openssl3.2 - osslsigncode工程的学习

文章目录 openssl3.2 - osslsigncode工程的学习概述笔记工程库地址工程的编译osslsigncodeM工程文件列表osslsigncodeM工程搭建细节原始工程实现的改动自己封装的包含openssl和curl的实现osslsigncodeM工程命令行的用法备注 - VS2019调试环境备注 - 如果要单步openssl的API学学…

第六篇:MySQL图形化管理工具

经过前五篇的学习&#xff0c;对于数据库这门技术的理解&#xff0c;我们已经在心中建立了一个城堡大致的雏形&#xff0c;通过命令行窗口&#xff08;cmd&#xff09;快速上手了【SQL语法-DDL-数据定义语言】等相关命令 道阻且长&#xff0c;数据库技术这一宝藏中还有数不清的…

人脸追踪案例及机器学习认识

1.人脸追踪机器人初制 用程序控制舵机运动的方法与机械臂项目完全相同。 由于摄像头的安装方式为上下倒转安装&#xff0c;我们在编写程序读取图像时需使用 flip 函数将 图像上下翻转。 现在&#xff0c;只需要使用哈尔特征检测得到人脸在图像中的位置&#xff0c;再指示舵机运…

796. 子矩阵的和

Problem: 796. 子矩阵的和 文章目录 思路解题方法复杂度Code 思路 这是一个二维前缀和的问题。二维前缀和的主要思想是预处理出一个二维数组&#xff0c;使得每个位置(i, j)上的值表示原数组中从(0, 0)到(i, j)形成的子矩阵中所有元素的和。这样&#xff0c;对于任意的子矩阵(x…

MySQL数据库应用实验报告——实验1 表结构创建

实验1 表结构创建 创建用于大学管理的高校管理数据库&#xff0c;数据库名为GXGL&#xff0c;包含学生的信息&#xff0c;教学单位信 息、专业信息&#xff0c;教职工信息、课程的相关信息以及学生选课信息。数据库GXGL包含下列 六个表: (1) Students: 学生信息表 (2) Depar…

N1CTF奖品一个月的ZoomEye账户使用与子域名收集(网络渗透测)

首页 - 网络空间测绘,网络安全,漏洞分析,动态测绘,钟馗之眼,时空测绘,赛博测绘 - ZoomEye("钟馗之眼")网络空间搜索引擎https://www.zoomeye.org/ZoomEye - Cyberspace Search Enginehttps://www.zoomeye.org/aboutZoomEye&#xff08;“钟馗之眼”&#xff09;是知道…

幻兽帕鲁游戏官方更新了版本,联机时提示版本不适用,无法加入,怎么办?

如果你在登录游戏的时候提示&#xff1a;您正在尝试加入的比赛正在运行不兼容的游戏版本。请尝试升级游戏版本。此时就说明你需要更新部署在服务器内的幻兽帕鲁了。 1、如果你使用幻兽帕鲁应用模板部署游戏&#xff0c;那么可以选择使用游戏配置面板一键更新。 2、如果你使用一…

Day46 300最长递增子序列 674最长连续递增子序列 718最长重复子数组 1143最长公共子序列

300 最长递增子序列 给你一个整数数组 nums &#xff0c;找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列&#xff0c;删除&#xff08;或不删除&#xff09;数组中的元素而不改变其余元素的顺序。例如&#xff0c;[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序…

《UE5_C++多人TPS完整教程》学习笔记7 ——《P8 为项目配置 Steam(Configuring A Project for Steam)》

本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P8 为项目配置 Steam&#xff08;Configuring A Project for Steam&#xff09;》 的学习笔记&#xff0c;该系列教学视频为 Udemy 课程 《Unreal Engine 5 C Multiplayer Shooter》 的中文字幕翻译版&#xff0c;UP主&…

基于设计模式,实现分布式锁的资源管理

org.redisson.api.RLock&#xff0c;是目前较为常见的分部署锁实现方式。我们的目的是实现自动管理锁的获取和释放。 但遗憾的是&#xff0c;RLock并不实现AutoCloseable接口&#xff0c;因此不能直接用在try-with-resources结构中。不过&#xff0c;我们可以通过创建一个包装类…

【RISC-V DSP设计】基于CEVA DSP架构的指令集分析(一)-总体介绍

目录 一、引言 二、CEVA-BX1™ DSP Library 概述 三、CEVA-BX1™ DSP Library 功能与特点 四、CEVA-BX1™ DSP Library 优势 今天开始我们继续对CEVA DSP的架构和指令集进行分析&#xff0c;基于对CEVA DSP的分析和了解&#xff0c;后续可以进行基于RISC-V内核架构的DSP指令…