 PromQL Got a BOOST: 用 Rust 重写 Prometheus 的查询引擎第三届中国 Rust 开发者大会 PromQL Got a BOOST: 用 Rust 重写 Prometheus 的查询引擎 Ruihang Xia @greptime.com Ruihang GitHub: waynexia Losing hair at Greptime Wanna sleep 10 hrs/day Learn JS every year Healing0 码力 | 39 页 | 6.95 MB | 1 年前3 PromQL Got a BOOST: 用 Rust 重写 Prometheus 的查询引擎第三届中国 Rust 开发者大会 PromQL Got a BOOST: 用 Rust 重写 Prometheus 的查询引擎 Ruihang Xia @greptime.com Ruihang GitHub: waynexia Losing hair at Greptime Wanna sleep 10 hrs/day Learn JS every year Healing0 码力 | 39 页 | 6.95 MB | 1 年前3
 Rust在物理引擎研发中的应用 崔汉青第三届中国Rust开发者大会 Rust在物理引擎研发中的应用 崔汉青 Motphys CEO Motphys 驱动虚拟世界的全部运动 体验 应用 基础应用: 内容生成工具、 交易市场等 基础硬件: 5G/6G、 半导体、 VR/AR等 基础软件: 渲染引擎、 动作物理引擎等 静态表现力 动态表现力 渲染技术 动作物理技术 动作技术 Motion 物理技术 Physics 保证每个目标平台的极致性能 跨端确定性 – 保证所有目标平台计算结 果完全一致 具备分布式能力 – 通过横向扩展突破单 机物理算力的上限 Motphys 物理引擎的设计目标 Rust 的性能和 C/C++ 比肩,支持 SIMD 优 化,满足苛求性能的引擎研发需求; Rust 的零开销抽象甩掉了复杂设计的性能包袱 # 高性能 Rust 在不损耗性能的情况下,其优秀的语 法设计保证了语言的强大表达力:用更少 在语法层面极大程度保证了内存安全 和并发安全 语言内建的 async/await,还有优秀的 crates rayon(计算密集型并发支持)和 tokio(IO 密集型并发支持) 为什么选择 Rust Motphys 物理引擎架构 Broad Phase Narrow Phase Candidate Collision Pairs Manifold Build Collision Pairs Collision0 码力 | 22 页 | 1.18 MB | 1 年前3 Rust在物理引擎研发中的应用 崔汉青第三届中国Rust开发者大会 Rust在物理引擎研发中的应用 崔汉青 Motphys CEO Motphys 驱动虚拟世界的全部运动 体验 应用 基础应用: 内容生成工具、 交易市场等 基础硬件: 5G/6G、 半导体、 VR/AR等 基础软件: 渲染引擎、 动作物理引擎等 静态表现力 动态表现力 渲染技术 动作物理技术 动作技术 Motion 物理技术 Physics 保证每个目标平台的极致性能 跨端确定性 – 保证所有目标平台计算结 果完全一致 具备分布式能力 – 通过横向扩展突破单 机物理算力的上限 Motphys 物理引擎的设计目标 Rust 的性能和 C/C++ 比肩,支持 SIMD 优 化,满足苛求性能的引擎研发需求; Rust 的零开销抽象甩掉了复杂设计的性能包袱 # 高性能 Rust 在不损耗性能的情况下,其优秀的语 法设计保证了语言的强大表达力:用更少 在语法层面极大程度保证了内存安全 和并发安全 语言内建的 async/await,还有优秀的 crates rayon(计算密集型并发支持)和 tokio(IO 密集型并发支持) 为什么选择 Rust Motphys 物理引擎架构 Broad Phase Narrow Phase Candidate Collision Pairs Manifold Build Collision Pairs Collision0 码力 | 22 页 | 1.18 MB | 1 年前3
 C++高性能并行编程与优化 -  课件 - 03 现代 C++ 进阶:模板元编程现代 C++ 进阶:模板元编程 by 彭于斌( @archibate ) 往期录播: https://www.bilibili.com/video/BV1fa411r7zp 课程 PPT 和代码: https://github.com/parallel101/course 高性能并行编程与优化 - 课程大纲 • 分为前半段和后半段,前半段主要介绍现代 C++ ,后半段主要介绍并行编程与优化。 ,后半段主要介绍并行编程与优化。 1.课程安排与开发环境搭建: cmake 与 git 入门 2.现代 C++ 入门:常用 STL 容器, RAII 内存管理 3.现代 C++ 进阶:模板元编程与函数式编程 4.编译器如何自动优化:从汇编角度看 C++ 5.C++11 起的多线程编程:从 mutex 到无锁并行 6.并行编程常用框架: OpenMP 与 Intel TBB 7.被忽视的访存优化:内存带宽与 cpu 9 及以上( Linux 用户) CMake 3.12 及以上(跨平台作业) Git 2.x (作业上传到 GitHub ) CUDA Toolkit 10.0 以上( GPU 专题) 为什么需要模板函数( template ) • 避免重复写代码。 • 比如,利用重载实现“将一个数乘以 2” 这个 功能,需要: 为什么面向对象在 HPC 不如函数式和元编程香了? 这个例子要是按传统的面向对象思想,可能是这样:0 码力 | 82 页 | 12.15 MB | 1 年前3 C++高性能并行编程与优化 -  课件 - 03 现代 C++ 进阶:模板元编程现代 C++ 进阶:模板元编程 by 彭于斌( @archibate ) 往期录播: https://www.bilibili.com/video/BV1fa411r7zp 课程 PPT 和代码: https://github.com/parallel101/course 高性能并行编程与优化 - 课程大纲 • 分为前半段和后半段,前半段主要介绍现代 C++ ,后半段主要介绍并行编程与优化。 ,后半段主要介绍并行编程与优化。 1.课程安排与开发环境搭建: cmake 与 git 入门 2.现代 C++ 入门:常用 STL 容器, RAII 内存管理 3.现代 C++ 进阶:模板元编程与函数式编程 4.编译器如何自动优化:从汇编角度看 C++ 5.C++11 起的多线程编程:从 mutex 到无锁并行 6.并行编程常用框架: OpenMP 与 Intel TBB 7.被忽视的访存优化:内存带宽与 cpu 9 及以上( Linux 用户) CMake 3.12 及以上(跨平台作业) Git 2.x (作业上传到 GitHub ) CUDA Toolkit 10.0 以上( GPU 专题) 为什么需要模板函数( template ) • 避免重复写代码。 • 比如,利用重载实现“将一个数乘以 2” 这个 功能,需要: 为什么面向对象在 HPC 不如函数式和元编程香了? 这个例子要是按传统的面向对象思想,可能是这样:0 码力 | 82 页 | 12.15 MB | 1 年前3
 CmlPHP v2.x 开发手册
