之流水线引擎的建设实践 912
美团外卖搜索基于 Elasticsearch 的优化实践 933
美团图灵机器学习平台性能起飞的秘密(一) 953
提升资源利用率与保障服务质量,鱼与熊掌
不可兼得? 971
标准化思想及组装式架构在后端 BFF 中的实践 992
外卖广告大规模深度学习模型工程实践 | 美团外卖广告工程实践专题连载 1013
数据库全量 SQL 分析与审计系统性能优化之旅 ### 2.1 重参数化优化器
YOLOv6 网络中大量使用重参数化结构,在提高模型训练精度的同时能够显著降低模型部署推理延时,但也带来了模型量化部署方面的难题。对重参数化网络的直接量化一般会带来
不可接受的精度损失,例如 RepVGG-B1 $ ^{[2]} $ 网络在 ImageNet 数据集上的浮点精度为 78.42%,采用 TensorRT 后量化(PTQ)的量化模型精度则降低为 54.55%。 YOLOv6s_repvgg 的数值分布
对于量化操作更加友好。进一步采用 TRT 的后量化方法进行模型量化部署,可以看到 YOLOv6s_repvgg 的量化网络精度降低了 7.4%,在实际工程中基本
不可用。而 YOLOv6s_repopt 网络的量化模型精度为 40.9%,精度损失仅为 1.5%,相比原版模型有了极大的改善。
| 数据集 | 0 码力 |
1356 页 |
45.90 MB
| 2 年前 3 2.10.2
3.
迁移到新版内存管理器 1.10.2.10.3
4.
旧版内存管理器 1.10.2.10.4
1.
不可变性与并发 1.10.2.10.4.1
2.
并发概述 1.10.2.10.4.2
3.
并发可变性 1.10.2.10.4.3
4.
并发与协程 1.10.2.10.4.4
11.
调试 Kotlin/Native 1 LLVM 的 Kotlin 编译器后端以及 Kotlin 标准库的原生实现。
为什么选用 Kotlin/Native?
Kotlin/Native 的主要设计目标是让 Kotlin 可以为不希望或者不可能使用 虚拟机 的平台(例如嵌入式设备或者 iOS)编
译。 它非常适合开发人员需要生成无需额外运行时或虚拟机的自包含程序的情况。
目标平台
Kotlin/Native 支持以下平台:
macOS features introduced as previews in previous releases:
用委托实现内联类的内联值
下划线操作符用于类型参数
稳定版构建器推断
稳定版选择加入要求
稳定版绝对不可空类型
内联类的内联值可以通过委托来实现
If you want to create a lightweight wrapper for a value or class instance, it's 0 码力 |
- 页 |
22.65 MB
| 2 年前 3 21 Welcome Back ..... 120
22 借用 ..... 121
22.1 借用值 ..... 121
22.2 借用检查 ..... 122
22.3 内部可变性 ..... 123
22.4 练习:健康统计 ..... 124
22.4.1 解答 ..... 125
23 结构体生命周期 ..... 128
23.1 生命周期注解 . use
Ctrl + Enter
to execute the code when focus is in the text box.
如上所示, 大多数代码示例都可修改。少数代码示例可能会因以下原因而不可修改:
- 嵌入的 Playground 无法执行单元测试。将代码复制并粘贴到实际 Playground 中,以演示单元测试。
- 嵌入的 Playground 会在离开页面后丢失编辑状态!因此,学员应使用本地安装的 println!("x: {x}")
// x = 20;
// println!("x: {x}")
}
• 取消备注 x = 20,以证明变量默认是不可变的。添加 mut 关键字以允许进行更改。
- 这里的 i32 是变量的类型。编译时必须已知类型,但在很多情况下,由于具有类型推理功能(稍后介绍),程序员可以忽略这一点。
### 5.3 值
0 码力 |
359 页 |
1.33 MB
| 1 年前 3 iOS 集成 1.10.2.10.2
迁移到新版内存管理器 1.10.2.10.3
旧版内存管理器 1.10.2.10.4
不可变性与并发 1.10.2.10.4.1
并发概述 1.10.2.10.4.2
并发可变性 1.10.2.10.4.3
并发与协程 1.10.2.10.4.4
调试 Kotlin/Native 1.10.2.11 的 Kotlin 编译器后端以及 Kotlin 标准库的原生实现。
## 为什么选用 Kotlin/Native?
Kotlin/Native 的主要设计目标是让 Kotlin 可以为不希望或者不可能使用 虚拟机的平台(例如嵌入式设备或者 iOS)编译。它非常适合开发人员需要生成无需额外运行时或虚拟机的自包含程序的情况。
## 目标平台
Kotlin/Native 支持以下平台:
• macOS introduced as previews in previous releases:
用委托实现内联类的内联值
下划线操作符用于类型参数
稳定版构建器推断
稳定版选择加入要求
稳定版绝对不可空类型
## 内联类的内联值可以通过委托来实现
If you want to create a lightweight wrapper for a value or class instance 0 码力 |
2049 页 |
45.06 MB
| 2 年前 3 }
比如当我要设置数组大小为 4 时,不能只 nv = 4 还要重新分配数组内存,从而修改数组起始地址 v
## 封装:不变性
常遇到:当需要修改一个成员时,其他也成员需要被修改,否则出错
这种情况出现时,就意味着你需要把成员变量的读写封装为成员函数


## 不变性:请勿滥用封装
- 仅当出现“修改一个成员时,其他也成员要被修改,否则出错”的现象时,才需要 `getter/setter` 封装。
- 各个成员之间相互正交,比如数学矢量类Vec3,就没必要去 类对象,我们还是需要实现一下的。
- 发现了吗?其实不管是 size/resize 这样的 get/set 模式也好;自定义的拷贝构造函数也好;RAII 保证异常安全也好;都是在为面向对象思想的“封装:不变性”服务。
- 即:保证任何单个操作前后,对象都是处于正确的状态,从而避免程序读到错误数据(如空悬指针)的情况。
Vector(Vector const &other) {
m_size 0 码力 |
96 页 |
16.28 MB
| 2 年前 3
|