Zadig 产品使用手册员工手工操作费时费力易出错 手动更新服务、手动打包、交付 付效率低下、占据大量研发时间 、研发利用率极低 环境不透明、测试效率低下、测 试有效性低、大量手工、价值难 以体现 上下游烟囱式、协作效率低、团 队花大量时间在碎片化沟通和流 程制定上、各方能力受限、无法 快速响应市场需求 层级越高、对产研状态越模糊 管理低效、延误战机 少量配置、快速拉起环境、稳定 性有保障、减少 90% 手工操作、 赋能开发、员工成就感高 色 : • 开 发 • 测 试 • 业 务 运 维 平 台 建 设 方 : • D e v O p s / 平 台 运 维 • I T / 基 础 设 施 • 测 试 / 安 全 团 队 持续测试 (Continuous Testing) 持续安全 (Continuous Security) 软件研发核心工程实践:交付工程 CI/CD 开发者实践 软件研发核心工程实践:全流程质量工程实践 s 软 件 工 程 平 台 Z a d i g 正 在 成 为 数 字 化 软 件 研 发 的 新 标 配 , 帮 助 企 业 全 面 实 现 产 研 数 字 化 转 型 。 核 心 团 队 由 D e v O p s 领 域 云 计 算 工 程 技 术 专 家 和 高 级 工 程 师 为 主 , 核 心 成 员 是 来 自 于 谷 歌 , 腾 讯 , 七 牛 云 , 阿 里 的 技0 码力 | 52 页 | 22.95 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 17 由浅入深学习 map 容器中采用的是更为高效的红黑树。 • 区别就是每个节点上多挂了一个 bool 类型的 flag 变量,表示这个节点是红是黑。 • 总之这样三下五除二下来他的插入效率比平衡二叉树高出一个常数,但复杂度还是 O(logn) 。 • 红黑树的具体异同我会放到最后再细讲,一下子讲太深都睡着了,反正只有插入和删除的 时候需要更新红黑 flag ,查找方面的方法是完全没有区别的,现在我们只考虑查找,红黑 flag 才有资格获得哦 只有好好鞋洗的童鞋 才有资格获得哦 鉴于这位童鞋表现优异 朕决定赐你一枚金质 《好好鞋洗》勋章 鉴于这位童鞋表现优异 朕决定赐你一枚金质 《好好鞋洗》勋章 恭喜你!打败了红黑树,拯救了地球文明!0 码力 | 90 页 | 8.76 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 14 C++ 标准库系列课 - 你所不知道的 set 容器list 都可以调用 std::find ( set 则直接提供了 find 作为成员函数,稍后 讨论) set 和 vector 迭代器的不同点 • set 的迭代器对象也重载了 + + 为红黑树的遍历。 • vector 提供了 + 和 += 的重 载,而 set 没有。这是因为 vector 中的元素在内存中是连 续的,可以随机访问。而 set 是不连续的,所以不能随机访 问,只能顺序访问。 unordered_set 不会排序 ,里面的元素都是完全随机 的顺序,和插入的顺序也不 一样。虽然你可能注意到这 里的刚好和插入的顺序相反 ?巧合而已,具体怎么顺序 是和 glibc 实现有关的。 • set 基于红黑树实现,相当 于二分查找 树, unordered_set 基于散 列哈希表实现,正是哈希函 数导致了随机的顺序。 不同版本的 set 容器比较 类型 去重 有序 查找 插入 vector ×0 码力 | 83 页 | 10.23 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程等常用库(大概) • GPU 红黑高斯 + 多重网格实战 • 继续锐评黄某勋 • 感兴趣的扣 1 • OpenMP 新特性( parallel for 之外的) • SIMD 指令全解析( mm 开头那堆) • 内存与缓存优化进阶(第七课的延伸) • 二分查找法优化案例(针对缓存行的) • eigen 、 glm 、 vectorclass 等常用库(可能) • CPU 红黑高斯 + 多重网格实战0 码力 | 142 页 | 13.52 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 09 CUDA C++ 流体仿真实战pre ,所以也要用双缓冲。 投影部分:计算未消除的散度 为了评估效果的好坏,额外加一个计算散度方差的核函数,看看是不是无散度(不可压缩流)了。 多重网格法 投影部分:多重网格实现 投影部分:红黑高斯 投影部分:计算残差 投影部分:缩小一倍 投影部分:清零数组 投影部分:扩大一倍 创建与导出 主函数:创建场景 导出 VDB :调用接口 导出 VDB :分离实现 CMake :使用0 码力 | 58 页 | 14.90 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 10 从稀疏数据结构到量化数据类型bit 存储,一个 char 可以存储 8 个 bit 用 map 来存储 读取:如果不存在,则读到 0 写入:如果不存在,则创建该表项 用 unordered_map 来存储 map 基于红黑树,会按照键值排序,需要键值具有 operator< 重载,复杂度 O(logn) C++11 新增的 unordered_map 基于哈希表,不保证顺序但更高效,需要键值能被哈希,复杂度 O(1)0 码力 | 102 页 | 9.50 MB | 1 年前3
Rust分布式账务系统 - 胡宇2 3 4 ● 1. 接受转账请求,转换成 events ● 2. 将 events 送入 Raft 共识,等待 events 被多数节点保存 ○ 共识:基于 raft-rs 的可靠消息队 列 ○ 存储: Rocksdb with Rust 账户层: Auticuro 分布式账务系统 1 2 3 4 ● 1. 接受转账请求,转换成 events ● 2. 将 events0 码力 | 27 页 | 12.60 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 02 现代 C++ 入门:RAII 内存管理来管理,省的每个类实 现一遍原子引用计数器。 管理资源的类, 请删除他的拷贝 是数据结构:如果可以,定义拷贝和移动 • 这个类是你精心设计的数据结构,包括我们刚 刚发明的 Vector ,还有链表,红黑树等。如 果这些数据结构是可以支持拷贝的(比如 Vector 就可以),你可能需要自己一个个定义。 如果不支持,那就删除( = delete )。 函数参数:如何避免不必要的拷贝 • 注意到,如果函数的参数声明为值类型,0 码力 | 96 页 | 16.28 MB | 1 年前3
共 8 条
- 1













