积分充值
 首页
前端开发
AngularDartElectronFlutterHTML/CSSJavaScriptReactSvelteTypeScriptVue.js构建工具
后端开发
.NetC#C++C语言DenoffmpegGoIdrisJavaJuliaKotlinLeanMakefilenimNode.jsPascalPHPPythonRISC-VRubyRustSwiftUML其它语言区块链开发测试微服务敏捷开发架构设计汇编语言
数据库
Apache DorisApache HBaseCassandraClickHouseFirebirdGreenplumMongoDBMySQLPieCloudDBPostgreSQLRedisSQLSQLiteTiDBVitess数据库中间件数据库工具数据库设计
系统运维
AndroidDevOpshttpdJenkinsLinuxPrometheusTraefikZabbix存储网络与安全
云计算&大数据
Apache APISIXApache FlinkApache KarafApache KyuubiApache OzonedaprDockerHadoopHarborIstioKubernetesOpenShiftPandasrancherRocketMQServerlessService MeshVirtualBoxVMWare云原生CNCF机器学习边缘计算
综合其他
BlenderGIMPKiCadKritaWeblate产品与服务人工智能亿图数据可视化版本控制笔试面试
文库资料
前端
AngularAnt DesignBabelBootstrapChart.jsCSS3EchartsElectronHighchartsHTML/CSSHTML5JavaScriptJerryScriptJestReactSassTypeScriptVue前端工具小程序
后端
.NETApacheC/C++C#CMakeCrystalDartDenoDjangoDubboErlangFastifyFlaskGinGoGoFrameGuzzleIrisJavaJuliaLispLLVMLuaMatplotlibMicronautnimNode.jsPerlPHPPythonQtRPCRubyRustR语言ScalaShellVlangwasmYewZephirZig算法
移动端
AndroidAPP工具FlutterFramework7HarmonyHippyIoniciOSkotlinNativeObject-CPWAReactSwiftuni-appWeex
数据库
ApacheArangoDBCassandraClickHouseCouchDBCrateDBDB2DocumentDBDorisDragonflyDBEdgeDBetcdFirebirdGaussDBGraphGreenPlumHStreamDBHugeGraphimmudbIndexedDBInfluxDBIoTDBKey-ValueKitDBLevelDBM3DBMatrixOneMilvusMongoDBMySQLNavicatNebulaNewSQLNoSQLOceanBaseOpenTSDBOracleOrientDBPostgreSQLPrestoDBQuestDBRedisRocksDBSequoiaDBServerSkytableSQLSQLiteTiDBTiKVTimescaleDBYugabyteDB关系型数据库数据库数据库ORM数据库中间件数据库工具时序数据库
云计算&大数据
ActiveMQAerakiAgentAlluxioAntreaApacheApache APISIXAPISIXBFEBitBookKeeperChaosChoerodonCiliumCloudStackConsulDaprDataEaseDC/OSDockerDrillDruidElasticJobElasticSearchEnvoyErdaFlinkFluentGrafanaHadoopHarborHelmHudiInLongKafkaKnativeKongKubeCubeKubeEdgeKubeflowKubeOperatorKubernetesKubeSphereKubeVelaKumaKylinLibcloudLinkerdLonghornMeiliSearchMeshNacosNATSOKDOpenOpenEBSOpenKruiseOpenPitrixOpenSearchOpenStackOpenTracingOzonePaddlePaddlePolicyPulsarPyTorchRainbondRancherRediSearchScikit-learnServerlessShardingSphereShenYuSparkStormSupersetXuperChainZadig云原生CNCF人工智能区块链数据挖掘机器学习深度学习算法工程边缘计算
UI&美工&设计
BlenderKritaSketchUI设计
网络&系统&运维
AnsibleApacheAWKCeleryCephCI/CDCurveDevOpsGoCDHAProxyIstioJenkinsJumpServerLinuxMacNginxOpenRestyPrometheusServertraefikTrafficUnixWindowsZabbixZipkin安全防护系统内核网络运维监控
综合其它
文章资讯
 上传文档  发布文章  登录账户
IT文库
  • 综合
  • 文档
  • 文章

无数据

分类

全部后端开发(19)C++(17)Rust(2)数据库(1)系统运维(1)MySQL(1)云计算&大数据(1)Kubernetes(1)DevOps(1)

