 绕过conntrack,使用eBPF增强 IPVS优化K8s网络性能0 码力 | 24 页 | 1.90 MB | 1 年前3 绕过conntrack,使用eBPF增强 IPVS优化K8s网络性能0 码力 | 24 页 | 1.90 MB | 1 年前3
 KubeCon2020/大型Kubernetes集群的资源编排优化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 many nodes have high resource requests but low load. Dynamic-Scheduler Node1 Node2 Kube-scheduler Pod Request Load Level Request Load Level Real Load Level Real Load Level Assigned to Node1 Dynamic-scheduler 5m Load 50% 1h Load 75% 5m Load 40% 1h Load 30% Dynamic-scheduler 5m Load >65% filtered Pod 1h Load >70% filtered Add node1 to priority candidate list Dynamic-Scheduler Priority Node2 Node30 码力 | 27 页 | 3.91 MB | 1 年前3 KubeCon2020/大型Kubernetes集群的资源编排优化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 many nodes have high resource requests but low load. Dynamic-Scheduler Node1 Node2 Kube-scheduler Pod Request Load Level Request Load Level Real Load Level Real Load Level Assigned to Node1 Dynamic-scheduler 5m Load 50% 1h Load 75% 5m Load 40% 1h Load 30% Dynamic-scheduler 5m Load >65% filtered Pod 1h Load >70% filtered Add node1 to priority candidate list Dynamic-Scheduler Priority Node2 Node30 码力 | 27 页 | 3.91 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 基于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
 C++高性能并行编程与优化 -  课件 - 02 现代 C++ 入门:RAII 内存管理更加明确用的哪一种类型转换( cast ),从而避免一些像是 static_cast C++高性能并行编程与优化 -  课件 - 02 现代 C++ 入门:RAII 内存管理更加明确用的哪一种类型转换( cast ),从而避免一些像是 static_cast- (ptr) 的错误 。 • 虽然作者也经常会忍不住在 zeno 中用 编译器默认生成的构造函数:无参数(小心 POD 陷阱!) • 除了我们自定义的构造函数外,编译器还会自动生成一些构造函数。 • 当一个类没有定义任何构造函数,且所有成员都有无参构造函数时,编译器会自动生成一 个无参构造函数 Pig() ,他会调用每个成员的无参构造函数。 这些类型被称为 POD ( plain-old-data )。 • POD 的存在是出于兼容性和性能的考虑。 << 取决于内存的随机值 编译器默认生成的构造函数:无参数( POD 陷阱解决方案) • 不过我们可以手动指定初始化 weight 为 0 。 • 通过 {} 语法指定的初始化值,会在编译器自 动生成的构造函数里执行。 编译器默认生成的构造函数:无参数( POD 陷阱解决方案,续) 0 码力 | 96 页 | 16.28 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 Автоматизация управления 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:// 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
 新一代分布式高性能图数据库的构建 - 沈游人生活中无处不在的图 图分析技术分类 图查询 • 使用图数据库的查询语言进行点边搜索 图算法 • 中心性算法 • 社区算法 • 路径算法 • … 图深度学习 • 图嵌入 • 图卷积 • 图注意力网络 • 图自编码器 图查询及其应用场景 图查询 • 使用图数据库的查询语言进行点边的关联查询,可以快速完成传统数据库难以完成的 多度点边关 联 当前图的典型应用场景 路径识别 群体挖掘 节点识别 之间的传递过程和传递概率 图深度学习及其应用场景 图嵌入 • 将高维的图信息映射到低维向量中 • 通过图嵌入将客户关系表示为低维向量,可以结合其 他客户行为特征进行机器学习训练 图卷积神经网络 • 对图结构数据进行卷积计算 • 通过已有的企业数据,通过 GCN 进行半监督学习和分 类,预测企业的违约概率 传统的关系型数据库的存储方式丢失了事物之间的关系信息 Relational Table Technology Landscape 2020 • 图数据库 • 图数据建模 • 图计算引擎 • 图数据集成 • 可视化分析 • 知识图谱解决方案 • 图查询语言 • 欺诈检测 • 网络安全分析 • 社交网络分析 • BI 工具 • 图分析工具集 • 图咨询服务 Source : Graph Aware 图数据库发展趋势 AtlasGraph 研发背景 • 业务对大图分析的诉求(千亿点、万亿边)0 码力 | 38 页 | 24.68 MB | 1 年前3 新一代分布式高性能图数据库的构建 - 沈游人生活中无处不在的图 图分析技术分类 图查询 • 使用图数据库的查询语言进行点边搜索 图算法 • 中心性算法 • 社区算法 • 路径算法 • … 图深度学习 • 图嵌入 • 图卷积 • 图注意力网络 • 图自编码器 图查询及其应用场景 图查询 • 使用图数据库的查询语言进行点边的关联查询,可以快速完成传统数据库难以完成的 多度点边关 联 当前图的典型应用场景 路径识别 群体挖掘 节点识别 之间的传递过程和传递概率 图深度学习及其应用场景 图嵌入 • 将高维的图信息映射到低维向量中 • 通过图嵌入将客户关系表示为低维向量,可以结合其 他客户行为特征进行机器学习训练 图卷积神经网络 • 对图结构数据进行卷积计算 • 通过已有的企业数据,通过 GCN 进行半监督学习和分 类,预测企业的违约概率 传统的关系型数据库的存储方式丢失了事物之间的关系信息 Relational Table Technology Landscape 2020 • 图数据库 • 图数据建模 • 图计算引擎 • 图数据集成 • 可视化分析 • 知识图谱解决方案 • 图查询语言 • 欺诈检测 • 网络安全分析 • 社交网络分析 • BI 工具 • 图分析工具集 • 图咨询服务 Source : Graph Aware 图数据库发展趋势 AtlasGraph 研发背景 • 业务对大图分析的诉求(千亿点、万亿边)0 码力 | 38 页 | 24.68 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++高性能并行编程与优化 -  课件 - 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++高性能并行编程与优化 -  课件 - 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 C++高性能并行编程与优化 -  课件 - 12 从计算机组成原理看 C 语言指针T[n] 分配的(动态数组)请用 delete[] 释 放。 • 使用 new T 分配的(单个元素)请用 delete 释放。 • 不要混用,否则可能会出错,也可能不出错,取决于 T 是否为 POD 类型,以及标准库的具体实现。 数组作为函数参数和返回有哪些坑? 函数需要输入或输出数组?分类讨论 • 第一种情况,函数只是读取这个数组,不修改数组: • void func(const T*0 码力 | 128 页 | 2.95 MB | 1 年前3
共 13 条
- 1
- 2













