手机访问卡顿,看如何使用内存加速存储访问速度!

SSDFans 2024-12-18 07:28


本篇文章是首尔大学发表在FAST 2023上的文章。随着闪存容量的增加,逻辑地址到物理地址的映射表项也相应增加。映射表项通常存放在设备控制器中的SRAM来加速访问。然而由于成本问题SRAM一直无法增长,这使得其中只能存放很少量的数据表项。而为了解决这一问题,现有工作使用部分主机端内存(high performance booster, HPB)来缓存映射表项。然而文章中发现,现有的HPB管理策略并不能够很好的提升用户体验。这是因为现有的管理策略通常可能会将前台应用的表项剔除。而为了解决这一问题,本文设计提出HPBvalve技术来尽量缓存前台应用的映射表项。通过在搭建的真实平台上的验证,该技术能够很好的提升用户体验。

背景

当主机下发请求时会附上逻辑地址,UFS收到请求后会在闪存转换层(FTL)进行地址转换,将逻辑地址转换为物理地址,如图1所示。记录从逻辑地址到物理地址映射信息的称之为映射表项。而为了加速这一过程,UFS中通常配备一个较小的SRAM用于缓存常用的映射表项。然而随着闪存的迅速发展,SRAM空间越发不够存储经常访问的表项。例如对于1TB的UFS设备配备512KB SRAM,则只有0.0005%的表项能够缓存在其中。显然这远远不够。而为了缓解这一问题,现有工作提出使用部分主机内存(HPB)来缓存映射表项。相较于SRAM来说,主机能够提供较大的内存,从而缓存更多的映射表项来加速访问。

动机

为了展示映射表项对用户体验的影响,文章中在搭建的平台上做了很多实验。平台将在实验部分介绍。其中设备容量为1TB,设备SRAM为512KB,HPB大小为256MB。OPTIMAL为所有映射表项都命中在设备SRAM的情况。应用启动时间和加载时间作为衡量用户体验的指标。

图2展示了映射表项访问确实对用户感知延迟的影响。从中我们可以得出三个结论:

  1. 通过对比OPTIMAL和其他两个可以看出,启动延迟和加载延迟都得到了较为明显的提升。从绝对值来看,分别是220ms和183ms,已经是用户可感知的延迟。

  2. 通过比较UFS和UFS+HPB可以发现,尽管HPB能够提供较大的容量,然而现有的管理策略并不能够利用其很好的提升用户体验。

  3. HPB从主机端借用了较多的内存反而会使得主机内存压力增加。

图3中进一步分析了HPB中前台应用和后台应用中映射表项的命中情况。从图中我们可以看出前台应用的映射表项缺失情况比后台应用更加严重,这是因为:1)传统HPB采用基于计数的取映射表项策略。而后台应用比前台应用会下发更多的读请求,这使得后台应用的映射表项的读取计数通常比前台应用的高。因此会更倾向于将后台应用的映射表项取到HPB中。2)传统HPB采用基于时间的映射表项剔除策略。然而当用户切换应用并使用一段时间后,刚才使用应用的映射表项也将会被剔除。这导致用户再切换回来后映射表项缺失,影响用户体验。

图4和图5分析了HPB无法很好预测哪些表项会被使用的原因。这是因为在应用启动的时候,会有大量随机的I/O请求,并且覆盖很大的逻辑地址空间。这使得很难提高表项命中率。

图6探索了HPB大小对用户体验的影响。从中我们可以发现最佳的HPB大小随着应用不同而不同。同时随着HPB的大小增加,前台应用下发的读取请求也在增加。这是因为HPB分配过多内存导致内存压力过大,会杀掉一些应用。当这些应用(cold state)之后再被访问的时候不仅启动时间增加,而且需要下发更多的读取请求,如表1所示。图7展示的是随着HPB大小的增加,越来越多的应用会被杀掉。

设计

为了解决上述问题,文章中提出了HPBvalve(Hvalve),如图8所示。Hvalve包含了五个部分。其中app-detector和mem-detector分别用于判断应用是否为前台应用、应用状态变化和内存压力情况。FG profiler维护了近期使用应用会访问的映射表项,用于预取映射表项。L2P manager用于单独管理前台应用的映射表项。HPB regulator用于根据内存压力情况调整HPB大小,避免过多应用被杀掉。

