CN110069371B - 一种识别固态硬盘性能的方法及固态硬盘 - Google Patents
一种识别固态硬盘性能的方法及固态硬盘 Download PDFInfo
- Publication number
- CN110069371B CN110069371B CN201910289320.6A CN201910289320A CN110069371B CN 110069371 B CN110069371 B CN 110069371B CN 201910289320 A CN201910289320 A CN 201910289320A CN 110069371 B CN110069371 B CN 110069371B
- Authority
- CN
- China
- Prior art keywords
- functional module
- solid state
- state disk
- monitoring point
- numbers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种识别固态硬盘性能的方法及固态硬盘,当任意两个监测点对应的I/O数的差值小于第一预设阈值时,确定任意两个监测点之间对应的功能模块为异常状态,可以大大提升工程师解决固态硬盘性能的效率。本发明实施例方法包括:在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;通过监测点监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,确定任意两个相邻监测点之间的功能模块为异常状态。
Description
技术领域
本发明涉及固态硬盘的性能领域,尤其涉及一种识别固态硬盘性能的方法及固态硬盘。
背景技术
固态硬盘(Solid State Disk,SSD)的固件负责将主机下发的命令(也可称为输入/输出(Input/Output,I/O))解析后传递给闪存芯片,闪存芯片处理完成后SSD固件将处理结果报告给主机。其中SSD固件内部又分为好几个模块,如图1所示,为现有技术中I/O流水线的示意图。
在SSD固件中,每个模块都是从上游功能模块获得I/O处理完后传递给下一个功能模块,由于NAND Flash闪存的复杂特性,SSD固件中需要有读写Cache、垃圾回收、磨损均衡、映射表的维护等设计,这些设计以内部任务形式不定时调用,在主机长时间压力测试性能期间,性能表现可能会忽高忽低。为了找出性能下降的原因,首先得确定I/O在哪个模块处理时间比较长,即找出性能下降所在。
现有技术中SSD固件较难在第一时间发现问题,因为性能突降的持续时间可能很短(秒级别),主机应用层发现性能下降时SSD固件内部可能已经恢复正常。
发明内容
本发明实施例提供了一种识别固态硬盘性能的方法及固态硬盘,用于在固态硬盘和各功能模块之间设监测点,当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,确定该任意两个相邻监测点之间的功能模块为异常状态,从而,可以大大提升工程师解决固态硬盘性能的效率问题。
有鉴于此,本发明第一方面提出了一种识别固态硬盘性能的方法,可以包括:
在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;
通过监测点监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;
当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,确定任意两个相邻监测点之间的功能模块为异常状态;
其中,任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其上游功能模块发送的下行I/O数以及该功能模块发送至其下游功能模块的下行I/O数;或者任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其下游功能模块反馈的上行I/O数以及该功能模块反馈至其上游功能模块发送的上行I/O数。
可选的,本发明的一些实施例中,当任一监测点的相邻采样点的两个I/O数的差值小于第二预设阈值时,记录任一监测点对应功能模块的状态信息。
可选的,本发明的一些实施例中,当任一监测点的相邻采样点的两个下行I/O数的差值小于第二预设阈值时,记录发送该两个下行I/O数至任一监测点的功能模块的状态信息;或者当任一监测点的相邻采样点的两个上行I/O数的差值小于第二预设阈值时,记录反馈该两个上行I/O数至任一监测点的功能模块的状态信息。
可选的,本发明的一些实施例中,任一监测点对应的功能模块的状态信息包括时间戳、I/O数量、资源使用信息、通路信息。
本发明第二方面提供一种固态硬盘,可以包括:
处理器,通过所述处理器在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;
监测器,设置在所述监测点以监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;
记录器,当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,记录器记录任意两个相邻监测点之间的功能模块为异常状态;
其中,任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其上游功能模块发送的下行I/O数以及该功能模块发送至其下游功能模块的下行I/O数;或者任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其下游功能模块反馈的上行I/O数以及该功能模块反馈至其上游功能模块发送的上行I/O数。
可选的,在本发明的一些实施例中,当任一监测点的相邻采样点的两个I/O数的差值小于第二预设阈值时,记录器还用于记录任一监测点对应功能模块的状态信息。
可选的,在本发明的一些实施例中,当任一监测点的相邻采样点的两个下行I/O数的差值小于第二预设阈值时,记录器记录发送该两个下行I/O数至任一监测点的功能模块的状态信息;或者当任一监测点的相邻采样点的两个上行I/O数的差值小于第二预设阈值时,记录器记录反馈该两个上行I/O数至任一监测点的功能模块的状态信息。
可选的,在本发明的一些实施例中,任一监测点对应的功能模块的状态信息包括时间戳、I/O数量、资源使用信息、通路信息。
本发明实施例第三方面提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上述第一方面或者第一方面任一可选方式中所述的方法。
从以上技术方案可以看出,本发明实施例具有以下优点:
在本发明实施例中,在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;通过所述监测点监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,确定所述任意两个相邻监测点之间的功能模块为异常状态。通过任意两个监测点的两个I/O数的差值与预设阈值的比较,来确定该任意两个监测点之间对应的功能模块的异常状态,从而,可以大大提升工程师解决固态硬盘性能问题的效率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例和现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,还可以根据这些附图获得其它的附图。
图1现有技术中I/O流水线的示意图;
图2为本发明实施例所应用的检测示意图;
图3为本发明实施例中识别固态硬盘性能的方法的一个实施例示意图;
图4为本发明实施例中固态硬盘的一个实施例示意图;
图5为本发明实施例中固态硬盘的另一个实施例示意图。
具体实施方式
本发明实施例提供了一种识别固态硬盘性能的方法及固态硬盘,用于当任意两个相邻监测点对应的I/O数的差值大于第一预设阈值时,确定任意两个相邻监测点之间的功能模块为异常状态,从而,可以大大提升工程师解决固态硬盘性能问题的效率。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,都应当属于本发明保护的范围。
如图1所示中,正常情况下主机将下行I/O发送给SSD固态硬盘固件,SSD固件中各功能模块按照自己的能力处理下行I/O,处理完后将I/O发送给下游功能模块处理;下游功能模块还需将上行I/O反馈至上游功能模块。各个功能模块的处理能力有强有弱,例如有3个功能模块A、B和C,其处理能力排序为A>B>C,当系统稳定后,主机所表现出的性能瓶颈为功能模块C的处理性能。由于SSD固件特殊的设计,各功能模块会不定时处理内部任务,导致处理主机I/O的能力会降低。例如,功能模块B突然触发了内部垃圾回收任务,那么功能模块B处理主机I/O的能力会一下子降低很多,如降为B2,当B2<C时,整个系统表现出的性能瓶颈为功能模块B的处理性能,功能模块B突然触发内部垃圾回收任务的过程可能只持续几秒钟,之后模块B结束垃圾回收任务,性能恢复正常,整个系统性能瓶颈也恢复成C,然而在主机所表现出的性能是不稳定的,即SSD的服务质量不高。
这时,工程师要去分析系统性能不高的原因,往往要花费大量时间去复现问题,然后不断加入调试信息,慢慢找到导致性能下降的功能模块以及突发事件,这样将导致效率低下,如果是一些偶发性的因素导致的性能下降,可能再也复现不了问题。
其中,I/O包括主机下发的数据或信息,如读写数据、命令信息等。
主机通常指计算机硬件系统中用于放置主板及其他主要部件的容器(Mainframe)。通常包括中央处理器(Central Processing Unit,CPU)、内存、硬盘、光驱、电源、以及其他输入输出控制器和接口,如通用串行总线(Universal Serial Bus,USB)控制器、显卡、网卡、声卡等等。位于主机箱内的通常称为内设,而位于主机箱之外的通常称为外设(如显示器、键盘、鼠标、外接硬盘、外接光驱等)。通常,主机自身(装上软件后)已经是一台能够独立运行的计算机系统,服务器等有专门用途的计算机通常只有主机,没有其他外设。
其中,功能模块A可以为非易失性内存主机控制器接口规范(Non-VolatileMemoryexpress,NVME)驱动模块,负责从主机(Host)端取命令、解析命令等,功能模块B可以为FTL模块,负责高速缓冲存储器(Cache)、垃圾回收、磨损均衡、映射表管理、Flash物理快管理等,模块C可以为Flash驱动管理模块,负责跟闪存FlashArray进行交互。
本发明在SSD固件的各功能模块之间增加监测点,监测进入该模块的I/O数目,利用这些信息来实时监测各模块的处理能力,期望能及时发现并记录异常点及异常点的状态信息,以供工程师分析主机性能下降的原因。
从图1可以看出,主机的I/O顺序下行分别通过功能模块A、B、C进行数据或信息的传输,然后再按功能模块C、B、A顺序将结果返回给主机,可以在各功能模块之间建立监测点,实时统计上游功能模块下发到下游功能模块的下行I/O数以及下游功能模块反馈至上游功能模块的上行I/O数。
如图3所示,为本发明实施例中识别固态硬盘性能的方法的一个实施例示意图,可以包括:
301、在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点。
结合图2,在主机至固态硬盘之间,也即在主机至功能模块A之间设第一监测点M1,在功能模块A至功能模块B之间设第二监测点M2,在功能模块B和功能模块C之间设第三监测点M3,在功能模块C至模块功能B之间设第四监测点M4,在功能模块B至功能模块A之间设第五监测点M5,固态硬盘至主机之间,也即功能模块A至主机之间设第六监测点M6。
可以理解的是,可以通过监测点的监测器,也即是计数器记录流经它的I/O数,来一个I/O计数器就加1。例如:这些计数器每隔1秒会被SSD固件系统读取一次(采样)。
需要说明的是,监测点与固态硬盘中的功能模块可以是一一对应的关系。固态硬盘中各功能模块包括各上游功能模块和各下游功能模块。
302、通过监测点监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数。
通过第一监测点M1监测主机下发到固态硬盘的功能模块A的下行I/O数,通过第二监测点M2监测功能模块A发送到功能模块B的下行I/O数,通过第三监测点M3监测功能模块B发送到功能模块C的下行I/O数,通过第三监测点监测功能模块B发送到功能模块C的下行I/O数,通过第四监测点M4监测功能模块C反馈到功能模块B的上行I/O数,通过第五监测点M5监测功能模块B反馈到功能模块A的上行I/O数,通过第六监测点M6监测功能模块A反馈到主机的上行I/O数。
可以理解的是,第一监测点M1、第二监测点M2、第三监测点M3、第四监测点M4、第五监测点M5和第六监测点M6都会对应的记录I/O数。
示例性的,系统中建立1—100s(秒)的采样点,实时记录从上游功能模块到下游功能模块的I/O数。
每隔一秒(这个数值可根据实际需求而配置),系统记录第一监测点至第六监测点(M1-M6)的数值,将对应的I/O数缓存在内存中,假设该内存可存储最近100个采样点的I/O数(满了后可以覆盖旧的数据),如表1:
表1:监测点采样值
303、当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,确定任意两个相邻监测点之间的功能模块为异常状态。
如表1所示,同一采样点M1—M6的值是依次递减的,达到稳定状态时,相邻监测点I/O数的差值维持在第一预设阈值,上表第1、2、3采样点的各相邻监测点的I/O数的差值维持在第一预设阈值10I/OPS(每秒处理的I/O数目)。可以理解的,Mx-My(x小于y)的值就相当于监测点Mx和My中间模块的实际处理能力。举个例子,在同一采样点4时,若功能模块A正常时,其监测点M2在第4采样点的I/O数应该是140I/OPS,M1-M2的值为10I/OPS;但若功能模块A出现异常时,其处理从主机发送过来的I/O能力下降,则从功能模块A下发到功能模块B的I/O数会下降,也即M2的I/O数增长速度变缓,而主机下发到功能模块A的I/O数没变,如其在第4采样点的I/O数降低为135I/OPS,则M1-M2的值为15I/OPS,比起正常的10I/OPS是变大的。因此,当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,可以判定任意两个相邻监测点之间的功能模块为异常状态。
进一步的,任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其上游功能模块发送的下行I/O数以及该功能模块发送至其下游功能模块的下行I/O数;如上表所示,以功能模块A为例,其任意两个相邻监测点分别为M1和M2,则对应的两个I/O数分别为功能模块A接收主机下发的下行I/O数(也即M1监测的I/O数)以及功能模块A发送至功能模块B的下行I/O数(也即M2监测的I/O数)。
或者,任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其下游功能模块反馈的上行I/O数以及该功能模块反馈至其上游功能模块发送的上行I/O数;如上表所示,以功能模块A为例,其任意两个相邻监测点分别为M5和M6,则对应的两个I/O数分别为功能模块A接收功能模块B反馈的上行I/O数(也即M5监测的I/O数)以及功能模块A反馈至主机的上行I/O数(也即M6监测的I/O数)。
需要说明的是,这里的相邻监测点可以理解为I/O流向的相邻监测点,即I/O从监测点M1流至功能模块A,再从功能模块A流至下一功能模块B,最后从功能模块B流至监测点M2,则M1和M2为相邻监测点。
进一步的,当任一监测点的相邻采样点的两个I/O数的差值小于第二预设阈值时,记录该任一监测点的对应的功能模块的状态信息。通过任一监测点的相邻采样点的两个I/O数的差值来判断具体是该任一监测点的哪个采样点出现问题,并根据记录该任一监测点在该采样点对应的功能模块的状态信息,分析该任一监测点在某个采样点性能下降的原因。
可以理解的是,当任一监测点的相邻采样点的两个下行I/O数的差值小于第二预设阈值时,记录发送该两个下行I/O数至该任一监测点的功能模块的状态信息;或者当任一监测点的相邻采样点的两个上行I/O数的差值小于第二预设阈值时,记录反馈该两个上行I/O数至该任一监测点的功能模块的状态信息。
如表1所示,功能模块A的理论处理能力为40I/OPS(每秒处理的I/O数目),功能模块B的理论处理能力为30I/OPS,功能模块C的理论处理能力为20I/OPS,在系统性能稳定后,功能模块A、B、C的实际处理能力都等于20I/OPS,如表1中采样点1,2,3所示,固件需要记录这稳定性能下的各功能模块的实际处理能力20I/OPS(用P_w)。
若接下来功能模块A突然启动内部任务,内部任务需占用25I/OPS的处理能力,那么功能模块A对主机I/O的处理能力下降到15I/OPS(40-25=15I/OPS),那么采样点4和5检测到数据见表1中数据,可以看到M2处的I/OPS涨幅(相邻采样点值之差)变成了15,低于稳定状态下的20。所以,在本发明中可以根据任一监测点Mx相邻采样点之差是否小于稳定性能下的值P_w来确定Mx上游功能模块在该时间段内是否发生处理主机I/O能力下降的情况。
其中,该任一监测点的相邻采样点对应的功能模块的状态信息包括时间戳、I/O数量、资源使用信息、通路信息。
示例性的,一旦确定是功能模块x的哪个通路(上行或下行)成为性能瓶颈,SSD固件需要立马记录功能模块x中的状态信息,该状态信息可以包括时间戳、内部任务状况、资源使用状况、通路状况等等,但由于这种性能不稳定状况可能出现比较频繁,且每次瓶颈功能模块不一样,所以固件内部需要记录多次,才具有参考意义。
可选的,根据该任一监测点对应的功能模块的状态信息,分析该任一监测点性能下降的原因。
在性能测试结束后,工程师可以直接查看这些异常状态信息,进行分析,没有必要再花时间精力去复现现场了。
在本发明实施例中,在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;通过监测点监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;当任意两个相邻监测点的两个I/O数的差值大于第一预设阈值时,确定任意两个相邻监测点之间的功能模块为异常状态。通过任意两个监测点的两个I/O数的差值与预设阈值的比较,来确定该任意两个监测点之间对应的功能模块的异常状态,从而,可以大大提升工程师解决固态硬盘性能问题的效率。
如图4所示,为本发明实施例中固态硬盘的一个实施例示意图,可以包括:
处理模块401,用于在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;
监测模块402,用于通过监测点以监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,确定任意两个相邻监测点之间的功能模块为异常状态。
可选的,在本发明的一些实施例中,
任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其上游功能模块发送的下行I/O数以及该功能模块发送至其下游功能模块的下行I/O数;
或者任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其下游功能模块反馈的上行I/O数以及该功能模块反馈至其上游功能模块发送的上行I/O数。
可选的,在本发明的一些实施例中,当任一监测点的相邻采样点的两个I/O数的差值小于第二预设阈值时,记录该任一监测点对应功能模块的状态信息。
可选的,在本发明的一些实施例中,当任一监测点的相邻采样点的两个下行I/O数的差值小于第二预设阈值时,记录发送该两个下行I/O数至该任一监测点的功能模块的状态信息;
或者当任一监测点的相邻采样点的两个上行I/O数的差值小于第二预设阈值时,记录反馈该两个上行I/O数至该任一监测点的功能模块的状态信息。
可选的,在本发明的一些实施例中,该任一监测点对应的功能模块的状态信息包括时间戳、I/O数量、资源使用信息、通路信息。
如图5所示,为本发明实施例中固态硬盘的另一个实施例示意图。
处理器501,监测器502和记录器503,该处理器501、该监测器502和该记录器503通过总线连接;
处理器501,通过处理器在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;
监测器502,设置在监测点以监测主机发送至固态硬盘的下行I/O数固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;
记录器503,当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,记录器记录任意两个相邻监测点之间的功能模块为异常状态。
可选的,在本发明的一些实施例中,
任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其上游功能模块发送的下行I/O数以及该功能模块发送至其下游功能模块的下行I/O数;
或者任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其下游功能模块反馈的上行I/O数以及该功能模块反馈至其上游功能模块发送的上行I/O数。
可选的,在本发明的一些实施例中,当任一监测点的相邻采样点的两个I/O数的差值小于第二预设阈值时,记录器还用于记录该任一监测点的对应的功能模块的状态信息。
可选的,在本发明的一些实施例中,当任一监测点的相邻采样点的两个下行I/O数的差值小于第二预设阈值时,记录器记录发送该两个下行I/O数至该任一监测点的功能模块的状态信息;
或者当任一监测点的相邻采样点的两个上行I/O数的差值小于第二预设阈值时,记录器记录反馈该两个上行I/O数至该任一监测点的功能模块的状态信息。
可选的,在本发明的一些实施例中,
该任一监测点对应的功能模块的状态信息包括时间戳、I/O数量、资源使用信息、通路信息。
本发明实施例另一实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上所述的识别固态硬盘性能的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid StateDisk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种识别固态硬盘性能的方法,其特征在于,包括:
在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;
通过所述监测点监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;
当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,确定所述任意两个相邻监测点之间的功能模块为异常状态;
其中,所述任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其上游功能模块发送的下行I/O数以及该功能模块发送至其下游功能模块的下行I/O数;
或者所述任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其下游功能模块反馈的上行I/O数以及该功能模块反馈至其上游功能模块发送的上行I/O数。
2.根据权利要求1所述的方法,其特征在于,当任一监测点的相邻采样点的两个I/O数的差值小于第二预设阈值时,记录所述任一监测点对应功能模块的状态信息。
3.根据权利要求2所述的方法,其特征在于,当任一监测点的相邻采样点的两个下行I/O数的差值小于第二预设阈值时,记录发送该两个下行I/O数至所述任一监测点的功能模块的状态信息;
或者当任一监测点的相邻采样点的两个上行I/O数的差值小于第二预设阈值时,记录反馈该两个上行I/O数至所述任一监测点的功能模块的状态信息。
4.根据权利要求3所述的方法,其特征在于,所述任一监测点对应的功能模块的状态信息包括时间戳、I/O数量、资源使用信息、通路信息。
5.一种固态硬盘,其特征在于,包括:
处理器,通过所述处理器在主机至固态硬盘之间、及固态硬盘中各功能模块之间设监测点;
监测器,设置在所述监测点以监测主机发送至固态硬盘的下行I/O数、固态硬盘中各上游功能模块发送至各下游功能模块的下行I/O数、固态硬盘中各下游功能模块反馈至各上游功能模块的上行I/O数、以及固态硬盘反馈至主机的上行I/O数;
记录器,当任意两个相邻监测点对应的两个I/O数的差值大于第一预设阈值时,所述记录器记录所述任意两个相邻监测点之间的功能模块为异常状态;
其中,所述任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其上游功能模块发送的下行I/O数以及该功能模块发送至其下游功能模块的下行I/O数;
或者所述任意两个相邻监测点对应的两个I/O数分别为一功能模块接收其下游功能模块反馈的上行I/O数以及该功能模块反馈至其上游功能模块发送的上行I/O数。
6.根据权利要求5所述的固态硬盘,其特征在于,当任一监测点的相邻采样点的两个I/O数的差值小于第二预设阈值时,所述记录器还用于记录所述任一监测点对应功能模块的状态信息。
7.根据权利要求6所述的固态硬盘,其特征在于,当任一监测点的相邻采样点的两个下行I/O数的差值小于第二预设阈值时,所述记录器记录发送该两个下行I/O数至所述任一监测点的功能模块的状态信息;
或者当任一监测点的相邻采样点的两个上行I/O数的差值小于第二预设阈值时,所述记录器记录反馈该两个上行I/O数至所述任一监测点的功能模块的状态信息。
8.根据权利要求7所述的固态硬盘,其特征在于,
所述任一监测点对应的功能模块的状态信息包括时间戳、I/O数量、资源使用信息、通路信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910289320.6A CN110069371B (zh) | 2019-04-11 | 2019-04-11 | 一种识别固态硬盘性能的方法及固态硬盘 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910289320.6A CN110069371B (zh) | 2019-04-11 | 2019-04-11 | 一种识别固态硬盘性能的方法及固态硬盘 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110069371A CN110069371A (zh) | 2019-07-30 |
CN110069371B true CN110069371B (zh) | 2023-05-23 |
Family
ID=67367476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910289320.6A Active CN110069371B (zh) | 2019-04-11 | 2019-04-11 | 一种识别固态硬盘性能的方法及固态硬盘 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110069371B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110764960B (zh) * | 2019-09-27 | 2022-07-19 | 苏州浪潮智能科技有限公司 | 一种固态硬盘固件测试方法 |
CN112799593A (zh) * | 2021-02-01 | 2021-05-14 | 联想(北京)有限公司 | 一种处理方法、装置和电子设备 |
CN114138575B (zh) * | 2021-11-25 | 2023-11-14 | 苏州浪潮智能科技有限公司 | 一种硬盘数据垃圾回收的测试方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110119369A1 (en) * | 2009-11-13 | 2011-05-19 | International Business Machines,Corporation | Monitoring computer system performance |
CN104239183A (zh) * | 2014-09-22 | 2014-12-24 | 北京国双科技有限公司 | 监测系统性能的方法及装置 |
CN105589785A (zh) * | 2015-12-08 | 2016-05-18 | 中国银联股份有限公司 | 监控存储设备的io性能的装置和方法 |
US20170278266A1 (en) * | 2016-03-22 | 2017-09-28 | Tata Consultancy Services Limited | Systems and methods for detecting and tracking a marker |
-
2019
- 2019-04-11 CN CN201910289320.6A patent/CN110069371B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110119369A1 (en) * | 2009-11-13 | 2011-05-19 | International Business Machines,Corporation | Monitoring computer system performance |
CN104239183A (zh) * | 2014-09-22 | 2014-12-24 | 北京国双科技有限公司 | 监测系统性能的方法及装置 |
CN105589785A (zh) * | 2015-12-08 | 2016-05-18 | 中国银联股份有限公司 | 监控存储设备的io性能的装置和方法 |
US20170278266A1 (en) * | 2016-03-22 | 2017-09-28 | Tata Consultancy Services Limited | Systems and methods for detecting and tracking a marker |
Also Published As
Publication number | Publication date |
---|---|
CN110069371A (zh) | 2019-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110069371B (zh) | 一种识别固态硬盘性能的方法及固态硬盘 | |
US8181161B2 (en) | System for automatically collecting trace detail and history data | |
US8122158B1 (en) | Method for improving I/O performance of host systems by applying future time interval policies when using external storage systems | |
US20100229182A1 (en) | Log information issuing device, log information issuing method, and program | |
US20140089477A1 (en) | System and method for monitoring storage machines | |
US10170158B2 (en) | Variable scoping capability for physical tape layout diagnostic structure of tape storage device | |
KR20120102664A (ko) | 미래 사용 추정에 기반한 저장 메모리 할당 | |
US9681577B2 (en) | System and method for improving fan life in an information handling system | |
JP7327766B2 (ja) | ネットワーク品質監視方法、装置、コンピュータ可読記憶媒体、及びコンピュータプログラム | |
US20230047615A1 (en) | Communication Device, Surveillance Server, and Log Collection Method | |
CN109918221B (zh) | 一种硬盘报错解析方法、系统、终端及存储介质 | |
US9916220B2 (en) | Smart logging of trace data for storage systems | |
CN114610567A (zh) | 容器监控方法、网络设备及存储介质 | |
CN118093236A (zh) | 链路处理方法、系统、设备及介质 | |
CN113590405A (zh) | 硬盘错误的检测方法、装置、存储介质和电子装置 | |
CN110347546B (zh) | 监控任务动态调整方法、装置、介质及电子设备 | |
CN117271222A (zh) | 一种面向大数据的云容灾备份方法及系统 | |
CN111694721A (zh) | 一种微服务的故障监测方法和装置 | |
CN112988500A (zh) | 文件存储系统的监控方法及设备、系统 | |
US9263092B2 (en) | Extended diagnostic overlay control for tape storage devices | |
CN110837428B (zh) | 存储设备管理方法及装置 | |
CN116185799A (zh) | 中断时间获取方法、装置、系统、通信设备及存储介质 | |
CN106686082B (zh) | 存储资源调整方法及管理节点 | |
CN114238019A (zh) | 一种硬盘显示方法、装置、设备及介质 | |
CN111026328B (zh) | 一种能耗控制方法、装置及存储系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |