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

无数据

分类

全部后端开发(11)C++(10)数据库(1)MySQL(1)Rust(1)

语言

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

格式

全部PPT文档 PPT(12)
 
本次搜索耗时 0.015 秒,为您找到相关结果约 12 个.
  • 全部
  • 后端开发
  • C++
  • 数据库
  • MySQL
  • Rust
  • 全部
  • 中文(简体)
  • 中文(简体)
  • 全部
  • PPT文档 PPT
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • ppt文档 C++高性能并行编程与优化 - 课件 - 性能优化之无分支编程 Branchless Programming

    洗脸 刷牙 烧开水 吃饭 看比站 拉粑粑 5 5 10 20 条件跳转指令 • 让不占用相同资源的任务同时进行,这也是 CPU 流水线的初衷。但理想是美好的,现实 是骨感的,对于程序来说,指令不只是一个 个简单的任务,有时候我们需要做判断,来 决定要执行的具体任务,这就是分支,在汇 编语言中体现为条件跳转指令。 • 例如我们这里给任务清单加一个,如果烧开 水时被烫伤,则直接去医院的特殊任务。 看比站 15 分钟 眼睛 吃饭 30 分钟 嘴巴,手 拉粑粑 20 分钟 屁股 去医院 10 分钟 全身 无条件跳转指令 • 还有一个小问题,就是执行正常的分支走到“拉 粑粑”后,还会去医院。 • 为了在正常分支里不去医院,我们在“拉粑粑”后 面加一条无条件跳转指令,不论条件如何,直 接跳转到去医院的下一条指令,也就是程序结 束。 • if (! 烫伤 ) { • 刷牙 ; 眼睛,嘴巴,手 烧开水 10 分钟 煤气灶 如果烧开水时被烫伤,则跳转到去医院 刷牙 5 分钟 嘴巴,手 看比站 15 分钟 眼睛 吃饭 30 分钟 嘴巴,手 拉粑粑 20 分钟 屁股 (无条件)跳转到结束 去医院 10 分钟 全身 结束 跳转指令对流水线效率的影响 • 然而跳转指令的存在使得流水线的并行变得很困难了。例如我们本来可以烧开水和刷牙同 时进行节省时间的,但是因为烧好
    0 码力 | 47 页 | 8.45 MB | 1 年前
    3
  • ppt文档 谈谈MYSQL那点事

    可能会有更好的性能。 应用优化 应用优化 编写高效的 编写高效的 SQL SQL (一) (一)  能够快速缩小结果集的 能够快速缩小结果集的 WHERE WHERE 条件写在前面,如果有恒量条件, 条件写在前面,如果有恒量条件, 也尽量放在前面 也尽量放在前面  尽量避免使用 尽量避免使用 GROUP BY GROUP BY 、 、 DISTINCT DISTINCT 左边进行算术或表达式运算,否则系统将 左边进行算术或表达式运算,否则系统将 可能无法正确使用索引 可能无法正确使用索引  尽量不要在 尽量不要在 where where 条件中使用函数,否则将不能使用索引 条件中使用函数,否则将不能使用索引  避免使用 避免使用 select *, select *, 只取需要的字段 只取需要的字段  对于大数据量的查询,尽量避免在 对于大数据量的查询,尽量避免在 IO 开销 开销  只关心需要的表和满足条件的数据 只关心需要的表和满足条件的数据  适当使用临时表或表变量 适当使用临时表或表变量  对于连续的数值,使用 对于连续的数值,使用 between between 代替 代替 in in  where where 字句中尽量不要使用 字句中尽量不要使用 CASE CASE 条件 条件  尽量不用触发器,特别是在大数据表上
    0 码力 | 38 页 | 2.04 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 09 CUDA C++ 流体仿真实战

    在 Blender 中查看导出的结果 边界条件 边界条件:初始化 边界条件:添加判断边界的版本 边界条件:仅在第一层额外判断边界条件 进一步改进 VDB 导出:支持导出多个网格,并指定名称 进一步改进 VDB 导出: P-IMPL 模式 进一步改进 VDB 导出: F-IMPL 模式 Blender 渲染结果 改进 改进边界条件:外部边界流出而不是反弹,内部边界可以流出速度
    0 码力 | 58 页 | 14.90 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 05 C++11 开始的多线程编程

    第 6 章:条件变量 条件变量:等待被唤醒 • cv.wait(lck) 将会让当前线程陷入等待。 • 在其他线程中调用 cv.notify_one() 则会唤 醒那个陷入等待的线程。 • 可以发现 std::condition_variable 必须和 std::unique_lock 一起用,稍 后会解释原因。 条件变量:等待某一条件成真 • 还可以额外指定一个参数,变成 还可以额外指定一个参数,变成 cv.wait(lck, expr) 的形式,其中 expr 是 个 lambda 表达式,只有其返回值为 true 时才会真正唤醒,否则继续等待。 条件变量:多个等待者 • cv.notify_one() 只会唤醒其中一个等待中 的线程,而 cv.notify_all() 会唤醒全部。 • 这就是为什么 wait() 需要一个 unique_lock 消费者模式 • 类似于消息队列…… • 生产者:厨师,往 foods 队列里推送食品 ,推送后会通知消费者来用餐。 • 消费者:等待 foods 队列里有食品,没有 食品则陷入等待,直到被通知。 条件变量:将 foods 队列封装成类 std::condition_variable 小贴士 1. std::condition_variable 仅仅支持 std::unique_lock
    0 码力 | 79 页 | 14.11 MB | 1 年前
    3
  • ppt文档 Rust分布式账务系统 - 胡宇

    领域中的软件与互联网软件的不同 需求分析 支付处理: ● 转账 ● 冻资 / 解资 ● 账户限额 ● 批处理事务 正确性:无双花或少付 审计监管:交易日志不可篡改,交易历史可回溯 条件事务:根据一定的条件决定事务执行与否 高可用:在部分节点失效的情况下,依旧可以提供正确的 服务 超低延迟:实时交易,超低响应延迟 水平扩展性:利用分布式事务实现钱包集群的的水平扩 展,应对高达 100 万 在不同分区执行一个事务的 TCC 转账计划 ● 转账计划 ○ 有向无环图 ○ 节点是一个任务 ○ 边是依赖关系 ● 事务层 Marker 负责执行计划 ○ ACID 保证 ○ 依赖控制 ○ 条件执行 ○ 调度账户变动请求 跨分区转账 分布式账务系统 拥抱开源 github: https://github.com/airwallex/Auticuro doc: https://airwallex
    0 码力 | 27 页 | 12.60 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 14 C++ 标准库系列课 - 你所不知道的 set 容器

    ,则视为 a 等于 b ,所以 这就是为什么 set 只需要一个 比较函子,不需要相等函子的 原因。 set 的排序:自定义排序函数 • 所以我们这里写了 a[0] < b[0] 就相当于让相等条件变成了 a[0] == b[0] 。也就是说只要第 一个字符相等就视为字符串相 等,所以 “ arch” 和 “ any” 会 被视为相等的元素,从而被 set 给去重了! • 扩展知识:其实, 的元素。 • lower_bound(x) 找第一个大于等于 x 的元素 。 • upper_bound(x) 找第一个大于 x 的元素。 • 他们找不到时都会返回 end() 。 • find 的条件更加严格(必须相等才算找 到), lower_bound 和 upper_bound 就比较 宽松。 • 所以如果集合中没有 2 : • lower_bound(2) 会返回指向 3 的迭代器。 的元素。 • lower_bound(x) 找第一个大于等于 x 的元素 。 • upper_bound(x) 找第一个大于 x 的元素。 • 他们找不到时都会返回 end() 。 • find 的条件更加严格(必须相等才算找 到), lower_bound 和 upper_bound 就比较 宽松。 • 所以如果集合中有 2 : • lower_bound(2) 会返回指向 2 的迭代器。 •
    0 码力 | 83 页 | 10.23 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 03 现代 C++ 进阶:模板元编程

    模板的难题:编译期常量的限制 • 编译期常量的限制就在于他不能通过运行时变量组成的表达式来指定。比如: • 这里在 if constexpr 的表达式里用到了运行时变量,从而无法作为编译期分支的条件。 模板的难题:编译期常量的限制(续) • 除了 if constexpr 的表达式不能用运行时变量,模板尖括号内的参数也不能: • 可以在 bool debug 变量的定义前面加上 constexpr optional 里的类型是结构体,则 也可以用 ret->xxx 来访问该结构体的 属性。 optional : operator bool() 和 has_value() 等价 • 在 if 的条件表达式中,其实可以直接写 if (ret) ,他和 if (ret.has_value()) 等价 。 • 没错,这样看来 optional 是在模仿指针 , nullopt 则模仿 nullptr
    0 码力 | 82 页 | 12.15 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程

    往期录播: https://www.bilibili.com/video/BV1fa411r7zp 课程 PPT 和代码: https://github.com/parallel101/course 前置条件 • 学过 C/C++ 语言编程。 • 理解 malloc/free 之类的概念。 • 熟悉 STL 中的容器、函数模板等。 • 英伟达 GTX900 及以上显卡。 • CUDA 11 及以上。 cudaMallocManaged 、 cudaFree • 如果我没记错的话,统一内存是从 Pascal 架构开始支持的,也就是 GTX9 开头及以上 。 • 虽然方便,但并非完全没有开销,有条件的话还是尽量用分离的设备内存和主机内存吧。 第 3 章:数组 分配数组 • 如 malloc 一样,可以用 cudaMalloc 配 合 n * sizeof(int) ,分配一个大小为 n
    0 码力 | 142 页 | 13.52 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 04 从汇编角度看编译器优化

    4 个 float 打包到一个 xmm 寄存器里同时运算,很像数学中矢量的逐元 素加法。因此 SIMD 又被称为矢量,而原始的一次只能处理 1 个 float 的方式,则称为 标量。 • 在一定条件下,编译器能够把一个处理标量 float 的代码,转换成一个利用 SIMD 指令的 ,处理矢量 float 的代码,从而增强你程序的吞吐能力! • 通常认为利用同时处理 4 个 float 的 SIMD
    0 码力 | 108 页 | 9.47 MB | 1 年前
    3
  • ppt文档 C++高性能并行编程与优化 - 课件 - 13 C++ STL 容器全解之 vector

    == endptr 的情况,非常容易判断。 • 更方便的是你可以通过指针的减法运算: endptr - begptr 来算出数组的长度! • for 循环里也很容易写,判断是否继续循环 的条件为 ptr != endptr 就行了。 迭代器模式:首指针+尾指针 • 还可以让首指针和尾指针声明为模板参数 ,这样不论指针是什么类型,都可以使用 print 这个模板函数来打印。 迭代器模式:首指针+尾指针
    0 码力 | 90 页 | 4.93 MB | 1 年前
    3
共 12 条
  • 1
  • 2
前往
页
相关搜索词
C++高性性能高性能并行编程优化课件MySQL0905胡宇rust分布布式分布式账务系统1403080413
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