maskmoo

    1. 个人信息无误,确认可以完成阅读分享计划
    2. Jacktang 发表于 2024-7-13 09:23 mingw32安装看着挺麻烦的
      1下载工具链+2解压+3配置环境变量
    3. 吾妻思萌 发表于 2024-7-1 07:10 异构是个啥啊?没接触过~
      异构是不同架构的核心组成的Soc。 比如Contex-A55和 Contex-M33 ,如果要是两个A55就是同构了
    4. wangerxian 发表于 2024-6-30 11:49 异构核之间的通信,速率能达到多快呀?通信最好用什么样的形式嘞
      一般都是共享内存的方式,后面测试一下
    5. lugl4313820 发表于 2024-6-22 22:33 大佬,你一出手,果然是惊艳呀,他应该支持HDMI吧,那样显示器是不是便宜一点?
      不支持HDMI
    6. #AI挑战营终点站#RV1106模型部署 2/4001 嵌入式系统 2024-06-10
      内容补充 https://bbs.eeworld.com.cn/forum ... 84439&page=1&extra=
    7. 测评入围名单: 正点原子i.MX93开发板 6/95 EEWORLD颁奖专区 2024-06-04
      个人信息无误,确认可以完成测评分享计划
    8. 完成打卡 https://bbs.eeworld.com.cn/forum.php?mod=viewthread&tid=1283456&page=1&extra=
    9. 本帖最后由 maskmoo 于 2024-5-9 16:03 编辑 个人信息已确认,领取板卡,可继续完成&分享挑战营第二站和第三站任务。  
    10. qiao--- 发表于 2024-4-30 00:45 兄弟这个是要转化mnist的模型,不是yolo
      yolo都有了,mnist还会远吗
    11. 本帖最后由 maskmoo 于 2024-4-27 14:17 编辑 ONNX模型是一种跨框架的通用格式,旨在促进不同深度学习框架和工具之间的模型兼容性和可移植性。而RKNN模型是专为Rockchip硬件平台优化的模型格式,目的是提高Rockchip芯片上的推理效率。   #AI挑战营第二站# 基于RV1106的ONNX到RKNN模型转换实践 补充内容 (2024-5-30 20:12): https://bbs.eeworld.com.cn/forum ... 1&extra=#pid3322061 补充内容 (2024-5-30 20:13): Ubuntu平台重新训练
    12. y909334873 发表于 2024-4-16 10:49 不清楚,现在还是不行,也重新拉了一下单独看一下软件安装都正常版本也没有可更新版本了。通过这个拉的库 ...
      应该是缺什么依赖,我这边用的是笨叔提供的虚拟机镜像。
    13. 本帖最后由 maskmoo 于 2024-4-15 22:36 编辑
      y909334873 发表于 2024-4-15 15:41   ./run_debian_arm64.sh build_kernel,有没有遇到过这个报错说是不支持-fpatchable-function-entry= ...
      没有遇到,默认环境也会有问题吗  
    14. #AI挑战营第一站# PyTorch实现MNIST手写数字识别 - 嵌入式系统 - 电子工程世界-论坛 (eeworld.com.cn) 预期应用:部署手写数字识别工程,完成基于摄像头的手写数字拍照识别功能
    15. 本帖最后由 maskmoo 于 2024-4-14 15:15 编辑 模型训练的本质是通过给定的数据和标签,通过机器学习算法(例如神经网络)来调整模型的参数,使其能够从数据中学习到某种模式或规律。在训练过程中,模型会反复地使用数据来进行预测,并根据预测结果和真实标签之间的差异(即损失)来调整参数,以使模型在未见过的数据上具有更好的泛化能力。训练的最终结果是得到一个经过优化的模型,可以用于对新数据进行预测或分类。 PyTorch是一个开源的机器学习框架,它提供了丰富的工具和接口,用于构建和训练深度学习模型。PyTorch支持多种操作系统,包括Linux、Windows和macOS。 #AI挑战营第一站# PyTorch实现MNIST手写数字识别 - 嵌入式系统 - 电子工程世界-论坛 (eeworld.com.cn)
    16. 本帖最后由 maskmoo 于 2024-4-13 23:15 编辑   1 在ARM64架构中,栈是向下增长的,所以main()函数在栈底,而func2()函数在栈顶。所以在这个调用关系中,SP指向func2()函数的栈顶,FP指向func1()函数的栈顶。     2 在ARM64架构中,子函数的栈空间的FP指向前一个函数的栈顶,即上一个函数的FP所指向的位置。 3 在ARM64架构的calltrace日志中,可以通过以下步骤推导出函数的名称: 首先,找到日志中的调用栈信息,通常以一系列十六进制地址的形式呈现。 根据ARM64的调用约定,通常会将LR(Link Register)保存着调用下一个函数的返回地址。 通过反汇编或符号表等方式,将LR指向的地址解析为函数名称,这样就可以确定调用的函数。
    17. Kdump的工作原理简述: Kdump是基于kexec的内核崩溃转储机制,在系统崩溃(比如内核panic)时捕获系统的内存镜像。 系统运行的正常内核,被称为"第一知内核"。在系统初始化时,会预留一部分内存用于第二阶段使用。同时需要配置和启动kdump服务,这涉及指定转储文件的位置和大小。当系统遇到致命错误而崩溃时,内核会启动一个精简的第二阶段内核(也称为"崩溃内核"或"捕获内核"),通常从预留的内存中加载。这个"崩溃内核"接管系统,然后收集并保存第一阶段内核的内存镜像,保存到文件系统上的一个文件里。这个内存镜像对于后续分析系统崩溃原因非常有用。 在x86_64架构里函数参数是如何传递的: 在x86_64架构(也常写作x64或AMD64)中,函数参数传递调用约定最常见的是System V AMD64 ABI。根据这一约定,函数的前六个整数或指针参数通过寄存器传递,顺序依次是:RDI, RSI, RDX, RCX, R8, R9。超过这六个参数的,则通过函数调用的栈来传递。浮点数或是SIMD类型参数(如float, double, __m128等)通过XMM寄存器传递,前八个参数使用XMM0到XMM7。剩余的通过栈传递。 函数栈的布局图(main()→func1()→func2()): 在x86_64架构的函数栈中,栈是向下增长的(即向低地址增长)。简化示意如下(假设每一层函数都至少有一些局部变量和参数)     在实际应用中每个函数栈帧将包括函数返回地址、可能的参数传递(如果参数多于六个)、局部变量、以及调用的子函数所必需保存的任何寄存器值(调用者保存寄存器)
    18. 发生硬件中断后,ARM64处理器做了哪些事情?当硬件中断发生时,ARM64处理器会暂停当前正在执行的指令,并跳转到预先定义好的异常处理函数中,在中断服务函数中,处理器会执行一系列操作,包括保存当前的上下文(寄存器状态等),以便在处理完中断后能够恢复执行先前的程序。 硬件中断号和Linux内核的IRQ号映射:硬件中断号和Linux内核的IRQ号之间的映射通常在平台特定的代码中定义。这种映射关系可能在设备树(Device Tree)中指定,在Linux内核启动时,会读取这些映射关系并建立相应的数据结构,以便在发生硬件中断时能够正确地识别和处理。 Linux内核对硬件中断的响应和处理:当硬件中断发生时,处理器会跳转到与该中断对应的中断服务函数中。在Linux内核中,每个中断都有一个对应的中断处理函数(IRQ Handler)。中断处理函数会执行与该中断相关的操作,包括识别中断来源。执行特定的设备操作,比如读取数据或发送信号更新相应的数据结构,比如维护一个队列以存储接收到的数据。唤醒等待中的进程或线程,以便它们可以处理接收到的数据。处理完中断后,处理器会恢复之前保存的上下文,并继续执行先前的程序
    19. 在 ARM64 处理器中,独占访问内存通常是通过使用原子操作的方式来实现的。 atomic_cmpxchg是原子比较和交换操作,用于检查某个内存位置的值是否与预期值相等,如果相等,则将新值写入该内存位置;如果不相等,则不做任何操作。atomic_xchg原子交换操作,用于将新值写入指定内存位置,并返回该位置之前的值。 在 ARM64 中,CAS(Compare and Swap)指令是处理并发编程中常用的原子指令之一。CAS 指令通常由加载-获取和存储-释放指令组成,CAS指令的组合加载-获取和存储-释放指令能够确保在并发环境下实现原子性操作,减少竞争条件和提高线程安全性。
    20. 个人信息无误,确认可以完成阅读计划和打卡任务

最近访客

< 1/4 >

统计信息

已有94人来访过

  • 芯积分:454
  • 好友:--
  • 主题:31
  • 回复:35

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言