1. 前台/后台应用识别Hvalve在bio结构体中创建新的变量UID,用于记录下发请求所属的应用。当bio创建请求的时候,UID也会集成在请求中。同时app detector会通过安卓活动任务管理器(android activity task manager)来检测是否有新的前台应用启动。如果有一个新的前台应用启动时,将该应用的UID传递给HPB。这样HPB可以将该UID与请求中携带的UID进行比较,从而判断应用是否为前台应用。

2. L2P management:Hvalve维护了三个LRU链表,分别用户记录活跃前台应用、非活跃前台应用和后台应用的映射表项。当新的前台应用启动时,会将之前的前台应用表项降级到非活跃前台应用链表中。当需要剔除表项的时候优先提出后台应用表项,然后是非活跃前台应用表项。而前台应用表项不会被剔除。

3. Hvalve缓存策略:1)其中依旧延续传统的基于访问计数的方式来缓存经常被访问的表项。2)对于前台应用缓存表项未命中时,立即将该表项取到HPB中。3)根据FG profiler预取表项。

4. 前台应用分析和预取:图9展示了FG-profiler中记录的信息。FG-profiler记录近期访问应用的映射表项。同时根据app detector基于安卓活跃任务管理器发出的应用启动开始和启动结束信号,可以将映射表项分为启动表项和运行表项。当一个应用被切换为前台应用的时候,hvalve会先判断该应用对应的映射表项是否记录在FG-profiler中。如果在,则将记录的映射表项预取到HPB中,以加速访问,如图10所示。

5. HPB大小动态调整:mem-detector时刻监测LMKD。当内存不足激活LMKD杀进程时,mem-detector会将将要杀掉的进程UID传送给HPB-regulator。HPB-regulator会判断该应用在FG-profiler中是否有记录,如果没有说明不是近期访问过的应用,则直接杀掉。如果有,则会根据LMKD需要释放内存的大小剔除HPB中的表项。优先提出后台应用表项,然后是非活跃应用表项。如果剔除之后内存仍然不足,则需要重新唤醒LMKD选取应用杀掉。该过程如图11所示。

实验

该文章为了探寻HPB不同方面的影响,自己搭建了一个平台,如图12所示。其中使用高性能SSD作为主要存储,同时简单实现了HPB的管理策略,来进行映射表项的存取。应用场景也如图12所示。

性能:性能提升如图13所示。Hvalve相较于UFS和UFS+HPB均有所改善,并且接近OPTIMAL的场景。

表项未命中模式:图14展示了前台应用表项缺失随着运行时间的分布。可以看出Hvalve很好的控制住了在应用刚运行时候的缺失率高的问题。

命中率:图15展示了Hvalve的命中率情况。相较于HPB-only,Hvalve很好的提升了应用冷启动时的映射表项命中率。

HPB大小动态调整效果:图16展示了Hvalve动态调整对前台应用的影响。可以看出Hvalve相较于传统的HPB管理策略减少了被杀掉的应用,同时很好的保护了高优先级的应用,减少了应用下发的读请求数量。图17可以观察到HPB大小动态调整的过程。

总结

为了提高HPB的使用效率从而提升用户体验,本文在自己搭建的平台上深入的分析了当前HPB管理策略存在的问题,并在此基础上设计了Hvalve。Hvalve通过对前台应用映射表项的识别和管理,提高了前台应用的访问速度,提升用户体验。同时根据内存压力动态调整HPB大小,避免导致内存压力过大而杀掉过多的应用,影响用户体验。实验结果显示,Hvalve提升了用户前台应用表项的命中率,减少了被杀掉的应用,提升了用户体验。

