• 2024-06-24'MMDetection3D'+'waymo-open-dataset-tf-2-6-0'+'pytorc2.3.1+cu121'安装
    安装pytorc2.3.1+cu121步骤1.创建并激活一个conda环境condacreate-nmmdpython=3.8-ycondaactivatemmd步骤2.基于PyTorch官方说明安装PyTorch,例如:pip3installtorchtorchvisiontorchaudio--index-urlhttps://download.pytorch.org/whl/cu121步骤3.验
  • 2024-06-20多处理系统结构
    目录统一内存访问(UMA)多处理器系统结构优点缺点应用场景UMA结构的架构示例解决方案和改进非统一内存访问(NUMA)多处理系统结构概述NUMA的优点NUMA的缺点NUMA系统的工作原理NUMA优化策略结论        现代计算机系统越来越多地采用多处理器结构,这带来了性
  • 2024-06-12给出五种典型的访存模型,并分别简要描述其特点。
    均匀存储访问模型(UMA):物理存储器被所有处理器均匀共享;所有处理器访问任何存储字取相同的时间;每台处理器可带私有高速缓存;外围设备也可以一定形式共享。非均匀存储访问模型(NUMA):被共享的存储器在物理上是分布在所有的处理器中的,其所有本地存储器的集合就组成了全局地址空间;处理
  • 2024-06-09简单工厂模式( Simple Factory Pattern )
    简单工厂模式(SimpleFactoryPattern),在工厂类中对象决定创建出哪一种产品类的实例。这些产品类都实现了相同的接口,或者继承了相同的父类。结构图Factory(工厂角色):它是核心,负责实现创建所有实例的内部逻辑。在工厂类中,提供了一个静态方法,可以直接被外界直接调用,以创建具体产品
  • 2024-06-01NUMA架构的个人理解
    numa架构是并行处理器环境的产物。之前通过卷cpu频率的方式无法满足更高计算性能的情况下,cpu向着多socket多core多socket的方式发展,这种架构设计下,总线发生争用,不再适合并行的需求,于是,出现了这种新的架构设计,每个socket独占一部分内存空间,这样就出现了针对某个socket的本地内存和
  • 2024-05-23linux关闭numa
    以下内容在Centos8操作系统演示1、编辑/etc/default/grub2、在GRUB_CMDLINE_LINUX里添加numa=off3、输入命令grub2-mkconfig-o/boot/grub2/grub.cfg用更改的文件重新生成/boot/grub2/grub.cfg重启生效4、重启后查看cat/proc/cmdline再次确认
  • 2024-05-08使用libvirt配置pci bus的numa亲和性
    前面的一篇文章在qemu中绑定pcibus到numanode-半山随笔-博客园(cnblogs.com)中记录了如何使用qemu命令行来设置pcibus与numa的亲和性。本篇来记录如何使用libvirt来做同样的事。libvirt相较于qemu是一个更高层的工具,在提供便捷性的同时也损失了一点灵活性。就拿设置pcib
  • 2024-05-07使用libvirt绑定numa node
    初学libvirt,感觉还挺方便的。它能够像daemon一样运行一个稳定的VM,相比直接用qemu命令行是方便多了。这里记录一下我如何绑定numanode。不知道能不能直接在创建虚拟机的时候绑定numa,我是在xml中设置的。安装libvirt,略去。在host上创建一个网桥,libvirt以它上网,我这里命名为virbr0
  • 2024-04-29openGauss NUMA-aware分配和亲和性
    NUMA-aware分配和亲和性非统一内存访问(NUMA)是一种计算机内存设计,用于多重处理,其中内存访问时间取决于内存相对于处理器的位置。处理器可以利用NUMA的优势,优先访问本地内存(速度更快),而不是访问非本地内存(这意味着它不会访问另一个处理器的本地内存或处理器之间共享的内存)。MOT内存
  • 2024-04-29在qemu中绑定pci bus到numa node
    在多numanode的物理机中,pcibus常常是连接到其中一个numa上。如此,不同的numa节点访问该pcibus下的设备的访问速度是不同的。基于此常常要将访问该设备的负载绑定到对应的numanode上可以提供性能。对于qemu虚拟机也可以模拟pcibus与numa之间的亲和性。在x86机器中,只有pxb和pxb
  • 2024-04-29openGauss NUMA-aware分配和亲和性
    NUMA-aware分配和亲和性非统一内存访问(NUMA)是一种计算机内存设计,用于多重处理,其中内存访问时间取决于内存相对于处理器的位置。处理器可以利用NUMA的优势,优先访问本地内存(速度更快),而不是访问非本地内存(这意味着它不会访问另一个处理器的本地内存或处理器之间共享的内存)。MOT内存
  • 2024-04-23Linux命令之查找CPU资源利用情况(lscpu和top详解)
    1.lscpu命令:获取CPU架构完整详细信息,例如架构信息,CPU模式,CPU频率,CPU核心数、线程数、缓存大小。在终端输入“lscpu”: 参数详解:【Architecture:x86_64】:架构信息,表示系统的CPU架构为x86_64,表示64位架构;【CPU op-mode(s):32-bit,64-bit】:CPU的运行模式,表示支持32位和64位
  • 2024-04-08P1449 后缀表达式
    P1449后缀表达式题目所谓后缀表达式是指这样的一个表达式:式中不再引用括号,运算符号放在两个运算对象之后,所有计算按运算符号出现的顺序,严格地由左而右新进行(不用考虑运算符的优先级)。本题中运算符仅包含$\texttt{+-*/}$。保证对于$\texttt{/}$运算除数不为0。特别地,其中$
  • 2024-03-30openGauss 鲲鹏NUMA架构优化
    鲲鹏NUMA架构优化可获得性本特性自openGauss1.0.0版本开始引入。特性简介鲲鹏NUMA架构优化,主要面向鲲鹏处理器架构特点、ARMv8指令集等,进行相应的系统优化,涉及到操作系统、软件架构、锁并发、日志、原子操作、Cache访问等一系列的多层次优化,从而大幅提升了openGauss数据库在
  • 2024-03-29每个程序员都应该了解的内存知识(四): NUMA
    NUMA第四章https://lwn.net/Articles/254445/概念NUMA(Non-UniformMemoryAccess,非一致性内存访问)是一种计算机内存设计的架构,用在多处理器的系统中,以增加处理器访问内存的速度。在NUMA架构中,每个处理器或处理器组都有自己的本地内存,并且处理器可以直接访问本地内存以获得更
  • 2023-12-20数据库软硬件选型的思考
    数据库软硬件选型的思考背景最近有多个项目出现过数据库的问题这里想总结语一下遇到的问题.以及可能的软硬件优化方案与思路.暂时还没有进行过系统的测试验证,所以仅是一个思考,后续会慢慢完善.硬件选型截止现在2024年元旦之前.Oracle数据库我认为还是选择Inte
  • 2023-12-09引导时内存管理 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/core-api/boot-time-mm.html#c.memblock_flags"Boottimememorymanagement"(引导时间内存管理)早期系统初始化不能简单地使用“正常”的内存管理,因为它还没有设置。但是仍然需要为各种数据结构分配内存,例如物理页面分配器。一种名为mem
  • 2023-12-06服务器架构的发展
    1背景商业化处理器都致力于单核处理器的发展,通过在芯片上集成更多数目的晶体管,加快运算速度(即主频),从而提升系统性能。2005年,当主频接近4GHz时,Intel和AMD发现,单纯提升主频已无法明显提升系统整体性能。单核处理器利用冗长的运算流水线(即增加每个始终周期同时执行的运
  • 2023-12-04What is NUMA? (翻译 by chatgpt)
    原文:https://www.kernel.org/doc/html/latest/mm/numa.htmlThisquestioncanbeansweredfromacoupleofperspectives:thehardwareviewandtheLinuxsoftwareview.这个问题可以从硬件视角和Linux软件视角来回答。Fromthehardwareperspective,aNUMAsystemisa
  • 2023-11-28NUMA 处理器与进程绑定
    引用:https://harrychen.xyz/2022/05/08/numa-processor-and-cpu-binding/ 无论是打超算比赛还是当高性能计算导论课程的助教时,“绑核”对于大部分人总是一个神秘的词。传说中它拥有让程序变快的神奇魔力,而不会绑核似乎就不是一个合格的HPC使用者。然而在网上又似乎很难搜索到
  • 2023-11-20Linux内核中NUMA内存节点和内存zone
      在现代大型服务器中多个内存节点机器一般都采用NUMA架构,而NUMA架构中不同的内存节点在Linux内核中使用pg_data_t类型(实际是structpglist_data)来表示表示。   Linux又为每个内存节点根据内存地址的高低划分了不同的区域类型如ZONE_DMA、ZONE_DMA32、ZONE_NORMAL,一个
  • 2023-11-07sriov vgpu启动报错问题
    internalerror:qemuunexpectedlyclosedthemonitor:2023-11-07T07:36:39.571260Zqemu-kvm:-numanode,nodeid=0,cpus=0-119,mem=8192:warning:Parameter-numanode,memisdeprecated,use-numanode,memdevinstead#0122023-11-07T07:36:39.585190Zqemu-kvm:-d
  • 2023-10-20大话设计模式之策略模式笔记
    策略模式结构classDiagramclassContext{-Statagestatage+ContextIntegace(Statagestatage)}classStratage{<<abstract>>+algorithmInterface()}classConcreateStratage1{}classConcre
  • 2023-09-09十年后数据库还是不敢拥抱NUMA?
    十年后数据库还是不敢拥抱NUMA?在2010年前后MySQL、PG、Oracle数据库在使用NUMA的时候碰到了性能问题,流传最广的这篇 MySQL–TheMySQL“swapinsanity”problemandtheeffectsoftheNUMAarchitecture 描述了性能问题的原因(文章中把原因找错了)以及解决方案:关闭NUMA。
  • 2023-09-09十年后数据库还是不敢拥抱NUMA?
    十年后数据库还是不敢拥抱NUMA?在2010年前后MySQL、PG、Oracle数据库在使用NUMA的时候碰到了性能问题,流传最广的这篇 MySQL–TheMySQL“swapinsanity”problemandtheeffectsoftheNUMAarchitecture 描述了性能问题的原因(文章中把原因找错了)以及解决方案:关闭NUMA。