通过某字段值更新数据 通过字段值删除数据 获取总数 获取列表 注意事项 同时查询多个库 模型-MongoDB Orm详细Api 服务 视图 统一的API Html模板引擎 Blade模板引擎 锁-并发处理 缓存 语言包 日志 调试 Session自定义保存位置 框架自带的扩展包 插件 使用说明 系统挂载点 常用常量 命令行运行程序 守护工作进程 队列服务 权限管理 数据验证 验证码 文件上传 数据库迁移 部署 伪静态配置 Apache Nginx 静态资源管理 安全 防注入 用户数据输入 csrf 加密解密 常见问题 模板中不同的url_model模式下传参给后端 ? &符混乱 服务高可用 升级日志 3 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2.x系列版本的开发使用教程。 本 'Config',//自动载入配置用 'app_lang_path_name' => 'Lang',//自动载入语言用 'app_view_path_name' => 'View',//渲染模板用 'app_controller_path_name' => 'Controller',//路由根据请求url映射控制器用 'app_static_path_name' =>0 码力 | 143 页 | 1.54 MB | 1 年前3 CmlPHP v2.x 开发手册
通过某字段值更新数据 通过字段值删除数据 获取总数 获取列表 注意事项 同时查询多个库 模型-MongoDB Orm详细Api 服务 视图 统一的API Html模板引擎 Blade模板引擎 锁-并发处理 缓存 语言包 日志 调试 Session自定义保存位置 框架自带的扩展包 插件 使用说明 系统挂载点 常用常量 命令行运行程序 守护工作进程 队列服务 权限管理 数据验证 验证码 文件上传 数据库迁移 部署 伪静态配置 Apache Nginx 静态资源管理 安全 防注入 用户数据输入 csrf 加密解密 常见问题 模板中不同的url_model模式下传参给后端 ? &符混乱 服务高可用 升级日志 3 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2.x系列版本的开发使用教程。 本 'Config',//自动载入配置用 'app_lang_path_name' => 'Lang',//自动载入语言用 'app_view_path_name' => 'View',//渲染模板用 'app_controller_path_name' => 'Controller',//路由根据请求url映射控制器用 'app_static_path_name' =>0 码力 | 143 页 | 1.54 MB | 1 年前3
 CmlPHP v2.x 开发手册