SSDFans AI+IOT+闪存,万物存储、万物智能、万物互联的闪存2.0时代即将到来,你,准备好了吗?
评论
  • 百佳泰特为您整理2024年12月各大Logo的最新规格信息。——————————USB▶ 百佳泰获授权进行 USB Active Cable 认证。▶ 所有符合 USB PD 3.2 标准的产品都有资格获得USB-IF 认证——————————Bluetooth®▶ Remote UPF Testing针对所有低功耗音频(LE Audio)和网格(Mesh)规范的远程互操作性测试已开放,蓝牙会员可使用该测试,这是随时测试产品的又一绝佳途径。——————————PCI Express▶ 2025年
    百佳泰测试实验室 2024-12-20 10:33 69浏览
  • 在强调可移植性(portable)的年代,人称「二合一笔电」的平板笔电便成为许多消费者趋之若鹜的3C产品。说到平板笔电,不论是其双向连接设计,面板与键盘底座可分离的独特功能,再加上兼具笔电模式、平板模式、翻转模式及帐篷模式等多种使用方式,让使用者在不同的使用情境下都能随意调整,轻巧灵活的便利性也为多数消费者提供了绝佳的使用体验。然而也正是这样的独特设计,潜藏着传统笔电供货商在产品设计上容易忽视的潜在风险。平板笔电Surface Pro 7+ 的各种使用模式。图片出处:Microsoft Comm
    百佳泰测试实验室 2024-12-19 17:40 156浏览
  • 沉寂已久的无人出租车赛道,在2024年突然升温了。前脚百度旗下萝卜快跑,宣布无人驾驶单量突破800万单;后脚特斯拉就于北京时间10月11日上午,召开了以“We,Robot”为主题的发布会,公布了无人驾驶车型Cybercab和Robovan,就连低调了好几个月的滴滴也在悄悄扩编,大手笔加码Robotaxi。不止是滴滴、百度、特斯拉,作为Robotaxi的重磅选手,文远知行与小马智行,也分别在10月份先后启动美股IPO,极氪也在近日宣布,其与Waymo合作开发的无人驾驶出行汽车将大规模量产交付,无人
    刘旷 2024-12-19 11:39 130浏览
  • 由于该文反应热烈,受到了众多工程师的关注,衷心感谢广大优秀工程师同仁的建言献策。特针对该技术点更新一版相关内容! 再次感谢大家的宝贵建议!填充铜(Solid Copper)和网格铜(Hatched Copper)是PCB设计中两种不同的铺铜方式,它们在电气性能、热管理、加工工艺和成本方面存在一些区别:1. 电气性能:填充铜:提供连续的导电层,具有极低的电阻和最小的电压降。适合大电流应用,并能提供优秀的电磁屏蔽效果,显著提高电磁兼容性。网格铜:由于铜线之间存在间隔,电阻相对较高,电压降也
    为昕科技 2024-12-18 17:11 120浏览
  • //```c #include "..\..\comm\AI8051U.h"  // 包含头文件,定义了硬件寄存器和常量 #include "stdio.h"              // 标准输入输出库 #include "intrins.h"         &n
    丙丁先生 2024-12-20 10:18 64浏览
  • By Toradex秦海1). 简介为了保证基于 IEEE 802.3 协议设计的以太网设备接口可以互相兼容互联互通,需要进行 Ethernet Compliance 一致性测试,相关的技术原理说明请参考如下文章,本文就不赘述,主要展示基于 NXP i.MX8M Mini ARM 处理器平台进行 1000M/100M/10M 以太网端口进行一致性测试的测试流程。https://www.toradex.com
    hai.qin_651820742 2024-12-19 15:20 120浏览
  •         不卖关子先说感受,真本书真是相见恨晚啊。字面意思,见到太晚了,我刚毕业或者刚做电子行业就应该接触到这本书的。我自己跌跌撞撞那么多年走了多少弯路,掉过多少坑,都是血泪史啊,要是提前能看到这本书很多弯路很多坑都是可以避免的,可惜这本书是今年出的,羡慕现在的年轻人能有这么丰富完善的资料可以学习,想当年我纯靠百度和论坛搜索、求助啊,连个正经师傅都没有,从软件安装到一步一布操作纯靠自己瞎摸索,然后就是搜索各种教程视频,说出来都是泪啊。  &
    DrouSherry 2024-12-19 20:00 63浏览
  • You are correct that the length of the via affects its inductance. Not only the length of the via, but also the shape and proximity of the return-current path determines the inductance.   For example, let's work with a four-layer board h
    tao180539_524066311 2024-12-18 15:56 122浏览
  • 户外照明的“璀璨王者”,艾迈斯欧司朗OSCONIQ® C3030降临啦全球领先的光学解决方案供应商艾迈斯欧司朗(瑞士证券交易所股票代码:AMS)近日宣布,推出新一代高性能LED——OSCONIQ® C 3030。这款尖端LED系列专为严苛的户外及体育场照明环境而设计,兼具出色的发光强度与卓越的散热效能。其支持高达3A的驱动电流及最大9W的功率输出,以紧凑扁平封装呈现卓越亮度和可靠性,确保高强度照明持久耐用且性能出众。应用领域01体育场及高杆照明OSCONIQ® C 3030以卓越的光通量密度、出
    艾迈斯欧司朗 2024-12-18 14:25 124浏览
  • 耳机虽看似一个简单的设备,但不仅只是听音乐功能,它已经成为日常生活和专业领域中不可或缺的一部分。从个人娱乐到专业录音,再到公共和私人通讯,耳机的使用无处不在。使用高质量的耳机不仅可以提供优良的声音体验,还能在长时间使用中保护使用者听力健康。耳机产品的质量,除了验证产品是否符合法规标准,也能透过全面性的测试和认证过程,确保耳机在各方面:从音质到耐用性,再到用户舒适度,都能达到或超越行业标准。这不仅保护了消费者的投资,也提升了该公司在整个行业的产品质量和信誉!客户面临到的各种困难一家耳机制造商想要透
    百佳泰测试实验室 2024-12-20 10:37 103浏览
  • 汽车驾驶员监控系统又称DMS,是一种集中在车辆中的技术,用于实时跟踪和评估驾驶员状态及驾驶行为。随着汽车产业智能化转型,整合AI技术的DMS逐渐成为主流,AI模型通过大量数据进行持续训练,使得驾驶监控更加高效和精准。 驾驶员监测系统主要通过传感器、摄像头收集驾驶员的面部图像,定位头部姿势、人脸特征及行为特征,并通过各种异常驾驶行为检测模型运算来识别驾驶员的当前状态。如果出现任何异常驾驶行为(如疲劳,分心,抽烟,接打电话,无安全带等),将发出声音及视觉警报。此外,驾驶员的行为数据会被记录
    启扬ARM嵌入式 2024-12-20 09:14 55浏览
  • ​本文介绍PC电脑端运行VMware环境下,同时烧录固件检测不到设备的解决方法。触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566芯片,类树莓派设计,Laval官方社区主荐,已适配全新OpenHarmony5.0 Release系统!PC端烧录固件时提示没有发现设备按照各型号烧录手册中进入loader模式的操作方法,让开发板连接到PC端。正常来说开发板烧录时会显示“发现一个LOADER设备”,异常情况下,会提示“没有发现设备”,如下图所示: 解决步骤当在烧录系统固
    Industio_触觉智能 2024-12-18 18:07 79浏览
  • 随着工业自动化和智能化的发展,电机控制系统正向更高精度、更快响应和更高稳定性的方向发展。高速光耦作为一种电气隔离与信号传输的核心器件,在现代电机控制中扮演着至关重要的角色。本文将详细介绍高速光耦在电机控制中的应用优势及其在实际工控系统中的重要性。高速光耦的基本原理及优势高速光耦是一种光电耦合器件,通过光信号传递电信号,实现输入输出端的电气隔离。这种隔离可以有效保护电路免受高压、电流浪涌等干扰。相比传统的光耦,高速光耦具备更快的响应速度,通常可以达到几百纳秒到几微秒级别的传输延迟。电气隔离:高速光
    晶台光耦 2024-12-20 10:18 93浏览
  •         在上文中,我们介绍了IEEE 802.3cz[1]协议提出背景,旨在定义一套光纤以太网在车载领域的应用标准,并介绍了XMII以及PCS子层的相关机制,在本篇中,将围绕IEEE 802.3cz-MultiGBASE-AU物理层的两个可选功能进行介绍。EEE功能        节能以太网(Energy-Efficient Ethernet)是用于在网络空闲时降低设备功耗的功能,在802.3cz的定义中,链
    经纬恒润 2024-12-19 18:47 57浏览
  • 习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-18 14:02 120浏览
我要评论
0