GPU Resource Management On JDOSGPU Resource Management On JDOS 梁永清 liangyongqing1@jd.com 提供的服务 1. 用于实验的 GPU 容器 2.基于 Kubeflow 的机器学习训练服务 3.模型管理和模型 Serving 服务 Experiment Training Serving 均基于容器,不对业务方直接提供 GPU 物理机 GPU 实验 JDOS 常规的容器服务0 码力 | 11 页 | 13.40 MB | 1 年前3
KubeCon2020/大型Kubernetes集群的资源编排优化Resource orchestration optimization of kubernetes cluster in large scale Patrickxie ( 谢谆志) Background Cloud has been the general trend. How to manage so many clusters ,resources and businesses How to ensure load balancing of cluster nodes 1 2 Improper resource requests 3 Multi-tenant resource preemption How to expand horizontally more quickly and flexibly 4 Region1 How do you manage Node2 Kube-scheduler Pod Request Load Level Request Load Level Real Load Level Real Load Level Assigned to Node2 The native K8S scheduling is based on the resource request of Pod. However, in many0 码力 | 27 页 | 3.91 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 02 现代 C++ 入门:RAII 内存管理,就没必要去搞封装,只会让程序员 变得痛苦,同时还有一定性能损失:特别 是如果 getter/setter 函数分离了声明和定 义,实现在另一个文件时! C++ 思想: RAII ( Resource Acquisition Is Initialization ) 资源获取视为初始化,反之,资源释放视为销毁 C++ 除了用于初始化的构造函数( constructor ) 还包括了用于销毁的解构函数( 更加明确用的哪一种类型转换( cast ),从而避免一些像是 static_cast(ptr) 的错误 。 • 虽然作者也经常会忍不住在 zeno 中用 编译器默认生成的构造函数:无参数(小心 POD 陷阱!) • 除了我们自定义的构造函数外,编译器还会自动生成一些构造函数。 • 当一个类没有定义任何构造函数,且所有成员都有无参构造函数时,编译器会自动生成一 个无参构造函数 Pig() ,他会调用每个成员的无参构造函数。 这些类型被称为 POD ( plain-old-data )。 • POD 的存在是出于兼容性和性能的考虑。 << 取决于内存的随机值 编译器默认生成的构造函数:无参数( POD 陷阱解决方案) • 不过我们可以手动指定初始化 weight 为 0 。 • 通过 {} 语法指定的初始化值,会在编译器自 动生成的构造函数里执行。 编译器默认生成的构造函数:无参数( POD 陷阱解决方案,续) 0 码力 | 96 页 | 16.28 MB | 1 年前3
基于Rust-vmm实现Kubernetes运行时-kubernetes-tim-allclair-google Kubernetes has many layers of isolation, but we will focus on pod-to-pod isolation in this talk, AKA Sandbox Isolation. • Container Escape docker.vh.neargle.com:8888/ COW vulnerability −CVE-2019-5736 Docker runc vulnerability −CVE-2019-14271 Docker CP vulnerability Pod Isolation Challenges • Noisy neighbor −Impact performance on CPU, Memory, Bandwidth, Buffer IO, runsc container container Pod QEMU VMM Firecracker VMM Rust-VMM container container Pod Sandbox Agent gVisor Guest Kernel O C I Gofer container container Pod Sandbox Sentry KVM/ptrace0 码力 | 27 页 | 34.17 MB | 1 年前3
Автоматизация управления ClickHouse-кластерами в KubernetesReplica Service Replica Service Replica Service User Config Map Common Config Map Stateful Set Pod Persistent Volume Claim Persistent Volume Per-replica Config Map Altinity ClickHouse operator com/demo-01 created 3. RESULT $ kubectl get all -n demo NAME READY STATUS pod/chi-demo-01-demo-0-0-0 1/1 Running NAME TYPE CLUSTER-IP replicasCount: 1 Sharding – результаты NAME READY STATUS pod/chi-demo-01-demo-0-0-0 1/1 Running pod/chi-demo-01-demo-1-0-0 1/1 Running NAME0 码力 | 44 页 | 2.24 MB | 1 年前3
Secure your microservices with istio step by stepFormat: "spiffe:///ns/ /sa/ ” ● istioctl proxy-config secret <POD> -o json | jq '.dynamicActiveSecrets[0].secret.tlsCertificate.certificateChain.i nlineBytes' -r | | openssl x509 -noout -text -in - ● Part of cluster config in envoy config-dump ○ kubectl exec <POD> -c istio-proxy curl localhost:15000/config_dump #IstioCon Istio identity – check configuration result 0 码力 | 34 页 | 67.93 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 14 C++ 标准库系列课 - 你所不知道的 set 容器• bool second; • }; 使用 C++17 的结构化绑定来拆解 pair • C++17 提供了结构化绑定 (structual binding) 的语法, 可以取出一个 POD 结构体 的所有成员, pair 也不例外 。 • auto [ok, it] = b.insert(3); • 等价于 • auto tmp = b.insert(3); • auto ok =0 码力 | 83 页 | 10.23 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 06 TBB 开启的并行编程之旅https://www.zhihu.com/question/38857029 并行筛选 7 彻底避免了互斥量,完全通过预先准备好的大小,配合 atomic 递增索引批量写入。同时用小彭老师拍脑袋想到的 pod 模板类,使得 vector 的 resize 不会零初始化其中的 值。 加速比: 6.26 倍 并行筛选 8 (不推荐) 而是用 std::vector 作为 parallel_reduce 的元0 码力 | 116 页 | 15.85 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 12 从计算机组成原理看 C 语言指针T[n] 分配的(动态数组)请用 delete[] 释 放。 • 使用 new T 分配的(单个元素)请用 delete 释放。 • 不要混用,否则可能会出错,也可能不出错,取决于 T 是否为 POD 类型,以及标准库的具体实现。 数组作为函数参数和返回有哪些坑? 函数需要输入或输出数组?分类讨论 • 第一种情况,函数只是读取这个数组,不修改数组: • void func(const T*0 码力 | 128 页 | 2.95 MB | 1 年前3
Zadig 产品使用手册队花大量时间在碎片化沟通和流 程制定上、各方能力受限、无法 快速响应市场需求 层级越高、对产研状态越模糊 管理低效、延误战机 少量配置、快速拉起环境、稳定 性有保障、减少 90% 手工操作、 赋能开发、员工成就感高 碎片化:手工协作 + 复杂工具链 工程化:一个平台 一键发布 工作流、环境配置自动更新、高 效调试、消除手工操作、精准快 速迭代、研发生产力 / 幸福感提 升 自助运行、系统化管理、自动化 程度高、测试有效性提升、质量 产品视角开发交付、团队高效协 同、稳定迭代 产研数字化过程数据透明、关键 指标易抽取、有能力合理调动资 源、随时决策响应客户需求 碎片化 研 发模 式 产研全流程拉通需求到上线所需的代码、服务、配置和数据的一致性交付 Jira 飞书 项管 其他 自测 环境 Argo K8s JFrog YAML 产品 开 发 测 试 运维 产研运一体化 解决方案 免运维模板库 效能洞察 • IDE 热部署 • 更新镜像 • 更新配置 • 更新数据 • 日常调试 开发工程师 • 日常测试验证 • 自动化测试 测试工程师 • 升级预发环境 • 升级生产环境 • 变更数据库 发布工程师 核心场景介绍:不同角色工程师基于统一协作平面,操作使用自动化工作流和云原生环境 面向角色 功能描述 工作流名称样例 具体配置 开发工程师 CI 过程 project-unit-test0 码力 | 52 页 | 22.95 MB | 1 年前3
共 21 条
- 1
- 2
- 3













