积分充值
 首页
前端开发
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文库
  • 综合
  • 文档
  • 文章

无数据

分类

全部后端开发(17)C++(16)系统运维(2)DevOps(2)数据库(1)MySQL(1)Rust(1)

语言

全部中文(简体)(19)中文(简体)(1)

格式

全部PPT文档 PPT(20)
 
本次搜索耗时 0.034 秒,为您找到相关结果约 20 个.
  • 全部
  • 后端开发
  • C++
  • 系统运维
  • DevOps
  • 数据库
  • MySQL
  • Rust
  • 全部
  • 中文(简体)
  • 中文(简体)
  • 全部
  • PPT文档 PPT
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • ppt文档 C++高性能并行编程与优化 - 课件 - 15 C++ 系列课:字符与字符串

    针,如果让首地址指针向前移动 n 位,那就实现删除前 n 个字符的效果,而不用实际修改数组本身(更高效)。 C 语言转义符 • 常见的转义符: • ‘\n’ 换行符:另起一行(光标移到下一行行首) • ‘\r’ 回车符:光标移到行首(覆盖原来的字符) • ‘\t’ 缩进符:光标横坐标对齐到 8 的整数倍 • ‘\b’ 退格符:光标左移,删除上个字符 • ‘\\’ 反斜杠:表示这个是真的 \ ,不是转义符 不等价。 • ‘0’ 相当于他的 ASCII 码 48 。 • 而 ‘ \0’ 就是整数 0 。 C 语言转义符 • 常见的转义符: • ‘\n’ 换行符:另起一行(光标移到下一行行首) • ‘\r’ 回车符:光标移到行首(覆盖原来的字符) • ‘\t’ 缩进符:光标横坐标对齐到 8 的整数倍 • ‘\b’ 退格符:光标左移,删除上个字符 • ‘\\’ 反斜杠:表示这个是真的 \ ,不是转义符 不等价。 • ‘0’ 相当于他的 ASCII 码 48 。 • 而 ‘ \0’ 就是整数 0 。 C 语言转义符 • 常见的转义符: • ‘\n’ 换行符:另起一行(光标移到下一行行首) • ‘\r’ 回车符:光标移到行首(覆盖原来的字符) • ‘\t’ 缩进符:光标横坐标对齐到 8 的整数倍 • ‘\b’ 退格符:光标左移,删除上个字符 • ‘\\’ 反斜杠:表示这个是真的 \ ,不是转义符
    0 码力 | 162 页 | 40.20 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 16 现代 CMake 模块化项目管理指南

    Studio 。这样以后你每次构建任 何项目, find_package 都能自动找到这个路径的 Qt5 包了。 • (3) 单项目有效。直接在你自己项目的 CMakeLists.txt 最开头写一行(注意要加引号): • set(Qt5_DIR ”D:/Qt5.12.1/msvc2017/lib/cmake/Qt5”) # 一定要加在最前面! 举例, Linux 系统, Qt5 • 例如我把 ,然后重启终端。这样以后你每次构建任何 项目, find_package 都能自动找到这个路径的 Qt5 包了。 • (3) 单项目有效。直接在你自己项目的 CMakeLists.txt 最开头写一行: • set(Qt5_DIR ”/opt/Qt5.12.1/lib/cmake/Qt5”) # 一定要加在最前面! 三种方案利弊分析 • 单次有效(通过命令行)最安全,小彭老师高度推荐。 exe 在运行时就会找不到 dll 。 • 为了符合 Linux 分离 bin 和 lib 的组织格式,又要伺候 Windows 的沙雕同目录规则,我们通 常把 dll 动态库文件视为“可执行文件”和 exe 一起放到 bin 目录,而静态库则没有运行时必须 同目录的限制,所以可以照常放到 lib 目录。 (他真的我哭死) 科普:类似 Qt 这种亲 Unix 软件,在 Linux 下的目录组织格式
    0 码力 | 56 页 | 6.87 MB | 1 年前
    3
  • ppt文档 Zadig 产品使用手册

    效调试、消除手工操作、精准快 速迭代、研发生产力 / 幸福感提 升 自助运行、系统化管理、自动化 程度高、测试有效性提升、质量 有保障、横向赋能、技能提升 随时调用工程基线提供的能力、 产品视角开发交付、团队高效协 同、稳定迭代 产研数字化过程数据透明、关键 指标易抽取、有能力合理调动资 源、随时决策响应客户需求 碎片化 研 发模 式 产研全流程拉通需求到上线所需的代码、服务、配置和数据的一致性交付 Jira 持续安全 (Continuous Security) 软件研发核心工程实践:交付工程 CI/CD 开发者实践 软件研发核心工程实践:全流程质量工程实践 - 持续测试 CT/ 持续安全 CS 协 同 特 点 : • 流 程 可 定 义 • 工 具 可 扩 展 • 能 力 可 编 排 • 价 值 可 感 知 面 向 角 色 : • P O / T O • 开 发 • 测 试 • 运 2 0 2 2 年 度 3 6 氪 「 新 经 济 之 王 」 基 础 软 件 赛 道 的 “ 年 度 企 业 ” , 2 0 2 2 年 度 G A D I 汽 车 新 智 造 创 新 行 业 峰 会 的 “ 最 佳 数 字 化 服 务 商 企 业 ” 。 经 过 几 年 的 快 速 发 展 , Z a d i g 正 在 成 为 产 业 数 字 化 时 代 软 件 交 付 领 域
    0 码力 | 52 页 | 22.95 MB | 1 年前
    3
  • ppt文档 Zadig 面向开发者的云原生 DevOps 平台

    Zadig 核心能 力 • 无需打包镜像,即可一键热部署到自测 环境 • 与 Zadig 基准环境交互,完成自测、 联调验证 云原生 IDE 插件( vscode ) 执 行 企 业 合 规 S O P 流 程 , 灰 度 蓝 绿 部 署 策 略 , 完 成 生 产 环 境 发 布 最 后 一 公 里 特色模块(一) – 发布管理 多服务编排升级 配置变更 生产观测 MioTech 、星云有客、药师帮 大规模微服务环境治理 支持多分支、多业务间协作,消除环境不稳 定和不够用的阻力,高效率自动化验证质量 典型客户: TT 语音、飞书、钛动、闪电出 行 传统行业研发数字化转型 同步实现研发的数字化转型和 DevOps 落地 典型客户:极氪汽车、老百姓大药 房、 iMile 、思创(广州公交) 1. 维护大量复杂的脚本 2. 在 Rancher 用 Kubectl 操作,权限不可控,风险大。 对于新上项目,面对不同的使用场景,需要创建多 条 Jenkins Job ,配置繁琐,维护负担重。 与 传 统 的 业 务 研 发 不 同 , 电 动 汽 车 领 域 呈 现 新 的 软 件 产 品 交 付 形 态 , 交 付 场 景 复 杂 多 变 。 因 为 工 程 化 的 需 求 不 一 致 , 所 以 很 难 给 研 发 提 供
    0 码力 | 59 页 | 81.43 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 06 TBB 开启的并行编程之旅

    运用多线程的方式和动机,一般分为两种。 • 并发:单核处理器,操作系统通过时间片调 度算法,轮换着执行着不同的线程,看起来 就好像是同时运行一样,其实每一时刻只有 一个线程在运行。目的:异步地处理多个不 同的任务,避免同步造成的阻塞。 • 并行:多核处理器,每个处理器执行一个线 程,真正的同时运行。目的:将一个任务分 派到多个核上,从而更快完成任务。 举个例子 • 并发:某互联网公司购置了一台单核处理 ,需要做大量数学运算,因此瓶颈在 ALU 。 • 这里卖个关子,欲知后事如何,请待下集揭晓! 更专业的性能测试框架: Google benchmark • 手动计算时间差有点太硬核了,而且只运 行一次的结果可能不准确,最好是多次运 行取平均值才行。 • 因此可以利用谷歌提供的这个框架。 • 只需将你要测试的代码放在他的 • for (auto _: bm) • 里面即可。他会自动决定要重复多少次, 保证结果是准确的,同时不浪费太多时间 因此,最好不是按照图像大小均匀等分,而是按照工 作量大小均匀等分。然而工作量大小我们没办法提前 知道……怎么办? • 最简单的办法:只需要让线程数量超过 CPU 核心数量 ,这时操作系统会自动启用时间片轮换调度,轮流执 行每个线程。 • 比如这里分配了 16 个线程,但是只有 4 个处理器核心。 那么就会先执行 1,2,3,4 号线程,一段时间后自动切换 到 5,6,7,8 线程。当一个线程退出时候,系统就不会再
    0 码力 | 116 页 | 15.85 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 11 现代 CMake 进阶指南

    build 目录 • 切换到 build 目录 • 在 build 目录运行 cmake < 源码目录 > 生成 Makefile • 执行本地的构建系统 make 真正开始构建( 4 进程并 行) • 让本地的构建系统执行安装步骤 • 回到源码目录 现代 CMake 提供了更方便的 -B 和 --build 指令,不同平台,统一命 令! • cmake -B build • cmake 是一个空字符串。 因此这里通过 if (NOT CMAKE_BUILD_TYPE) 判断是否为空,如果空 则自动设为 Release 模式。 大多数 CMakeLists.txt 的开头都会有这样三行,为的是让默认的构建类 型为发布模式(高度优化)而不是默认的调试模式(不会优化)。 我们稍后会详细捋一遍类似于 CMAKE_BUILD_TYPE 这样的东西。绝 大多数 CMakeLists.txt cmake_minimum_required 指定最低所需的 CMake 版本 假如你写的 CMakeLists.txt 包含了 3.15 版本才有的特性, 如果用户在老版本上使用,就会出现各种奇怪的错误。 因此最好在第一行加个 cmake_minimum_required(VERSION 3.15) 表示本 CMakeLists.txt 至少需要 CMake 版本 3.15 以上才能运行。 如果用户的 CMake 版本小于
    0 码力 | 166 页 | 6.54 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程

    arr[33] 又是 bank 1 。 区块冲突( bank conflict ) • 然而这种设计有一个问题,那就是如果多个线程同时访问到 了同一个 bank 的话,就需要排队。比如右图,线程 0-3 同 时访问了 bank 0 ,但是同一个 bank 是需要排队,也就是 串行访问的,所以线程 0-3 实际上没有真正并行起来,慢了 4 倍! • 那可能你觉得好像没什么问题,反正一般不会让两个线程访 bank 0 ; threadIdx=(0,1) 的线程 2 会访问 tmp[64] 也位于 bank 0…… 也就是说,同一个 warp 的所有线程都在访问 bank 0 !这导致读取无法并 行,必须串行排队,从而(单看共享内存的效率)会变慢 32 倍。(不过据说最新架构中好像把 bank 数降低到 16 个,也就是 half-warp 了) 故意把二维数组的跨步从 32 调为 33 :解决区块冲突 感兴趣的扣 1 • OpenMP 新特性( parallel for 之外的) • SIMD 指令全解析( mm 开头那堆) • 内存与缓存优化进阶(第七课的延伸) • 二分查找法优化案例(针对缓存行的) • eigen 、 glm 、 vectorclass 等常用库(可能) • CPU 红黑高斯 + 多重网格实战 • 继续锐评因特尔 • 感兴趣的扣 2
    0 码力 | 142 页 | 13.52 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 01 学 C++ 从 CMake 学起

    录中的 .dll 文件,加载到内存中空闲的位置,并且替换相应的“插桩”指向的地址为加载后的 地址,这个过程称为重定向。这样以后函数被调用就会跳转到动态加载的地址去。 • Windows :可执行文件同目录,其次是环境变量 %PATH% • Linux : ELF 格式可执行文件的 RPATH ,其次是 /usr/lib 等 运行时查找 编译时插入 CMake 中的静态库与动态库 • CMake 头文件进阶 - 递归地使用头文件(续) • 但是这样造成一个问题,就是如果多个头文件都引用了 MyClass.h ,那么 MyClass 会被 重复定义两遍: • 解决方案:在头文件前面加上一行: #pragma once • 这样当预处理器第二次读到同一个文件时,就会自动跳过 • 通常头文件都不想被重复导入,因此建议在每个头文件前加上这句话 头文件进阶 - 递归地使用头文件(再续)
    0 码力 | 32 页 | 11.40 MB | 1 年前
    3
  • ppt文档 新一代分布式高性能图数据库的构建 - 沈游人

    AtlasGraph 架构及实现 图技术简介 Takeway “ 世界是复杂关系的总和”—— 一张典型的知识图谱 电话 / 同通讯录 / 绑定同账户 /... Mac 地址 /IP 地址 /wifi... 亲属 / 同事 / 一致行动 人 / 担保同地址 / 同设备登 陆 /... 已签署 / 过期签署 / 意向签署 /... 已签署 / 过期签署 / 意向签署 /... 董监高 速完成传统数据库难以完成的 多度点边关 联 当前图的典型应用场景 路径识别 群体挖掘 节点识别 相似节点 链接预测 连接强度 一致行动人 同事关系 实际控制人 可能认识的人 上下游 同爱好的人 亲属关系 …  人与人、企业与企业、企业与人之间的 复杂、潜在关系推导和挖掘  为已有的分析模型增加“关系特征”维 度 客户贡献度 客户信用分 客户忠诚度 客户欺诈分 客户风险度 01 02 03 将不同的执行阶段推送到对应的存储 引擎,减少网络传输和内存压力 实际执行时,执行器等待流数据,处 理后将数据推送到下一个执行器 切分执行计划,将执行计划划分成不 同的执行阶段 内存缓存结构:加速图数据查询 • 由于图数据的查询通常是 IO 密集型,且访问的数据随机又分散,拥有内存缓存能起到很 好的加速效果 • 要想让内存缓存发挥最大的作用,就要能在有限的内存中存下尽量多的图数据
    0 码力 | 38 页 | 24.68 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 07 深入浅出访存优化

    章:内存带宽 cpu-bound 与 memory-bound • 通常来说,并行只能加速计算的部分,不能加速内存读写的部分 。 • 因此,对 fill 这种没有任何计算量,纯粹只有访存的循环体,并 行没有加速效果。称为内存瓶颈( memory-bound )。 • 而 sine 这种内部需要泰勒展开来计算,每次迭代计算量很大的 循环体,并行才有较好的加速效果。称为计算瓶颈( cpu- bound 常见操作所花费的时间 • 图中加法 (add) 和乘法 (mul) 都指的整数。 • 区别是浮点的乘法和加法基本是一样速度。 • L1/2/3 read 和 Main RAM read 的时间指的是 读一个缓存行( 64 字节)所花费的时间。 • 根据计算: 125/64*4≈8 • 即从主内存读取一次 float 花费 8 个 cycle , 符合小彭老师的经验公式。 • “right” 和“ wrong” 架构中每个条目的存储 64 字节的数据,这个条目 又称之为缓存行( cacheline )。 • 当访问 0x0048~0x0050 这 4 个字节时,实际会导致 0x0040~0x0080 的 64 字节数据整个被读取到缓存中。 • 这就是为什么我们喜欢把数据结构的起始地址和大小对齐到 64 字节,为的是不要浪费缓存行的存储空间。 缓存的工作机制:写 • 缓存中存储的数据结构:
    0 码力 | 147 页 | 18.88 MB | 1 年前
    3
共 20 条
  • 1
  • 2
前往
页
相关搜索词
C++高性性能高性能并行编程优化课件1516Zadig产品使用手册使用手册面向开发开发者原生DevOps平台06110801游人RustCCAtlasGraph07
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