19 1.6.20 1.6.21 1.6.22 1.6.23 注意事项 同时查询多个库 模型-MongoDB Orm详细Api 服务 视图 统一的API Html模板引擎 Blade模板引擎 锁-并发处理 缓存 语言包 日志 调试 Session自定义保存位置 框架自带的扩展包 插件 使用说明 系统挂载点 常用常量 命令行运行程序 守护工作进程 队列服务 1.10 1.11 验证码 文件上传 数据库迁移 部署 伪静态配置 Apache Nginx 静态资源管理 安全 防注入 用户数据输入 csrf 加密解密 常见问题 模板中不同的url_model模式下传参给后端 ? &符混乱 服务高可用 升级日志 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2.x系列版本的开发使用教程。 本教程离线版下载:pdf、mobi、epub //自动载入配置 用 'app_lang_path_name' => 'Lang',//自动载入语言用 'app_view_path_name' => 'View',//渲染模板用 'app_controller_path_name' => 'Controller',//路 由根据请求url映射控制器用 'app_static_path_name'0 码力 | 245 页 | 720.67 KB | 1 年前3 CmlPHP v2.x 开发手册
19 1.6.20 1.6.21 1.6.22 1.6.23 注意事项 同时查询多个库 模型-MongoDB Orm详细Api 服务 视图 统一的API Html模板引擎 Blade模板引擎 锁-并发处理 缓存 语言包 日志 调试 Session自定义保存位置 框架自带的扩展包 插件 使用说明 系统挂载点 常用常量 命令行运行程序 守护工作进程 队列服务 1.10 1.11 验证码 文件上传 数据库迁移 部署 伪静态配置 Apache Nginx 静态资源管理 安全 防注入 用户数据输入 csrf 加密解密 常见问题 模板中不同的url_model模式下传参给后端 ? &符混乱 服务高可用 升级日志 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2.x系列版本的开发使用教程。 本教程离线版下载:pdf、mobi、epub //自动载入配置 用 'app_lang_path_name' => 'Lang',//自动载入语言用 'app_view_path_name' => 'View',//渲染模板用 'app_controller_path_name' => 'Controller',//路 由根据请求url映射控制器用 'app_static_path_name'0 码力 | 245 页 | 720.67 KB | 1 年前3
 CmlPHP v2.x 开发手册
