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

无数据

分类

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

语言

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

格式

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

    比插一块 16GB 的内存更快,不过价格可能还是翻倍的。 • 系统会自动在两者之间均匀分配内存,保证读写均匀分配 到两个内存上,实现内存的并行读写,这和磁盘 RAID 有 一定相似之处。 验证一下刚刚的 parallel_add 是不是用足了全部带宽 • 刚刚 a 数组的大小是 1024 MB 。 • 因为不光读取了 a ,计算完还写回了 a ,实际搬运 了 2048 MB 的数据。 现象。 手动预取: _mm_prefetch • 对于不得不随机访问很小一块的情况,还可以通过 _mm_prefetch 指令手动预取一个缓存行。 • 这里第一个参数是要预取的地址(最好对齐到缓存 行),第二个参数 _MM_HINT_T0 代表预取数据 到一级缓存, _MM_HINT_T1 代表只取到二级缓 存, _MM_HINT_T2 代表三级缓存; _MM_HINT_NTA 则是预取到非临时缓冲结构中, 写入,他能够绕开缓存,将一个 4 字节的写入操 作,挂起到临时队列,等凑满 64 字节后,直接写 入内存,从而完全避免读的带宽。 • 可惜这货只支持 int 做参数,要用 float 还得转换 一下指针类型, bitcast 一下参数。 stream 的特点:不会读到缓存里 • 因为 _mm_stream_si32 会绕开缓存,直 接把数据写到内存,之后读取的话,反而 需要等待 stream
    0 码力 | 147 页 | 18.88 MB | 1 年前
    3
  • ppt文档 Zadig 产品使用手册

    使用介绍 视频 Demo 演示 ? • 准备环境 • 准备工作流 运维(管理员) • IDE 热部署 • 更新镜像 • 更新配置 • 更新数据 • 日常调试 开发工程师 • 日常测试验证 • 自动化测试 测试工程师 • 升级预发环境 • 升级生产环境 • 变更数据库 发布工程师 核心场景介绍:不同角色工程师基于统一协作平面,操作使用自动化工作流和云原生环境 面向角色 更新日常开发环境及 dev 业务配 置 project-dev-workflow • 构建、配置变更( Apollo/Nacos )、数 据变更、部署、冒烟测试、项目管理任务 变更 测试工程师 更新测试验证环境 project-sit-workflow • 构建、配置变更( Apollo/Nacos )、数 据变更、部署、接口测试 更新集成测试环境 project-auto-sit-workflow 起开发自测子环境 如果采用 Istio + Skywalking 技术栈,通过 Zadig 开启自测模式随时拉起子环境 测试工程师 用于测试手工验证 sit 自主升级环境,选择一个或多个 PR/MR 进行功能需求 的并行验证。 用于测试集成验证 auto-sit 执行自动化 CD 过程 用于验收测试 uat 以此环境作为发布生产环境前的用户验收环节 发布 / 运维工程师 用于生产查看 prod
    0 码力 | 52 页 | 22.95 MB | 1 年前
    3
  • ppt文档 Zadig 面向开发者的云原生 DevOps 平台

    角色: 产品 / 架构 开发 测试 运维 运维 / 开发 技术支持 事件 需求设计 架构设计 拆任务、写代码 代码集成 xN 单元测试验证 xN 代码扫描 xN 自测、联调 xN 集成验证 xN 写测试用例 系统验证 xN 自动化测试 xN 性能测试 xN 安全测试 xN 数据变更 xN 代码变更 xN 配置变更 xN 代码三: 代码编写 | 构建 | 部署 | 测试 | 发布 特点: ● 重复流程自动化 ● 边开发、边验证 ● 服务全生命周期而非只关注代码 ● 每天多次提交提早验证 Zadig 采用「云原生产品级交付」设计理念 数字化产研协同 • 环境 - 统一开发者协作平面 • 工作流 - 统一交付变更通道 • 异构支持 - 统一产研运管理平面 调试自测免打扰:本地 / 子环境免打扰,独立完成验证工作 自助验证更高效:自动化工作流 + 云上环境,高效验证调试 安全发布有信心: 一个平台完成日常 90% 工作,开发自助发布 需求研发总耗时降低 30% 需求迭代周期缩短 1-5 倍 解放开发,专注编码 更多的架构和技术提升 测试 效率和质量难以平衡: • 自动化测试难以开展 • 环境不稳定并行验证效率低 • 测试多苦劳,价值难以体现
    0 码力 | 59 页 | 81.43 MB | 1 年前
    3
  • ppt文档 应用 waPC (rust) 做软件测试工具

    bytes, send /continue back to host • Else send a list of TCP items TCP MITM 例子 • 模拟数据规则 • 自动化测试 • 验证功能 Assertion • 稳定环境 Stable environment • 报告能力(例如 junit) Reporting Basic API testing requirement API Sleep • now websocket standin for wasm • 可用 Javascript 在游览器里面 模拟数据 • 发 RPC 请求 • 可以上传 proto 文档 • 可以验证数据 前段链接 Wasm Mock Server 随机 waPC 注册逻辑 Use wasm without fear 支持以 websocket 代替 wasm 协议 • 不可能为每个 websocket
    0 码力 | 30 页 | 2.50 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 03 现代 C++ 进阶:模板元编程

    template • 是完全等价的,只是个人喜好不同。 模板函数:自动推导参数类型 • 那这样需要手动写 , 用起 来还不如重载方便了? • 别担心, C++ 规定: • 当模板类型参数 T 作为函数参数时,则可 以省略该模板参数。自动根据调用者的参 数判断。 模板函数:特化的重载 • 有时候,一个统一的实现(比如 t * 2 模板函数:默认参数类型 • 但是如果模板类型参数 T 没有出现在函数 的参数中,那么编译器就无法推断,就不 得不手动指定了。 • 但是,可以通过 • template • 表示调用者没有指定时, T 默认为 int 。 模板参数:整数也可以作为参数 • template • 可以声明类型 T 作为模板尖括号里的参数。除了 类型,任意整数也可以作为模板参数: 类型,任意整数也可以作为模板参数: • template • 来声明一个整数 N 作为模板参数。 • 不过模板参数只支持整数类型(包括 enum )。 • 浮点类型、指针类型,不能声明为模板参数。自 定义类型也不可以,比如: • template // 错误! 模板参数:多个模板参数 • int N 和 class T 可以一起使用。
    0 码力 | 82 页 | 12.15 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 13 C++ STL 容器全解之 vector

    侯捷 STL 侯捷 STL vector 容器 vector 容器:构造函数 • vector 的功能是长度可变的数组,他里面的数据 存储在堆上。 • vector 是一个模板类,第一个模板参数是数组里 元素的类型。 • 例如,声明一个元素是 int 类型的动态数组 a : • vector a; vector 容器:构造函数和 size • vector 可以在构造时指定初始长度。 会初始化为空字符串,指针类型会初始化为 nullptr ) • explicit vector(size_t n); vector 容器:构造函数 • 这个显式构造函数还可以指定第二个参数,这样 就可以用 0 以外的值初始化整个数组了。 • 比如要创建 4 个 233 组成的数组就可以写: • vector a(4, 233); • 等价于 • vector vector a; • a.resize(4); • void resize(size_t n); vector 容器: resize • 当然, resize 也有一个接受第二参数的重载 ,他会用这个参数的值填充所有新建的元素。 • vector a(4, 233); • 等价于: • vector a; • a.resize(4, 233); • void
    0 码力 | 90 页 | 4.93 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 02 现代 C++ 入门:RAII 内存管理

    deduction / 编 译期参数推断 当代: C++17 引入常用数值算法 未来: C++20 引入区间( ranges ) https://zhuanlan.zhihu.com/p/350068132 未来: C++20 引入模块( module ) https://zhuanlan.zhihu.com/p/350136757 未来: C++20 允许函数参数为自动推断( auto ) BV1h64y197Fd 自定义构造函数:无参数 自定义构造函数:无参数(使用初始化表达式) 为什么需要初始化表达式? 1. 假如类成员为 const 和引用 2. 假如类成员没有无参构造函数 3. 避免重复初始化,更高效 自定义构造函数:多个参数 自定义构造函数:单个参数 自定义构造函数:单个参数(陷阱) 自定义构造函数:单个参数(避免陷阱) 避免陷阱体现在哪里? • 加了 explicit 否则 show(80) 也能编译通过! • 所以,如果你不希望这种隐式转换, • 请给单参数的构造函数加上 explicit 。 • 比如 std::vector 的构造函数 vector(size_t n) 也是 explicit 的。 explicit 对多个参数也起作用! • 多个参数时, explicit 的作用体现在禁止 从一个 {} 表达式初始化。 • 如果你希望在一个返回
    0 码力 | 96 页 | 16.28 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 15 C++ 系列课:字符与字符串

    必须告诉他是字符串( %s )还是整数( %d )还是 字符( %c ),必须和右边的参数一致,初学者容易搞错 。 • 而且即使搞错了也能正常编译通过(一些高级的编译器会 给出警告),但是运行结果不对,或者还有可能崩溃。 泛型的 iostream 应运而生 • 得益于 C++ 的重载技术, cout 不用你手动指定类型,他 会自动识别参数的类型,帮你调用相应的格式化函数。 c_str 和 data 的区别 data() 只保证返回长度为 s.size() 的连续内存的首地址指针,不保证 0 结 尾。 • 把 C++ 的 string 作为参数传入像 printf 这种 C 语言函数时,需要用 s.c_str() 。 • 如果只是在 C++ 函数之间传参数,直接用 string 或 string const & 即可。 • void legacy_c(const char *name); stoi(“42”) 等价,都会返回 42 。后面的 “ yuan” 会被 stoi 略去。 • 那如何才能知道哪些字符被 stoi 略去了呢?或者说,数字部分从哪里结束? • 这就要用到 stoi 的第二参数,他是一个 size_t 的指针,默认为 nullptr 。 • 若该指针不为 nullptr ,则会往他指向的变量写入一个整数,表示数字部分结 束的那个字符所在的位置,很绕口?来看个例子就懂了。
    0 码力 | 162 页 | 40.20 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 05 C++11 开始的多线程编程

    C++ 中的多线程: std::thread • C++11 开始,为多线程提供了语言级别的 支持。他用 std::thread 这个类来表示线 程。 • std::thread 构造函数的参数可以是任意 lambda 表达式。 • 当那个线程启动时,就会执行这个 lambda 里的内容。 • 这样就可以一边和用户交互,一边在另一 个线程里慢吞吞下载文件了。 错误:找不到符号 如果线程在指定的时间内执行完毕,则认为等 待成功,返回 future_status::ready 。 • 同理还有 wait_until() 其参数是一个时间点。 另一种用法: std::launch::deferred 做参数 • std::async 的第一个参数可以设为 std::launch::deferred ,这时不会创建一个 线程来执行,他只会把 lambda 函数体内 的运算推迟到 的返回类型可以为 void , 这时 future 对象 的类型为 std::future 。 • 同理有 std::promise ,他的 set_value() 不接受参数,仅仅作为同步用, 不传递任何实际的值。 第 3 章:互斥量 多线程打架案例 • 两个线程试图往同一个数组里推数据。 • 奔溃了!为什么? • vector 不是多线程安全( MT-safe
    0 码力 | 79 页 | 14.11 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程

    __global__ 用于定义核函数,他在 GPU 上执行,从 CPU 端通过三重尖括号语法调 用,可以有参数,不可以有返回值。 • 而 __device__ 则用于定义设备函数,他在 GPU 上执行,但是从 GPU 上调用的,而 且不需要三重尖括号,和普通函数用起来一 样,可以有参数,有返回值。 • 即: host 可以调用 global ; global 可以调 用 device ; 多遍,每次针对不同的架构,所以编译会 变得非常慢,生成的可执行文件也会变大 。 • 通常在自己的电脑上用时,同学们只要根 据自己显卡的指定一个版本号即可。 如果 CMakeLists.txt 里没有指定,也可以从命令行参数指定 : 版本号和商品名对照表 • 版本 52 : Quadro M6000 , GeForce 900, GTX-970, GTX-980, GTX Titan X • 版本 53 : Tegra 这种奇怪的语法,这里面 的数字代表什么意思呢? • 不妨把 <<<1, 1>>> 改成 <<<1, 3>>> 试试 看。你会看到 Hello, world! 打印了三遍! • 原来,三重尖括号里的第二个参数决定着启动 kernel 时所用 GPU 的线程数量。 • GPU 是为并行而生的,可以开启很大数量的 线程,用于处理大吞吐量的数据。 获取线程编号 • 可以通过 threadIdx.x
    0 码力 | 142 页 | 13.52 MB | 1 年前
    3
共 23 条
  • 1
  • 2
  • 3
前往
页
相关搜索词
C++高性性能高性能并行编程优化课件07Zadig产品使用手册使用手册面向开发开发者原生DevOps平台潘泳权wpac031302150508
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