Rust与算法 - 谢波
第三届中国 Rust 开发者大会 Rust 与 算法 谢波 …………………………………………………………………………. …………………………………………………………………………… ...... …………………………………………………………………………… ……………… …………………………………………………………………………… ………………………. …………………………………………………………………………… 算法相关知识 • Rust 实现数据结构 • Rust 实现算法 • 总结及学习资源 背景介绍 • 个人信息 • 写作动机 • 可参考点 • 为什么 背景介绍 # 个人职业 # 与 Rust 结缘 # 前 GPT 时代作品 个人信息 结算及大数据系统研发工程师 疫情下的明智选择 / 个人项目实践 学习中总结探索 2015 年发布,很多人近几年才知道 Rust , Rust 中国 大会也才第三届,期待 大会也才第三届,期待 Rust 中国大会第十届 Rust 处于起步阶段 中文圈学习资料或书籍少,有部分是翻译国外产品,能 不能中国人向国外输出作品 Rust 缺少学习资源 Rust 未来大有可为 Rust 在操作系统,数据库,各种框架和工具上应用范围 广 写作动机 当情况不明时,抱着一个纯粹的目标干事就行了,其他 的留给时间检验。不懂就学,技术写作更像一种共创, 要反复总结和修改 ( 费曼学习法0 码力 | 28 页 | 3.52 MB | 1 年前3夏歌-使用Rust构建LLM应用
第三届中国 Rust 开发者大会 使用 Rust 构建 LLM 应用 夏歌 SECTION TITLE SECTION TITLE 我们能不能直接用 Rust • 训练 • 推理 • AI 应用相关的工具 • WASI-NN spec • WasmEdge 已经支持 Pytorch 、 TensorFlow Lite • WASI-NN 2.0 比如 Langchain Rewrite Rewrite it in Rust • 笨重 • 资源占用多 • 大部分时间是在等待 • 轻量级 • 资源占用量小 • 节省大量计算资源 Python 与 Docker Rust 与 WebAssembly 为什么要用 Rust ? Rewrite it in Rust Rust 太难学! 为什么不用 Rust ? 学习曲线太陡峭了,学习周期太长了 招 Rust 开发太难了 Low Low code Rust Rust 在系统编程已经取得了巨大成功 培养更广泛的 Rust 开发 围绕 LLM 生态封装相应的 Rust 框 架,让开发者能够使用简单的 Rust 写 应用 如何用 Rust 实现的 构建和部署 AI 相关工作流的 serverless 平台 • 上传 Rust function ,平台负责将 Rust 编译成 Wasm ,并运行在 WasmEdge0 码力 | 36 页 | 38.31 MB | 1 年前3Learning by Contributing to Rust Compiler - 陈于康
第三届中国 Rust 开发者大会 Learning by Contributing to Rust Compiler Yukang github.com/chenyukang Engineer @ Cryptape Leveling Up in Rust • 2011 ~ 2014 EDA startup C/C++ • 2014 ~ 2020 DJI • 2020 ~ 2023 Microsoft C#, PowerShell • 2023 ~ now Cryptape Rust My work experience • Strongly interested in programming languages implementation • youki, dapr-wasm • 2022 ~ Regular contributions to Rust My Rust experience • A real case Remove duplicated diagnostics • Issue #100000, Rust is beautiful How I started hacking Rustc [100+ Prs]0 码力 | 23 页 | 3.28 MB | 1 年前3CeresDB 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 tasks from running. 生产实践 – 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/generators0 码力 | 22 页 | 6.95 MB | 1 年前3Rust分布式账务系统 - 胡宇
第三届中国 Rust 开发者大会 Rust 构建分布式账务系统 在 Fintech 公司落地 Rust 项目的经验分享 Airwalle x 胡宇 Airwallex 我们是一家跨境支付领域的 Fintech 独角兽 关于我们 E2 轮 Fintech 独角兽,业务遍布全球 关于我们: Airwallex 墨尔本 新加坡 伦敦 深圳 香港 北京 旧金山 上海 东京 100 万 TPS 的流量 可演化性:业务逻辑与底层 API 解耦,当业务发生改变 时,底层 API 不用改变 分布式账务系统 设计理念 - Rust 是我们可靠的基石 分布式账务系统 存算分离 API 解耦 读写分离 层级账号 Rust ● 事务层与账户层分 离 ● 独立水平扩展 ● CQRS ● Event Sourcing ● 针对读场景,写场 景分别优化 ● 稳定的底层 events ● 2. 将 events 送入 Raft 共识,等待 events 被多数节点保存 ○ 共识:基于 raft-rs 的可靠消息队 列 ○ 存储: Rocksdb with Rust 账户层: Auticuro 分布式账务系统 1 2 3 4 ● 1. 接受转账请求,转换成 events ● 2. 将 events 送入 Raft 共识,等待 events 被多数节点保存0 码力 | 27 页 | 12.60 MB | 1 年前3RustBelt - Rust 的形式化语义模型
第三届中国 Rust 开发者大会 王俊吉 RustBelt - Rust 的形式化语义模型 Outline Background • RustBelt Project • Rust Types Overview Rust Semantics • Type System • The own Predict • Exclusive Ownership & Mutable Borrow Unlike C/C++, Rust is a safe language But, like C/C++, Rust is also an unsafe language There are guaranteed memory safety, thread safety, ... There are plenty of unsafe codes in Rust’s standard library Securing the Foundations of the Rust Programming Language. In POPL 2018: ACM SIGPLAN Symposium on Principles of Programming Languages Ralf Jung. Understanding and Evolving the Rust Programming Language. PhD0 码力 | 21 页 | 2.63 MB | 1 年前3应用 waPC (rust) 做软件测试工具
第三届中国 Rust 开发者大会 应用 waPC (rust) 做软件测试工具 Alan poon 潘泳权 大家好! @rustropy_gaming ruito_89 PhoTto / image / chart Webassembly Procedures Call waPC 协议标准化了本机代码调用 WebAssembly 和 WebAssembly 调用本机代码的通信 (messaging) x86_64 ,Wi ndows x86_64, … cargo build —target wasm- unknown-unknown waPC Host (Go) waPC Guest Rust • Read wasm file • Select engine • Wazero • Wasmer-go • Wasmertime-go • Define hostcall capability ("ping", ping); } fn ping(msg: &[u8]) -> wapc::CallResult { …. Ok(msg.to_vec()) } waPC Guest Rust waPC • Use wapc_init to register function • Register_function can only be used inside WAPC_init0 码力 | 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 - Hot reload - Rendering Engine 利用 Rust 重塑移动应用开发 跨平台开发的优势和局限性 Pros: - Fast - Single Codebase - Third-party support (Javascript better than Dart) 利用 Rust 重塑移动应用开发 跨平台开发的优势和局 限性 Cons: - Performance 跨平台开发到到底 应该跨什么? 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基于Rust-vmm实现Kubernetes运行时
Ru(@ruyingzhe), Tencent Liangyu Zhou(@choujimmy), Tencent Implement Kubernetes Runtime Based on Rust-VMM About Us Yingzhe Ru Senior Software Engineer at Tencent Working on TKEStack project, have great No Yes Rust, Golang Yes No No KVM Amazon Nabla+runnc Yes No C, Golang Yes No No None IBM OCI Comparison kata- runtime runc runsc container container Pod QEMU VMM Firecracker VMM Rust-VMM container CBS persistent volume mount mount attach VPC Want to get safer and faster? Rust-VMM Why we love Rust-VMM? Rust-VMM is an open-source project that empowers the community to build custom Virtual0 码力 | 27 页 | 34.17 MB | 1 年前3Rust 异步并发框架在移动端的应用 - 陈明煜
第三届中国 Rust 开发者大会 Rust 异步并发框架在移动端的应用 陈明煜 chenmingyu4@huawei.com 华为 公共开发部 嵌入式软件能力中心 本科就读加州大学圣地亚哥分校,毕业时长两年半, Rustacean 在 华为 目前正在使用 Rust 开发并行调度框架等模块。 Rust 异步并发框架在移动端的应用 陈明煜 chenmingyu4@huawei.com 华为 公共开发部 嵌入式软件能力中心 Applications of Rust Runtime in Mobile Overview of asynchronous Rust #1 Rust 异步简介 Ylong async runtime #3 Ylong Runtime 并发框架 目录 Table of Contents #2 社区并发框架介绍以及与移动端的不适配性 Introduction mobile environment Rust 异步机制 Asynchronous Rust 异步并发框架是许多大型应用、系统具备的底层能力。 区别于多线程编程模型,它带来以下优势: 任务调度颗粒度更小,充分利用线程资源 更可控的线程数 单个任务资源占用:几十 KB -> 几百 Byte 任务切换时间 : 10 微秒 -> 100 纳秒 Rust 语言并没有提供异步并发框架,0 码力 | 25 页 | 1.64 MB | 1 年前3
共 20 条
- 1
- 2