Orm详细Api 1.6.7.1 8. 服务 1.6.8 9. 视图 1.6.9 1. 统一的API 1.6.9.1 2. Html模板引擎 1.6.9.2 3. Blade模板引擎 1.6.9.3 10. 锁-并发处理 1.6.10 11. 缓存 1.6.11 12. 语言包 1.6.12 13. 日志 1 1. 防注入 1.8.1 2. 用户数据输入 1.8.2 3. csrf 1.8.3 4. 加密解密 1.8.4 9. 常见问题 1.9 1. 模板中不同的url_model模式下传参给后端 ? &符混乱 1.9.1 10. 服务高可用 1.10 11. 升级日志 1.11 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2 'Config',//自动载入配置用 'app_lang_path_name' => 'Lang',//自动载入语言用 'app_view_path_name' => 'View',//渲染模板用 'app_controller_path_name' => 'Controller',//路由根据请求url映射控制器用 'app_static_path_name' =>0 码力 | 251 页 | 973.37 KB | 1 年前3 CmlPHP v2.x 开发手册
Orm详细Api 1.6.7.1 8. 服务 1.6.8 9. 视图 1.6.9 1. 统一的API 1.6.9.1 2. Html模板引擎 1.6.9.2 3. Blade模板引擎 1.6.9.3 10. 锁-并发处理 1.6.10 11. 缓存 1.6.11 12. 语言包 1.6.12 13. 日志 1 1. 防注入 1.8.1 2. 用户数据输入 1.8.2 3. csrf 1.8.3 4. 加密解密 1.8.4 9. 常见问题 1.9 1. 模板中不同的url_model模式下传参给后端 ? &符混乱 1.9.1 10. 服务高可用 1.10 11. 升级日志 1.11 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2 'Config',//自动载入配置用 'app_lang_path_name' => 'Lang',//自动载入语言用 'app_view_path_name' => 'View',//渲染模板用 'app_controller_path_name' => 'Controller',//路由根据请求url映射控制器用 'app_static_path_name' =>0 码力 | 251 页 | 973.37 KB | 1 年前3
 ThinkJS 2.2 中文文档mysql: { host: '', port: '' } } } } 详细的数据库配置请见这里。 nunjucks 模板继承路径怎么写 使用 nunjucks 的模板继承时,由于设置了 root_path,所以路径需要使用相对路径。如: {% extends "./parent.html" %} //表示同级别⽬目录下的 parent //模版引擎 content_type: 'text/html', //输出模版时发送的 Content-Type file_ext: '.html', //⽂文件的扩展名 file_depr: '_', //控制器器和操作之间的连接符 root_path: think.ROOT_PATH + '/view', //视图⽂文件的根⽬目录 adapter: { //模版引擎需要的配置项 //模版引擎需要的配置项 ejs: {}, //使⽤用 ejs 模板引擎时额外配置 nunjucks: {} //使⽤用 nunjucks 模板引擎时额外配置 } }; 注 : 2.0.6 版本开始去除了 options 配置项,使用 adapter 代替。 视图默认根目录在 view/ 。如果想每个模块有独立的视图目录,将配置 root_path 修改为空即 可。 修改连接符 默认控制器和操作之间的连接符是0 码力 | 277 页 | 3.61 MB | 1 年前3 ThinkJS 2.2 中文文档mysql: { host: '', port: '' } } } } 详细的数据库配置请见这里。 nunjucks 模板继承路径怎么写 使用 nunjucks 的模板继承时,由于设置了 root_path,所以路径需要使用相对路径。如: {% extends "./parent.html" %} //表示同级别⽬目录下的 parent //模版引擎 content_type: 'text/html', //输出模版时发送的 Content-Type file_ext: '.html', //⽂文件的扩展名 file_depr: '_', //控制器器和操作之间的连接符 root_path: think.ROOT_PATH + '/view', //视图⽂文件的根⽬目录 adapter: { //模版引擎需要的配置项 //模版引擎需要的配置项 ejs: {}, //使⽤用 ejs 模板引擎时额外配置 nunjucks: {} //使⽤用 nunjucks 模板引擎时额外配置 } }; 注 : 2.0.6 版本开始去除了 options 配置项,使用 adapter 代替。 视图默认根目录在 view/ 。如果想每个模块有独立的视图目录,将配置 root_path 修改为空即 可。 修改连接符 默认控制器和操作之间的连接符是0 码力 | 277 页 | 3.61 MB | 1 年前3
 Laravel 5.6 中文文档return $user->id === $order->user_id; } } API 控制器生成 声明被 API 消费的资源控制器时,通常你会排除输出 HTML 模板的路由,例如 create 和 edit,要生成不包含这些方法的资源控制器,可以在使 用 Artisan 命令执行 make:controller 时使用 --api 开关: php artisan Laravel 学院致力于提供优质 Laravel 中文学习资源:http://laravelacademy.org 4 Bootstrap 4 所有前端脚手架例如用户登录认证模板和 Vue 示例组件都已经升级到 Bootstrap 4。默认情况下,生成的分页链接现在也已升级到 Bootstrap 4。 升级指南 预计升级时间:10-30 分钟 PHP Laravel --message="Upgrading Database" --retry=60 要关闭维护模式,开启站点,对应的 Artisan 命令是 up: php artisan up 注:你可以通过定义自己的模板来定制默认的维护模式模板,自定义模板视图位于 resources/views/errors/503.blade.php。 维护模式 & 队列 当你的站点处于维护模式中时,所有的队列任务都不会执行;当应用退出维护模式这些任务才会被继续正常处理。0 码力 | 377 页 | 14.56 MB | 1 年前3 Laravel 5.6 中文文档return $user->id === $order->user_id; } } API 控制器生成 声明被 API 消费的资源控制器时,通常你会排除输出 HTML 模板的路由,例如 create 和 edit,要生成不包含这些方法的资源控制器,可以在使 用 Artisan 命令执行 make:controller 时使用 --api 开关: php artisan Laravel 学院致力于提供优质 Laravel 中文学习资源:http://laravelacademy.org 4 Bootstrap 4 所有前端脚手架例如用户登录认证模板和 Vue 示例组件都已经升级到 Bootstrap 4。默认情况下,生成的分页链接现在也已升级到 Bootstrap 4。 升级指南 预计升级时间:10-30 分钟 PHP Laravel --message="Upgrading Database" --retry=60 要关闭维护模式,开启站点,对应的 Artisan 命令是 up: php artisan up 注:你可以通过定义自己的模板来定制默认的维护模式模板,自定义模板视图位于 resources/views/errors/503.blade.php。 维护模式 & 队列 当你的站点处于维护模式中时,所有的队列任务都不会执行;当应用退出维护模式这些任务才会被继续正常处理。0 码力 | 377 页 | 14.56 MB | 1 年前3
 ThinkJS 3.0 中文文档js | |--- logic //logic ⽬目录 | | |--- index.js | |--- model //模型⽬目录 | | |--- index.js |--- view //模板⽬目录 | |--- index_index.html |--- www | |--- static //存放静态资源⽬目录 | | |--- css | | |--- img | | |--- js ,添加如下的配置,如果已经存在则不需要再添加: const view = require('think-view'); module.exports = [ view ] 通过添加 view 的扩展,让框架有渲染模板文件的能力。 配置 View Adapter 在 src/config/adapter.js 中添加如下的配置,如果已经存在则不需要再添加: const nunjucks = require join(think.ROOT_PATH, 'view'), //模板⽂文件的根⽬目录 sep: '_', //Controller 与 Action 之间的连接符 extname: '.html' //⽂文件扩展名 }, nunjucks: { handle: nunjucks } } 这里用的模板引擎是 nunjucks ,项目中可以根据需要修改。 具体使用0 码力 | 129 页 | 2.12 MB | 1 年前3 ThinkJS 3.0 中文文档js | |--- logic //logic ⽬目录 | | |--- index.js | |--- model //模型⽬目录 | | |--- index.js |--- view //模板⽬目录 | |--- index_index.html |--- www | |--- static //存放静态资源⽬目录 | | |--- css | | |--- img | | |--- js ,添加如下的配置,如果已经存在则不需要再添加: const view = require('think-view'); module.exports = [ view ] 通过添加 view 的扩展,让框架有渲染模板文件的能力。 配置 View Adapter 在 src/config/adapter.js 中添加如下的配置,如果已经存在则不需要再添加: const nunjucks = require join(think.ROOT_PATH, 'view'), //模板⽂文件的根⽬目录 sep: '_', //Controller 与 Action 之间的连接符 extname: '.html' //⽂文件扩展名 }, nunjucks: { handle: nunjucks } } 这里用的模板引擎是 nunjucks ,项目中可以根据需要修改。 具体使用0 码力 | 129 页 | 2.12 MB | 1 年前3
 2022年美团技术年货 合辑TensorFlow 在美团外卖推荐场景的 GPU 训练优化实践 855 CompletableFuture 原理与实践 - 外卖商家端 API 的异步化 879 工程效能 CI/CD 之流水线引擎的建设实践 912 美团外卖搜索基于 Elasticsearch 的优化实践 933 美团图灵机器学习平台性能起飞的秘密(一) 953 提升资源利用率与保障服务质量,鱼与熊掌不可兼得? 部署时优化 3.1 图优化 量化部署时,可以直接利用 TensorRT 的 PTQ 接口进行生成量化引擎,但是这种 方法往往精度损失较大。因此,一般要先进行 QAT,使量化模型精度满足业务需求, 然后导出带有“Quant”、“DeQuant”节点的 ONNX,最后再利用 TensorRT 构 建量化引擎。我们发现这两种方案最终生成的图结构并不相同,导致部署模型的实际 运行效率存在很大的差异,通常 还有较大差距。我们对此现 象进行了细致的分析,发现原因是 QAT 引入的“Quant”,“DeQuant”节点打破了 原有 TensorRT 的融合策略,导致了很多算子无法融合,从而影响了最终量化引擎 的性能。在这一节中,我们以 YOLOv6s_repopt 为例,展示一种定位具体瓶颈的图 优化方法。在量化实践中,图优化是一个很实用的手段,我们可以依法炮制,提升模 型的 QPS。 算法 <0 码力 | 1356 页 | 45.90 MB | 1 年前3 2022年美团技术年货 合辑TensorFlow 在美团外卖推荐场景的 GPU 训练优化实践 855 CompletableFuture 原理与实践 - 外卖商家端 API 的异步化 879 工程效能 CI/CD 之流水线引擎的建设实践 912 美团外卖搜索基于 Elasticsearch 的优化实践 933 美团图灵机器学习平台性能起飞的秘密(一) 953 提升资源利用率与保障服务质量,鱼与熊掌不可兼得? 部署时优化 3.1 图优化 量化部署时,可以直接利用 TensorRT 的 PTQ 接口进行生成量化引擎,但是这种 方法往往精度损失较大。因此,一般要先进行 QAT,使量化模型精度满足业务需求, 然后导出带有“Quant”、“DeQuant”节点的 ONNX,最后再利用 TensorRT 构 建量化引擎。我们发现这两种方案最终生成的图结构并不相同,导致部署模型的实际 运行效率存在很大的差异,通常 还有较大差距。我们对此现 象进行了细致的分析,发现原因是 QAT 引入的“Quant”,“DeQuant”节点打破了 原有 TensorRT 的融合策略,导致了很多算子无法融合,从而影响了最终量化引擎 的性能。在这一节中,我们以 YOLOv6s_repopt 为例,展示一种定位具体瓶颈的图 优化方法。在量化实践中,图优化是一个很实用的手段,我们可以依法炮制,提升模 型的 QPS。 算法 <0 码力 | 1356 页 | 45.90 MB | 1 年前3
共 297 条
- 1
- 2
- 3
- 4
- 5
- 6
- 30














