夏歌-使用Rust构建LLM应用第三届中国 Rust 开发者大会 使用 Rust 构建 LLM 应用 夏歌 SECTION TITLE SECTION TITLE 我们能不能直接用 Rust • 训练 • 推理 • AI 应用相关的工具 • WASI-NN spec • WasmEdge 已经支持 Pytorch 、 TensorFlow Lite • WASI-NN 2.0 比如 Langchain Rewrite 开发太难了 Low code Rust Rust 在系统编程已经取得了巨大成功 培养更广泛的 Rust 开发 围绕 LLM 生态封装相应的 Rust 框 架,让开发者能够使用简单的 Rust 写 应用 如何用 Rust 实现的 构建和部署 AI 相关工作流的 serverless 平台 • 上传 Rust function ,平台负责将 Rust 编译成 Wasm ,并运行在 WasmEdge0 码力 | 36 页 | 38.31 MB | 1 年前3
应用 waPC (rust) 做软件测试工具第三届中国 Rust 开发者大会 应用 waPC (rust) 做软件测试工具 Alan poon 潘泳权 大家好! @rustropy_gaming ruito_89 PhoTto / image / chart Webassembly Procedures Call waPC 协议标准化了本机代码调用 WebAssembly 和 WebAssembly 调用本机代码的通信 (messaging)0 码力 | 30 页 | 2.50 MB | 1 年前3
陈东 - 利用Rust重塑移动应用开发-230618第三届中国 Rust 开发者大会 利用 Rust 重塑移动应用开发 陈东 Aaron Chen CTO AccountLabs Rust China Conf 2023 2023 移动应用开发有那些选择? 1. Native 2. Flutter 3. React Native ? 利用 Rust 重塑移动应用开发 React Native is an open-source reload - Rendering Engine 利用 Rust 重塑移动应用开发 跨平台开发的优势和局限性 Pros: - Fast - Single Codebase - Third-party support (Javascript better than Dart) 利用 Rust 重塑移动应用开发 跨平台开发的优势和局 限性 Cons: - Performance Codebase 跨平台开发到到底 应该跨什么? UI or Logic ? 利用 Rust 重塑移动应用开发 Rust 在移动端应 用的价值 Rust is the only advanced choice for cross platform development. 利用 Rust 重塑移动应用开发 Rust 的特点 Why Rust? - Cross platform - Performance0 码力 | 22 页 | 2.10 MB | 1 年前3
CeresDB Rust 生产实践 任春韶CeresDB Rust 生产实践 任春韶 CeresDB 核心开发者 蚂蚁集团技术专家 CeresDB 介绍 Rust 生产实践 - Tokio Preemption - Future Cancellation 目录 CeresDB – 历程 2018.02 2018.10 2019.02 ~ 2020.11 2021.9 自研存储引擎 1.0.0 版本发布 Preemption - Future Cancellation Rust 生产实践 生产实践 – Tokio 为什么使用 Tokio ? 1. 业界使用最广泛,测试齐全。 2. Tokio 支持 async/await ,提供了高效的异步锁、异步队列等。 3. Tokio 社区支持好。 生产实践 – Tokio Rust future preemption https://docs 生产实践 – Future 循环 Run Return https://rust-lang.github.io/async-book/04_pinning/01_chapter.html#why-pinning https://doc.rust-lang.org/beta/unstable-book/language-features/generators.html 生产实践 – Async0 码力 | 22 页 | 6.95 MB | 1 年前3
Rust 异步并发框架在移动端的应用 - 陈明煜第三届中国 Rust 开发者大会 Rust 异步并发框架在移动端的应用 陈明煜 chenmingyu4@huawei.com 华为 公共开发部 嵌入式软件能力中心 本科就读加州大学圣地亚哥分校,毕业时长两年半, Rustacean 在 华为 目前正在使用 Rust 开发并行调度框架等模块。 Rust 异步并发框架在移动端的应用 陈明煜 chenmingyu4@huawei.com 华为 crates and their incompatibility with mobile environment Rust 异步机制 Asynchronous Rust 异步并发框架是许多大型应用、系统具备的底层能力。 区别于多线程编程模型,它带来以下优势: 任务调度颗粒度更小,充分利用线程资源 更可控的线程数 单个任务资源占用:几十 KB -> 几百 Byte 任务切换时间0 码力 | 25 页 | 1.64 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - Zeno 中的现代 C++ 最佳实践0 码力 | 54 页 | 3.94 MB | 1 年前3
Zadig 面向开发者的云原生 DevOps 平台推出效能看板,实时客观度量工程数据指标 效 率 优 化 、 开 发 者 体 验 增 强 2023 年 面向生态伙伴开放场景 面向开发者提供 IDE 插件 / 自测环境 通用工作流广泛链接生态赋能开发者 企业解决方案和最佳实践内置 发布 AI 增强解决方案 企 业 开 放 性 、 A I 能 力 增 强 产品发展历程 高频极速迭代: Zadig 开源 29 个月共迭代 21 个版本 “ ” 开发者常处于 搭建流程串接胶水平台 建设成本高 500-2000 万之间 使用和学习门槛高;随业务发展扩展性差 局限性大,内部推广难度极高,做完后维 护成本高价值难被证明 低采购成本、低实施成本, 内置模板库和最佳实践;高扩展性、技术先进性强 ,可灵活广泛接入现有工具链和业务场景 基于代码管理的 DevOps 方 案 Gitee 平台 GitLab 平台 局限性大、全流程安全性低 维护成本高 支 自定义工作流,灵活编排发布、自 主开发和对接企业内部流程和系统 扫码查看飞书主干开发最佳实践 灵活易用的高并发工作流 • 一键拉起环境 / 子环境 • 一键复制 / 睡眠环境 • 多环境 / 环境配置管理 • 服务编排 / 跨项目共享服务 • 开发者共享环境 - 自测子环境 扫码查看 TT 语音最佳实践 面向开发者的云原生环境 扫码查看飞书集成测试案例 • 无缝对接主流测试框架 /0 码力 | 59 页 | 81.43 MB | 1 年前3
谈谈MYSQL那点事读写性能都非常优秀 • 能够承载大数据量的存储和访问 能够承载大数据量的存储和访问 • 拥有自己独立的缓冲池,能够缓存数据和索引 拥有自己独立的缓冲池,能够缓存数据和索引 MySQL 架构设计—应用架构 强一致性 对读一致性的权衡,如果是对读写实时性要求非常高的话, 就将读写都放在 M1 上面, M2 只是作为 standby 。 比如,订单处理流程,那么对读需要强一致性,实时写实 途径,实际中尽可能两者兼顾。 MySQL 架构设计—高可用架构 系统优化:硬件、架构 系统优化:硬件、架构 服务优化 服务优化 应用优化 应用优化 MySQL MySQL 优化方式 优化方式 影响性能的因素 影响性能的因素 应用程序 应用程序 查询 查询 事务管理 事务管理 数据库设计 数据库设计 数据分布 数据分布 网络 网络 操作系统 操作系统 硬件 配置合理的 MySQL MySQL 服务器,尽量在应用本身达到一 服务器,尽量在应用本身达到一 个 个 MySQL MySQL 最合理的使用 最合理的使用 针对 针对 MyISAM MyISAM 或 或 InnoDB InnoDB 不同引擎进行不同定制 不同引擎进行不同定制 性配置 性配置 针对不同的应用情况进行合理配置 针对不同的应用情况进行合理配置 针对 针对 my.cnf0 码力 | 38 页 | 2.04 MB | 1 年前3
Go读书会第二期项目布局 • 代码风格 • 命名惯例 Part3 – 语法基础:声明、类型、语句与控制结构 践行哲学,遵循惯例,认清本质,理解原理 • 一致的变量声明形式 • 无类型常量与 iota 的应用 • 定义零值可用的类型 • 通过复合字面值的初始化 • 切片、字符串、 map 的原理、惯 用法与坑 每个 gopher 编写 Go 代码都会用到的 • Go 包导入相关 • 代码块与作用域 并发设计 vs. 并行设计 • 并发原语的原理与应用模式 • 低级同步原语 (sync 和 atomic) 并发:优先考虑并发设计 Part7 – 错误处理 践行哲学,遵循惯例,认清本质,理解原理 • 错误处理的几种策略 • 优化 if err != nil • Panic 不是错误处理 错误处理:保守与创新 Part8 – 编程实践:测试、调试与性能剖析 践行哲学,遵循惯例,认清本质,理解原理 践行哲学,遵循惯例,认清本质,理解原理 • Go 测试惯例与组织形式 • 模糊测试 (fuzzing test) • 性能基准测试、度量数据与 pprof 剖析 • 调试实践 聚焦编码之外的 Go 工具链使用实践 Part9 – 标准库、反射与 cgo 践行哲学,遵循惯例,认清本质,理解原理 • 高频使用的标准库包 ( net 、 http 、 strings 、 time 、 crypto 等 ) •0 码力 | 26 页 | 4.55 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 05 C++11 开始的多线程编程并行算法实战: reduce , scan ,矩阵乘法等 10.存储大规模三维数据的关键:稀疏数据结构 11.物理仿真实战:邻居搜索表实现 pbf 流体求解 12.C++ 在 ZENO 中的工程实践:从 primitive 说起 13.结业典礼:总结所学知识与优秀作业点评 I 硬件要求: 64 位( 32 位时代过去了) 至少 2 核 4 线程(并行课…) 英伟达家显卡( GPU 专题) 软件要求: 接受一个时间点的 sleep_until ,表示让当 前线程休眠直到某个时间点。 第 1 章:线程 进程与线程 • 进程是一个应用程序被操作系统拉起来加载到内存之后从开始执行到执行结束的这样一个 过程。简单来说,进程是程序(应用程序,可执行文件)的一次执行。比如双击打开一个 桌面应用软件就是开启了一个进程。 • 线程是进程中的一个实体,是被系统独立分配和调度的基本单位。也有说,线程是 CPU 可 对于高性能并行计算,更好的是多线程。 为什么需要多线程:无阻塞多任务 • 我们的程序常常需要同时处理多个任务。 • 例如:后台在执行一个很耗时的任务,比 如下载一个文件,同时还要和用户交互。 • 这在 GUI 应用程序中很常见,比如浏览 器在后台下载文件的同时,用户仍然可以 用鼠标操作其 UI 界面。 没有多线程:程序未响应 • 没有多线程的话,就必须等文件下载完了 才能继续和用户交互。 • 下载完成前,整个界面都会处于“未响应”状0 码力 | 79 页 | 14.11 MB | 1 年前3
共 26 条
- 1
- 2
- 3