语言

全部中文(简体)(20)中文(简体)(2)

格式

全部PPT文档 PPT(22)
 
本次搜索耗时 0.014 秒,为您找到相关结果约 22 个.
  • 全部
  • 后端开发
  • C++
  • Rust
  • 数据库
  • 系统运维
  • MySQL
  • 云计算&大数据
  • Kubernetes
  • DevOps
  • 全部
  • 中文(简体)
  • 中文(简体)
  • 全部
  • PPT文档 PPT
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • ppt文档 C++高性能并行编程与优化 - 课件 - 01 学 C++ 从 CMake 学起

    a.out 这个文件中,(称为可执行文件)。 • > ./a.out • 之后执行该命令,操作系统会读取刚刚生成的可执行文件,从而执行其中编译成机器码, 调用系统提供的 printf 函数,并在终端显示出 Hello, world 。 厂商 C C++ Fortran GNU gcc g++ gfortran LLVM clang clang++ flang 多文件编译与链接 • 单文件编译虽然方便,但也有如下缺点: 单文件编译虽然方便,但也有如下缺点: 1. 所有的代码都堆在一起,不利于模块化和理解。 2. 工程变大时,编译时间变得很长,改动一个地方就得全部重新编译。 • 因此,我们提出多文件编译的概念,文件之间通过符号声明相互引用。 • > g++ -c hello.cpp -o hello.o • > g++ -c main.cpp -o main.o • 其中使用 -c 选项指定生成临时的对象文件 选项指定生成临时的对象文件 main.o ,之后再根据一系列对象文件进行链接 ,得到最终的 a.out : • > g++ hello.o main.o -o a.out 为什么需要构建系统( Makefile ) • 文件越来越多时,一个个调用 g++ 编译链接会变得很麻烦。 • 于是,发明了 make 这个程序,你只需写出不同文件之间的依赖关系,和生成各文件的规则。 • > make a.out •
    0 码力 | 32 页 | 11.40 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 03 现代 C++ 进阶:模板元编程

    编译器就可以自动优化为一个空函数。 因此模板元编程对高性能编程很重要。 • 通常来说,模板的内部实现需要被暴露出来,除非使用特殊的手 段,否则,定义和实现都必须放在头文件里。 • 但也正因如此,如果过度使用模板,会导致生成的二进制文件大 小剧增,编译变得很慢等。 boost 编译慢的原因找到了……因为他们用了大量的模板 。 模板的应用:编译期优化案例 • 在右边这个案例中,我们声明了一个 )的,不能分离声明和定义在另一个文件里。标准库的很多函数如 std::min 也是 constexpr 函数,可以放心大胆在模板尖括号内使用。 模板的难题:移到另一个文件中定义 • 如果我们试着像传统函数那样分离模板函数的声明与实现: • 就会出现 undefined reference 错误: 模板的难题:移到另一个文件中定义(续) • 这是因为编译器对模板的编译是惰性的,即只有当前 .cpp 文件用到了这个模板,该模板 sumto<> 函数的两份声明,从而出错。 • 解决:在看得见 sumto<> 定义的 sumto.cpp 里,增加两个显式编译模板的声明: 一般来说,我会建议模板不要 分离声明和定义,直接写在头 文件里即可。如果分离还要罗 列出所有模板参数的排列组合 ,违背了开 - 闭原则。 模板的惰性:延迟编译 • 要证明模板的惰性,只需看这个例子: • 要是编译器哪怕细看了一眼:字符串怎么可能被写入呢?肯定是会出错的。
    0 码力 | 82 页 | 12.15 MB | 1 年前
    3
  • ppt文档 基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺

    o s X R u s t 使 用 TDengine Rust • OOXML - Excel 解析库 • xlsx2csv - Excel 转 CSV 工具 • Unqlite - 单文件非关系型数据库 • Wisecondor - 生物信息 CNV 分析 • mdsn - A Multi-address DSN(Data Source Name) parser. TDengine Avalibility 2022.12 2023.05 2023.09 Usability Functionality taosX - 集群运维 • 数据库复制 • 全量 / 增量备份 • 数据导入 / 导出 • 数据库迁移 • 异地容灾 taosX - 数据接入 Comming Soon taosX - 流式处理 taosX - Transformer • Parse {"parse":
    0 码力 | 29 页 | 2.26 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 10 从稀疏数据结构到量化数据类型

    载了 operator= 和 operator bool 的 std::_Bit_reference 对象,而且效率很低。 • 如果配合用 decltype 和 auto 的话,他们不会正确推导出 bool ,影响我们正常使用模板元编 程。 • 一般认为 vector 是 C++ 标准库设计上的一个败笔,是为了向前兼容才保持这样不变的 。 • 他们就不应该直接特化 vector glibc ,直接和操作系统打交道。 解决:绕开 glibc ,直接调用操作系统的 mmap 分配 • 那么就要用到 Unix 类操作系统的 mmap 函数,他位于 sys/mman.h 头文件里。 • Windows 可以用 VirtualAllocateEx 之类。 • mmap 出来的起始地址保证是对齐到 4KB 的,读写访问其 中偏移地址时,会按页的粒度自动分配和释放内存,从而满
    0 码力 | 102 页 | 9.50 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 09 CUDA C++ 流体仿真实战

    投影部分:扩大一倍 创建与导出 主函数:创建场景 导出 VDB :调用接口 导出 VDB :分离实现 CMake :使用 CUDA 编译器,链接 OpenVDB 在 Blender 中查看导出的结果 边界条件 边界条件:初始化 边界条件:添加判断边界的版本 边界条件:仅在第一层额外判断边界条件 进一步改进 VDB 导出:支持导出多个网格,并指定名称 进一步改进 VDB 导出: P-IMPL P-IMPL 模式 进一步改进 VDB 导出: F-IMPL 模式 Blender 渲染结果 改进 改进边界条件:外部边界流出而不是反弹,内部边界可以流出速度 Blender 中调整一下材质 Blender 中调整一下材质 改进对流:让烟雾随时间逐渐褪色 改进对流:让烟雾随时间逐渐褪色 改进褪色:不是褪色 density ,而是褪色 temperature 改进褪色:不是褪色 density
    0 码力 | 58 页 | 14.90 MB | 1 年前
    3
  • ppt文档 新一代分布式高性能图数据库的构建 - 沈游人

    REPL 命令行客户端 WebUI 面向分析师,提供图模型定义、数据管理、图查询分析、服务状态监控、用户管理能力 免代码,可视化定义实体、 边,设计图模型。 【亮点】 • 支持模型导入导出 • 拖拽式关系构建 • 丰富的样式配置 • 实时图结构预览 • 用户授权管理 • 中文及显示别名支持 图模型设计 WebUI—— 可视化图探索分析 【亮点】 • K 步邻居查询、属性过滤
    0 码力 | 38 页 | 24.68 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 16 现代 CMake 模块化项目管理指南

    com/263032155 找不到头文 件怎么办呀 CMake Cookbook 小彭老师建议 : ~~-·~·~-·~ -~·-·~·- 第一章:文件 / 目录组织规范 基于 CMake 的 C/C++ 项目,如何优雅地、模块化地组织大量源文件 ? 推荐的目录组织方式 • 目录组织格式: • 项目名 /include/ 项目名 / 模块名 .h • 项目名 /src/ 模块名 .cpp ries( 项目名 PUBLIC include) • 源码文件中写: • #include < 项目名 / 模块名 .h> • 项目名 :: 函数名 (); 完整案例请看源码仓库: https://github.com/parallel101/course/tree/master/16/00 推荐的目录组织方式 • 头文件(项目名 /include/ 项目名 / 模块名 .h )中写: )中写: • #pragma once • namespace 项目名 { • void 函数名 (); • } • 实现文件(项目名 /src/ 模块名 .cpp )中写: • #include < 项目名 / 模块名 .h> • namespace 项目名 { • void 函数名 () { 函数实现 } • } 完整案例请看源码仓库: https://github.com/pa
    0 码力 | 56 页 | 6.87 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 11 现代 CMake 进阶指南

    项目的构建分为两步: • 第一步是 cmake -B build ,称为配置阶段( configure ),这时只检测环境并生成构建规则 • 会在 build 目录下生成本地构建系统能识别的项目文件( Makefile 或是 .sln ) • 第二步是 cmake --build build ,称为构建阶段( build ),这时才实际调用编译器来编译代码 • 在配置阶段可以通过 -D 设置缓存变量。第二次配置时,之前的 现在只需要写一次 CMakeLists.txt ,他会视不同的操作系统,生成不同构建系统的规则文件。 • 那个和操作系统绑定的构建系统( make 、 MSBuild )称为本地构建系统( native buildsystem )。 • 负责从 CMakeLists.txt 生成本地构建系统构建规则文件的,称为生成器( generator )。 -G 选项:指定要用的生成器 • Linux 启动时会把每个文件都检测一遍, 浪费很多时间。特别是有很多文件,但是实 际需要构建的只有一小部分,从而是 I/O Bound 的时候, Ninja 的速度提升就很明 显。 然而某些专利公司的 CUDA toolkit 在 Windows 上只允许用 MSBuild 构建,不能 用 Ninja (怕不是和 Bill Gates 有什么交 易) 第 1 章:添加源文件 一个 .cpp 源文件用于测试
    0 码力 | 166 页 | 6.54 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 04 从汇编角度看编译器优化

    写,即函数链接表。链接器会查找其他 .o 文件中是否定义了 _Z5otheri 这个符号, 如果定义了则把这个 @PLT 替换为他的地 址。 对 PLT 感兴趣?看 https://www.cnblogs.com/pannengzhi/p/2018-04-09-about-got-plt.html 编译器优化: call 变 jmp 多个函数定义在同一个文件中 如果 _Z5otheri 定义在同一个文件中,编 译器会直接调用,没有 译器会直接调用,没有 @PLT 表示未定义 对象。减轻了链接器的负担。 编译器优化:内联化 只有定义在同一个文件的函数可以被内联 !否则编译器看不见函数体里的内容怎么 内联呢? 为了效率我们可以尽量把常用函数定义在 头文件里,然后声明为 static 。这样调用 他们的时候编译器看得到他们的函数体, 从而有机会内联。 内联:当编译器看得到被调用函数( other )实现的时候 ,会直接把函数实现贴到调用他的函数( 给其 他文件,而且 func 也已经内联了 other , 所以编译器干脆不定义 other 了。 inline 关键字?不需要! 编译的结果完全一致? 结论:在现代编译器的高强度优化下,加不加 inline 无所谓 编译器不是傻子,只要他看得见 other 的函数体定义,就会自动内联 内联与否和 inline 没关系,内联与否只取决于是否在同文件,且函数体够小 要性能的,定义在头文件声明为 static
    0 码力 | 108 页 | 9.47 MB | 1 年前
    3
  • ppt文档 谈谈MYSQL那点事

    数据存储方式简单,使用 B+ Tree B+ Tree 进行索引 进行索引 • 使用三个文件定义一个表: 使用三个文件定义一个表: .MYI .MYD .frm .MYI .MYD .frm • 少碎片、支持大文件、能够进行索引压缩 少碎片、支持大文件、能够进行索引压缩 • 二进制层次的文件可以移植 二进制层次的文件可以移植 (Linux (Linux   Windows) Windows) Windows) • 访问速度飞快,是所有 访问速度飞快,是所有 MySQL MySQL 文件引擎中速度最快的 文件引擎中速度最快的 • 不支持一些数据库特性,比如 事务、外键约束等 不支持一些数据库特性,比如 事务、外键约束等 • Table level lock Table level lock ,性能稍差,更适合读取多的操作 ,性能稍差,更适合读取多的操作 InnoDB InnoDB 每个进行一个顺序扫描的线程为其扫描的每 张表分配这个大小的一个缓冲区,可以设置 为 2M 以上 table_cache 64 1024 为所有线程打开表的数量。增加该值能增加 mysqld 要求的文件描述符的数量。 MySQL 对每个唯一打开的表需要 2 个文件描述符。 服务优化 服务优化 MyISAM MyISAM 选项 选项 选项 缺省值 推荐值 说明 key_buffer_size 8M 512M 用来存放索引区块的缓存值
    0 码力 | 38 页 | 2.04 MB | 1 年前
    3
共 22 条
  • 1
  • 2
  • 3
前往
页
相关搜索词
C++高性性能高性能并行编程优化课件0103霍琳2023RustChinaConfRust1009游人RustCCAtlasGraph161104MySQL
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