JVM 内存模型## JVM 内存模型 0 码力 | 1 页 | 48.42 KB | 2 年前3
Practical memory pool based allocators for Modern C++0 码力 | 49 页 | 986.95 KB | 1 年前3
优化小实例## PyTorch ## 2 D函数优化实例 主讲人:龙良曲 ## Himmelblau function $$ f(x,y)=(x^{2}+y-11)^{2}+(x+y^{2}-7)^{2}. $$   问题引入 01 难点攻克 02 主动式内存缓存框架 03 总结 04 ## 第一部分 ## 问题引入 ## 为什么能有极致的性能? 主动式内存缓存 如何优化? - 支持灵活的信息过滤条件  ## 内存不够用怎么办? 存储扩展,冷热数据交换  同样的性能,需要更少的硬件资源,降低成本 02 核心数据在本地,依赖少,更稳定 ## “ 通过本次分享,可以带来哪些收获? • 千万级内存对象,GC严重耗时,如何解决? - 复杂的查询场景,内存数据如何高效组织? • 主动式内存缓存,如何保证数据实时性? - 数据太多,内存不够用,如何进行存储扩展? ## 第二部分 难点攻克 ## “ ## 数据一致性如何保证? ## 一 致性 同步、更新 !0 码力 | 48 页 | 6.06 MB | 2 年前3
基于静态分析的Rust内存安全缺陷检测研究基于静态分析的Rust内存安全缺陷检测研究 报告人:徐辉 复旦大学 报告日期:2022.11.25 ## 大纲 一、问题背景 二、Rust指针缺陷检测方法 三、实验结论 四、论文发表心得 ## 大纲 一、问题背景 二、Rust指针缺陷检测方法 三、实验结论 四、论文发表心得 ## Rust语言 ## 系统级安全编程语言 ■ 内存安全 ■ 4_5.jpg) AWS, Huawei, Google, Microsoft, Mozilla... ## Rust如何保障内存安全? ☐ 内存安全问题产生的主要原因之一是指针别名导致悬空指针 ■ 手动释放内存或调用析构函数 函数返回时发生的自动析构或内存释放 ☐ Rust设计的目标之一是编译时检查指针别名(共享可变引用) 但一般意义上的指针分析是NP-hard问题 智能指针可行,但作为运行时方案,效率低 9ba55bcfd8da3bffc5dde2647ec86e55/p9_2.jpg) ## Rust实际表现如何? ☐ 调研了2020年12月31日前报告的185个内存安全漏洞[TOSEM'21] ■ Rust在内存安全防护方面效果不错 - 所有的漏洞(除了1个编译器漏洞)都需要unsafe code - 大部分CVEs都是 API soundness的问题(未在可执行程序中发现)0 码力 | 28 页 | 1.55 MB | 2 年前3
Java 应用与开发 - Java 内存模型与分配机制Java 内存模型与分配机制 王晓东 wangxiaodongQouc.edu.cn 中国海洋大学 September 30, 2018 Java 内 学习目标 1. 理解 JVM 内存模型,掌握 JVM 内存构成 2. 理解 Java 程序的运行过程,学会通过调 HH 变化 3. 了解 Java 内存管理,认识垃圾回收 4. 建立编程时高效利用内存、避免内存溢上 D 的理 的理 试模式观察内存的 大网 Java 内存模型 Java 程序内存运行分析 Java 内存管理建议 大纲 Java 内存模型 Java 程序内存运行分析 Java 内存管理建议 大网 Java 内存模型 Java 程序内存运行分析 Java 内存管理建议 接下来… Java 内存模型 大网 Java 内存模型 Java 内存管理建议 Java 虚拟机 (Java Virtual Machine, JVM )0 码力 | 44 页 | 818.30 KB | 2 年前3
联想-贺钢架构工作在国际化项目中的应用实例架构工作在国际化项目中的应用实例 贺钢 2016-12-17  ## 个人简介 · 深信服科技 · 腾讯 ·联想深圳中国开发实验室 ## 前言 · 国际化项目的一些不同点导致架构工作的一些不同 • 应用实例体现这些不同点 ## 广告 ## ·要求不同: 各国法律法规(版权,协议,第三方,accessibility),安全性和隐私... ## • 地域不同: 服务器的部署, 用户的访问, 组织架构, 团队沟通... ## 项目实例 -- XA项目背景及需求 · 多设备协作 PC, Mobile, Pad, Cloud... • 跨设备及云智能搜索 ·语音等多种输入方式 ## 用例示意图 XA of Input technology ## 3 D Camera  ## 项目实例 -- 项目开发团队 |项目|备注| |---|---| |项目名称|XA| |支持国家|160| |多语言支持|27种语言| |架构师|5-8人| |开发人员|中国,美国,日本,印度| |三方合作伙伴|6-7家|0 码力 | 53 页 | 2.36 MB | 2 年前3
1.5 Go 语言构建高并发分布式系统实践运维管理的go语言编写的常驻service服务实例接近3000个。 ## 业务场景多样: 支持聊天场景业务,稳定支持多款聊天业务app 单通道多app复用 上行通道,回调支持 对智能硬件产品,提供定制化消息推送与转发服务 ## 性能满足需要: 线上单机最高160w长连接(24核 E5-2630 @ 2.30GHz 64G内存)qps在2~5w(取决于协议版本,业务逻辑,接入端网络状况) ,业务逻辑,接入端网络状况) 测试环境,可以通过300w长连接压测(网络,连接稳定,无带宽限制,实际可以更高,决定于广播时候业务内存开销的cpu消耗带来的心跳或者业务延时能否接受)  ## 消息系统规模架构:重业务逻辑 ## 消息系统简要架构 d事件通知的方式,根据epoll获取的fd绑定的回调函数和参数进行回调操作| |对外的通信采取阻io或者也可以go出去,不阻塞主循环|对外通信信全局消息list,在映射到的eventloop上开连接池进行消耗| ## 目录 go语言在基础服务开发领域的优势? 我遭遇了哪些挑战? 如何应对的? 具有go特色的运维 ## 问题与瓶颈 为JVM提供基于 REDIS的高性能驻内存数据网格(IMDG) ULTRA-FAST REDIS BASED IN-MEMORY DATA GRID FOR JAVA ’ alt=‘OCR图片’/> Redis客户端 ’ alt=‘OCR图片’/> Redis缓存 业务逻辑代码与数据源关联紧密 业务逻辑可能会有多个数据源 缓存属于附加产物 ’ alt=‘OCR图片’/>0 码力 | 19 页 | 1004.16 KB | 3 月前3
C++高性能并行编程与优化 - 课件 - 02 现代 C++ 入门:RAII 内存管理# 现代 C++ 入门:RAII 内存管 理 by 彭于斌 (github@archibate) 往期录播:https://space.bilibili.com/263032155 PPT 和代码:https://github.com/parallel101/course ## 高性能并行编程与优化 - 课程大纲 • 分为前半段和后半段,前半段主要介绍现代 C++,后半段主要介绍并行编程与优化。 入门:常用 STL 容器,RAII 内存管理 3. 现代 C++ 进阶:模板元编程与函数式编程 4. 编译器如何自动优化:从汇编角度看 C++ 5. C++11 起的多线程编程:从 mutex 到无锁并行 6. 并行编程常用框架:OpenMP 与 Intel TBB 7. 被忽视的访存优化:内存带宽与 cpu 缓存机制 8. GPU 专题:wrap 调度,共享内存,barrier 9. 并行 return 0; } 比如当我要设置数组大小为 4 时,不能只 nv = 4 还要重新分配数组内存,从而修改数组起始地址 v ## 封装:不变性 常遇到:当需要修改一个成员时,其他也成员需要被修改,否则出错 这种情况出现时,就意味着你需要把成员变量的读写封装为成员函数 












