当前位置:首页 > 报告详情

数据库内核的降维观测方法:从CPU看数据库——吕海波.pdf

上传人: 茫然 编号:731621 2025-07-14 23页 1.11MB

1、数据库内核的降维观测方法数据库内核的降维观测方法从从CPUCPU看数据库看数据库IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛吕海波吕海波 PG ACED PG ACED 北京大学北京大学 数据库课程企业导师数据库课程企业导师CPUCPU流水线的秘密:流水线的秘密:神秘的PMC与PMU示例数据库示例数据库1 1的改进与不足:的改进与不足:从CPU看程序示例数据库示例数据库2 2的秘密花园的秘密花园使用PMC推导软件架构目录CONTENTSIvorySQL 2025IvorySQL 2025生态大会生态大会暨暨Po

2、stgreSQLPostgreSQL高峰论坛高峰论坛神秘的神秘的 PMC PMC 与与 PMUPMUPMC:Performance Monitoring CounterPMU:Performance Monitoring UnitIvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛PMCPMC的作用:的作用:CPU中内置了上千个计数器,CPU那么小,还要内置这么多计数器,一定有它的意义?它的意义:对程序进行profiling(或画像/侧写/)通过画像,让开发者了解程序在CPU中的运行状况,有针对性的调整、优化程序,以提

3、高程序性能、能效。IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛perfperf 与与 PMCPMCperf stat-ePMC1,PMC2,PMCn-p/t 进/线程IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛CPUCPU中有什么中有什么PMCs PMCs?开始演示,请键入perf list命令perf listIvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论

4、坛高峰论坛PMCPMC的作用:的作用:IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛开始演示:画像perf stat-einstructions:u-t 26896衡量衡量CodingCoding水平:水平:IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛分枝指令数not_taken分枝指令数IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛进程进程 与与

5、线程:线程:进、线程之争是由来已久的话题。1996年Linux创始人林纳斯,为了终止这场况日持久的争论,发了一篇邮件,右图是邮件内容(部分)。之后若干年,操作系统领域进、线程之争逐渐停息,江湖又恢复了往日的宁静。直到TLB(Translation Look-aside Buffer)IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛内存变量a内存变量b共享内存区(如Shared Buffers)VA TagASIDDescOthersKernel Space进程1 User Space进程2User SpaceGlo

6、balTLB(Translation Look-aside Buffer)IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛Kernel Space进程1 User Space线程 1线程 2Global内存变量a内存变量b共享内存区(如Shared Buffers)VA TagASIDDescOthers用用 PMCPMC 推导软件架构:准备测试数据推导软件架构:准备测试数据IvorySQL 2025IvorySQL 2025生态大会生态大会暨暨PostgreSQLPostgreSQL高峰论坛高峰论坛用用 PMCP

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要内容围绕IvorySQL 2025生态大会暨PostgreSQL高峰论坛上关于数据库内核降维观测方法的探讨。关键点如下: 1. **PMC与PMU**:介绍了Performance Monitoring Counter (PMC)和Performance Monitoring Unit (PMU),指出CPU内置大量计数器,用于对程序进行profiling,帮助开发者优化程序性能。 2. **perf工具与PMC**:展示了如何使用perf工具和PMC对程序进行画像,衡量指令执行等。 3. **进程与线程**:讨论了进程与线程的区别和关系,以及它们在操作系统中的影响。 4. **软件架构推导**:通过PMC,对比了不同SQL查询方式的性能差异,探讨了内存访问、缓存缺失对性能的影响。 5. **阶段化与资源池化**:提出一种新颖的开发理念,即将SQL执行过程阶段化,并实现资源池化,以优化数据库操作。 6. **CPU缓存与性能**:分析了CPU缓存(L1, L2, L3)对程序性能的影响。 7. **代码优化**:通过跳转语句和Branch Target Buffer (BTB)的例子,强调了代码优化对性能的重要性。 文章未提供具体的核心数据,主要侧重于方法和理念的阐述。
"PMC神秘功能揭秘" - 如何利用PMC深度优化数据库性能? "CPU内的秘密花园" - 你知道CPU内置计数器有何神奇作用吗? "探索软件架构之谜" - 如何通过PMC推导出高效的软件架构?
客服
商务合作
小程序
服务号
折叠