CN108885579A - 用于根据核追踪进行数据挖掘的方法和设备 - Google Patents
用于根据核追踪进行数据挖掘的方法和设备 Download PDFInfo
- Publication number
- CN108885579A CN108885579A CN201680077507.4A CN201680077507A CN108885579A CN 108885579 A CN108885579 A CN 108885579A CN 201680077507 A CN201680077507 A CN 201680077507A CN 108885579 A CN108885579 A CN 108885579A
- Authority
- CN
- China
- Prior art keywords
- tracking
- core
- function
- gene function
- instruction
- 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.)
- Granted
Links
- 238000007418 data mining Methods 0.000 title claims abstract description 32
- 238000000034 method Methods 0.000 title claims abstract description 28
- 108090000623 proteins and genes Proteins 0.000 claims abstract description 102
- 238000012545 processing Methods 0.000 claims abstract description 82
- 238000013461 design Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims description 194
- 230000015654 memory Effects 0.000 claims description 60
- 230000006399 behavior Effects 0.000 claims description 14
- 235000006508 Nelumbo nucifera Nutrition 0.000 claims description 3
- 240000002853 Nelumbo nucifera Species 0.000 claims description 3
- 235000006510 Nelumbo pentapetala Nutrition 0.000 claims description 3
- 238000001514 detection method Methods 0.000 abstract description 9
- 238000004458 analytical method Methods 0.000 description 33
- 238000004088 simulation Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 9
- 239000000872 buffer Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000012536 storage buffer Substances 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 102100040160 Rabankyrin-5 Human genes 0.000 description 1
- 101710086049 Rabankyrin-5 Proteins 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000007621 cluster analysis Methods 0.000 description 1
- 238000007728 cost analysis Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 125000003367 polycyclic group Chemical group 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3037—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/60—Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Fuzzy Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Debugging And Monitoring (AREA)
Abstract
提供了用于无线基带设计的根据处理系统中的核追踪进行数据挖掘的方法,包括:检测处理系统中的核追踪(1402),其中核追踪是在处理系统中执行的指令序列。核追踪中的指令地址被映射到多个应用或操作系统功能(1404)。所映射的功能被排序成分层格式(1406)。识别分层格式中的基因功能(1408),其中基因功能是由处理系统执行的基本功能。根据分层格式得到基因功能的属性(1410)。将属性存储到基因功能库数据库中(1412)。
Description
相关申请的交叉引用
本申请要求于2015年12月30日提交的并且标题为“Method And Apparatus ForData Mining From Core Traces”的美国非临时专利申请第14/983,934号的优先权,其全部内容通过引用并入本文,如同在此处再现一样。
技术领域
本申请要求于2015年12月30日提交的并且标题为“Method And Apparatus ForData Mining From Core Traces”的美国非临时专利申请第14/983,934号的优先权,其全部内容通过引用并入本文,如同在此处再现一样。本公开内容总体上涉及计算机系统行为分析,并且更具体地涉及用于根据核追踪进行数据挖掘的方法和设备。
背景技术
下一代无线系统设计需要可靠和精确的系统性能和行为。为了设计下一代系统例如5G系统,获取与当前系统行为和分析相关的信息在理解当前的系统操作方面是至关重要和不可或缺的。关于系统行为和性能分析的当前技术在获得应用于5G系统的探索和实现所必需的精确系统行为和性能参数方面效率低下。
发明内容
根据以上所述,本领域技术人员可以理解,对于用于下一代设计的分析系统行为的技术的需求增加。根据本公开内容,提供了一种用于根据核追踪进行数据挖掘的方法和设备,其大大减少或基本上消除了与系统行为分析的当前编码技术相关联的问题和缺点。
根据实施方式,提供了一种用于无线基带设计的根据处理系统中的核追踪进行数据挖掘的方法,该方法包括:检测处理系统中的核追踪,其中核追踪是在处理系统中执行的指令序列。核追踪中的指令地址被映射到多个应用或操作系统功能。所映射的功能被排序成分层格式。识别分层格式中的基因功能,其中基因功能是由处理系统执行的基本功能。根据分层格式得到基因功能的属性。将属性存储到基因功能库数据库中。
本公开内容描述了相对于传统系统行为和性能分析技术的许多技术优点。例如,一个技术优点是建立精确的系统性能参数的架构。另一技术优点是识别在系统中执行的核功能的个体行为。根据以下附图、描述和所附权利要求书,本领域技术人员可以容易地看出和辨别出其他技术优点。
附图说明
为了更透彻地理解本发明及其优点,现在参照以下结合附图的描述,其中,相同的附图标记表示相同的部分,在附图中:
图1示出了处理装置的示例;
图2A至图2B示出了使用处理装置的缓存模型根据数据输入得到的结果的示例曲线图;
图3示出了用于根据指令精确追踪创建周期精确追踪的示例系统;
图4示出了处理装置中的吞吐点;
图5示出了根据核追踪检测到的抢占场景;
图6示出了双环路抢占场景;
图7示出了包括用于评估抢占成本的抢占事件的追踪流程;
图8示出了示例核追踪;
图9示出了根据核追踪创建的示例分层格式;
图10示出了与基因功能相关联的核追踪的示例;
图11示出了顶层设计中的数据流图的示例;
图12示出了分层格式中的基因功能的示例;
图13示出了将基因功能库数据库应用于基于追踪的模拟;
图14示出了根据核追踪进行数据挖掘的处理;以及
图15示出了适用于实现本文所公开的一个或更多个实施方式的计算组件的示例。
具体实施方式
以下讨论的图1至图15以及在本专利文件中用于描述本公开内容的原理的各种实施方式仅作为说明,而不应当以任何方式解释为限制本公开内容的范围。本领域技术人员将理解,本公开内容的原理可以以任何类型的适当布置的装置或系统来实现。在一个附图中示出和讨论的特征可以适情况在一个或更多个其他附图中实现。
根据核追踪(core trace)的“数据挖掘”的方法被提出,以得到和获取关于系统行为和性能的信息。所获取的信息是直接从核追踪如“加载”(即“读取”)和“存储”(即“写入”)计数获得的,而所得到的信息是在将追踪馈送到一些分析模型(例如用于获得缓存未命中计数、从缓存到存储器的吞吐量等的缓存模型)之后获得的。核追踪提供了对指令序列的执行、受指令影响的存储器地址以及存储器地址中包含的值的记录。根据核追踪的数据挖掘提供了可以帮助改进下一代系统的设计的系统信息。建立基于核追踪的架构,以获得当前系统的精确且可靠的系统性能和行为并且获得对于下一代系统设计的见解。与系统性能和行为相关联的示例属性包括加载/存储密度、缓存未命中计数、存储器使用概况、数据吞吐量、核工作负荷估计、功率使用估计以及抢占检测和成本分析。
本公开内容提供了用于根据核追踪分析数据加载/存储操作的技术,所述核追踪包括数据位置(例如,级别2(L2)存储器和/或缓存、级别3(L3)存储器和/或缓存以及双倍数据速率(Double Data Rate,DDR)存储器)和存储器中数据的大小。缓存模型被实现成基于数据加载/存储信息来评估缓存未命中计数。根据从数据加载/存储操作和缓存未命中计数收集的信息来评估存储器使用概况、数据吞吐量、工作负荷、功率使用等。检测抢占事件并且分析相关成本。
数据挖掘被用于分析系统行为和性能。包括缓存追踪、数据传输追踪和直接存储器访问追踪的核追踪被检测并被存储以供分析。缓存追踪提供关于指令地址、指令执行的时间戳、加载(读取)和存储(写入)操作、数据位置和数据大小的信息以及与系统性能相关的其他信息。数据传输追踪提供关于加载和存储操作、数据位置和大小以及当从和向硬件加速器传输数据时的时间戳的信息。直接存储器访问追踪提供关于源数据地址、目的地数据地址、数据大小和时间戳的信息。
图1示出了计算系统100的示例。计算系统100包括多个处理装置101。每个处理装置101包括处理核102。处理核102具有专用的L1指令缓存104、L1数据缓存106和L2缓存108。根据需要,计算系统100还可以包括由处理装置101共享的L3存储器110或专用于每个处理装置101的单独的L3存储器。每个处理装置101包括存储器控制器112,存储器控制器112用于控制对处理装置101内的缓存存储器以及对与处理装置101耦接的外部存储器例如L3存储器110和DDR存储器114的访问。追踪累加器116被包括在计算系统100中,以在由每个处理装置101执行指令时检测和存储核追踪。追踪累加器116将核追踪提供给追踪分析器118,以执行如下所讨论的数据挖掘。
由系统设计编译器(未示出)根据处理装置101可访问的存储器的量来生成存储器空间映射表。存储器空间映射表描述(如由L2缓存108、L3存储器110和DDR存储器114提供的)存储器空间的大小和地址范围,以便可以根据数据的地址确定数据来自何处。存储器空间映射表是数据挖掘分析器118的输入。表I中提供了存储器空间表的示例。
表I
存储器空间 | 地址范围 |
L2 | 0x08000000–0x0807ffff |
L3 | 0x9a000000–0x9bfffffff |
DDR | 0xa0000000–0xdffffffff |
功能符号表也由系统设计编译器生成并且作为输入提供给数据挖掘分析器118。功能符号表将追踪中的每个指令地址映射到应用或操作系统(operating system,OS)功能。数据挖掘分析器118使用功能符号表和由追踪累加器116接收的追踪来分析由处理装置101执行的指令处理。表II中示出了示例功能符号表。
表II
符号名称 | 符号地址 | 大小 |
DAGC | 0x091a62a0 | 0x0000002d |
RUUInv | 0x0923a1e0 | 0x000004c8 |
FFTDataIn | 0x0903a13b | 0x000002d1 |
缓存模型120可以在数据挖掘分析器118中实现以用于分析和合成追踪。缓存模型120提供缓存未命中分析、预缓存数据流、后缓存数据流和核工作负荷分析。用于指定缓存模型120的参数可以包括行大小(以字节为单位)、行数、路数、预取模式(开或关)、预取缓冲区大小和写策略(例如写通、回写、回写无分配)。
每个处理装置101可以被实现为数字信号处理器。无线通信中的数字信号处理器(digital signal processor,DSP)核的缓存模型的典型示例对具有128行、128字节行大小和4路的总数据大小为64K字节的缓存的行为进行建模。在这种情况下,当发生加载未命中时,替换最近最少使用(replace least recently used,RPL_LRU)策略被用于替换缓存行。回写无分配(write-back no allocation,WBNA)策略被用于存储操作。可以根据处理装置101的设计使用其他缓存模型示例。数据挖掘分析器118并入用于处理装置101的缓存模型,用于处理和分析由追踪累加器116获得的追踪。
缓存模型120的输入包括来自追踪累加器116的追踪中的指令,每个提供数据地址和大小。输出包括缓存未命中或命中。在缓存未命中的情况下,输出还包括:加载到缓存的数据的大小和地址、在“预取”模式为开的情况下提取到预取缓冲区的数据的大小和地址以及在变脏(即被覆盖)情况下(从被清除的缓存行)回写到存储器的数据的大小和地址。缓存模型可以被用于模拟L1数据缓存(D-Cache)106、L1指令缓存(I-Cache)104、L2缓存108和L3存储器110的行为。尽管图1示出了多个处理装置101,计算系统100可以包括仅单个处理装置101。
图2A至图2B示出了由数据挖掘分析器118根据输入到缓存模型的数据所生成的分析结果的示例曲线图。图2A示出了为给定处理装置101提供加载密度曲线204的曲线图202。加载密度曲线204与一段时间内每一千核指令的数据加载(读取)动作的密度的百分比对应。加载密度是加载操作的数目除以相关联的核指令的数目。加载密度曲线204中的每个数据点提供在先前的两微秒间隔时段内发生的加载密度的百分比。图2B示出了为给定处理装置101提供缓存未命中曲线214的曲线图212。缓存未命中曲线214指示在一段时间内每一千核指令的加载(读取)操作的缓存未命中计数。缓存未命中曲线214中的每个数据点提供在先前的两微秒间隔时段内发生的缓存未命中的次数。曲线图202和212指示核在何时以及如何密集地参与给定处理装置101的计算和/或数据处理。
追踪累加器116从处理装置101获得被称为指令精确(Instruction-Accurate,IA)追踪的追踪。IA追踪记录处理装置101执行什么指令而没有任何相关联的定时信息。IA追踪不能被直接用于周期精确(Cycle-Accurate,CA)追踪模拟和分析。CA追踪记录处理装置101执行什么指令以及何时(以周期计)执行指令。可以通过将IA追踪信息输入到处理核模型中以生成与IA追踪相关联的定时信息来根据IA追踪得到CA追踪。定时信息与IA追踪信息组合在一起以创建CA追踪。也可以考虑核模型的微架构效应用于额外的分析。核模型的微架构效应包括寄存器互锁、提取缓冲区、指令重放和分支延迟。因此,可以根据IA追踪与核模型的微架构的组合得到CA追踪信息,使得IA追踪可以被转换成精确和相关系统信息所必需的CA追踪。
图3示出了根据IA追踪创建CA追踪的示例。从追踪累加器116获得的IA追踪信息被输入到处理核模型302中。处理核模型302模拟处理核102的操作,并且创建IA追踪信息中不存在的定时信息。同步定时模块304将定时信息与IA追踪信息同步,从而创建CA追踪。将CA追踪作为输入以及IA追踪提供给数据挖掘分析器118用于分析。
利用通过核追踪的数据挖掘获得的信息,可以推测出关于存储器使用概况、数据流的吞吐量、工作负荷、抢占和功率使用的属性的系统信息用于分析。根据IA追踪得到存储器使用概况和数据流的吞吐量。根据CA追踪得到工作负荷、抢占和功率使用。这样的系统信息通过提供处理装置101在操作期间如何执行而产生用于下一代架构探索的深刻蓝图。对当前系统的存储器使用概况、数据流吞吐量、工作负荷、抢占和功率使用的分析被并入到更高效的下一代架构的设计中。
对于存储器使用概况属性,利用从核IA追踪可获得的加载/存储信息,可以针对包括L2、L3和DDR的各种存储器空间得到关于存储器使用量的精确信息。根据访问何种缓存/存储器以取回或写入数据的信息来获得关于如何使用数据的指示。存储器使用概况分析也可以被单独应用于下面讨论的基因功能。
图4示出了处理装置101中的吞吐点。图4描绘了图1中的示出数据互连的一些元件。对于吞吐量属性,可以根据IA追踪来得到数据流的精确信息。数据流信息包括处理核102与相应L1I缓存104、L1D缓存106和L2缓存108之间的吞吐量。数据流信息还包括缓存和存储器子系统例如L3存储器110和DDR存储器114之间的吞吐量。通常,处理核102直接访问L1I缓存104和L1D缓存106。所请求但未在L1I缓存104和L1D缓存106中找到的信息首先从L2缓存108(如果存在的话),接下来从L3存储器110(如果存在的话)以及最后从DDR存储器114中顺序地检索。吞吐量信息对于顶层基于标记(即IA追踪)的模拟和分析是非常有用的,因为吞吐量信息识别数据如何流入和流出缓存和存储器以及数据流的强度和对系统性能的相应影响。吞吐量信息可能导致在下一代设计中实现不同的布线方案以便调整数据流强度。数据流信息也可以被单独应用于下面讨论的基因功能。
对于工作负荷属性,可以根据CA追踪来得到每个核的工作负荷的估计。评估工作负荷的因素包括来自CA追踪的核的基线工作负荷、L1I缓存104和L1D缓存106未命中计数以及来自对各种存储器空间例如L2缓存108、L3存储器110和DDR存储器114访问的延迟信息。工作负荷的估计可以被单独应用于下面讨论的基因功能。
对于功率使用属性,可以基于加载/存储操作以及诸如(标量和矢量)加法、乘法等算术逻辑单元(Arithmetic Logic Unit,ALU)操作的计数、根据CA追踪来得到对功率使用的估计。功率使用的估计可以被单独应用于下面讨论的基因功能。
抢占属性与中断一个任务以执行另一任务的上下文切换相关联。在实际通信系统中发生抢占主要是为了满足定时要求。与抢占相关的信息对于了解抢占在现实通信实践中的频率、时长和成本效应是非常有帮助和启发性的。
图5示出了如何根据核追踪检测抢占场景500。首先,某个任务即任务1 502正在被处理。在追踪中出现调用上下文切换以在任务1 502完成之前使任务1 502暂停的用户级别的操作系统(OS)功能如‘os任务调度’504、‘os线程上下文切换’506和‘切换至新任务’508。这些功能标识何时一个任务被另一更高优先级任务抢占。功能‘os任务调度’504指示哪个任务被调度执行以及在当前任务可以完成之前要调度新的更高优先级任务或定时关键任务。功能‘切换至新任务’508通知处理核102根据调度在完成当前任务之前要执行新任务。功能‘os线程上下文切换’506执行至新任务的上下文切换并且将数据保存到存储器并且处于当前任务被抢占的点。然后执行新的任务2 510以满足抢占事件。在任务2 510完成时,类似的OS功能‘os任务调度’512、‘os线程上下文切换’514和‘切换至新任务’516出现在追踪中,以指示上下文切换并且将处理返回到任务1 502。通过识别追踪中的这些功能,可以追踪任务抢占的发生、长度和频率。
图6示出了双环路抢占场景600。首先,某个任务即任务1 602正在被处理。在第一抢占事件时,OS功能‘os任务调度’604、‘os线程上下文切换’606和‘切换至新任务’608出现在追踪中,以在任务1 602完成之前使任务1 602暂停。然后执行新的任务2 610以满足第一抢占事件。在第二抢占事件时,OS功能‘os任务调度’612、‘os线程上下文切换’614和‘切换至新任务’616出现在追踪中,以在任务2 610完成之前使任务2 610暂停。然后执行新的任务3 618以满足第二抢占事件。在任务3 618完成时,OS功能‘os任务调度’620、‘os线程上下文切换’622和‘切换至新任务’624出现在追踪中,以将处理返回到任务2 610。任务2 610完成其执行以满足第一抢占事件,并且通过OS功能‘切换至新任务’626将处理返回到任务1602以完成。操作可以被容易地扩展到其他多环路抢占场景。
图7示出了包括用于评估抢占成本的抢占事件的追踪流程图700。第一任务702在被第二任务704抢占之前被处理。在完成第二任务704时,第一任务702在被第三任务706抢占之前被恢复处理。在完成第三任务706时,第一任务702在被第四任务708抢占之前被恢复处理。在完成第四任务708之前,第五任务710出现并且抢占第四任务708,从而产生双环路抢占事件。在完成第五任务710时,第四任务708恢复以完成,随后恢复第一任务702处理。第一任务702在经受任何其他抢占任务的条件下进行到完成。由于抢占事件,在10ms间隔内可能存在数百或数千个任务被执行。
抢占事件的成本由抢占任务的大小加上开销来限定。大小由指令或周期数来限定。开销包括用于开始和结束抢占的这些OS功能指令。开销指令有助于识别抢占事件,并且从核追踪中得到。关于抢占成本的信息用于确定抢占是否真的有必要,并且在有必要情况下确定对被抢占任务的影响(引入的延迟)。基于每个抢占事件的抢占成本,追踪的抢占百分比被限定为针对全部抢占事件对每个抢占任务的大小加上开销的求和除以追踪的大小。高于某个阈值的抢占成本可能会导致指令序列变化,以降低抢占成本。可以使用自动化方案来估计抢占成本和以周期数计的百分比。对核追踪进行分析,以通过相关联的开销功能指令识别抢占事件,并启动对抢占成本估计和百分比的确定。然后可以分析抢占事件,以确定其发生的原因、是否有必要以及其对系统性能的影响。
核追踪的数据挖掘可以被应用于系统中执行的各个功能。功能库数据库可以使用由处理装置101在指令执行期间执行的关键基本功能的列表来生成,该关键基本功能在本文中被称为基因(gene)功能。由顶层系统设计数据流中的功能块来指示如下识别的基因功能。基因功能库数据库被用于为下一代系统设计的系统化、高效化、自动化的设计环境奠定基础。
通常,由数据挖掘分析器118根据以下操作来生成基因功能库数据库:从处于指令级别的核追踪收集信息;将指令级别追踪转换成分层功能格式;识别分层功能格式中的基因功能;以及得到基因功能的属性,以输入到基因功能库数据库中。用于包括在基因功能库数据库中的基因功能的属性是根据分层功能格式和核追踪得到的。这些属性包括如上所述的存储器使用量、数据吞吐量、工作负荷、抢占、功率使用等。
收集以下数据以建立基因功能库—核追踪和功能符号表。核追踪提供关于指令地址、指令时间戳、加载(读取)和存储(写入)操作、数据位置和数据大小的信息。功能符号表将追踪中的每个指令地址映射到应用或OS功能。
图8示出了部分核追踪800的示例。通常,在指令级别上生成核追踪。核追踪800包括在处理装置101中执行的示例指令802至812。每个指令包括序列号820、指令地址822、命令助记符824以及具有相应计数值828的周期计数(CCount)826。指令802还包括识别地址832和写入地址832中的存储值834的存储操作830。指令806包括识别地址842和从地址842中读取的加载值844的加载操作840。这些指令是实时收集的,并且可用于后处理和分析。使用功能符号表,追踪可以从指令级别转换到APP/OS功能级别。追踪中的功能数目与指令数目之比约为1至100。为了说明的目的,核追踪800被示出为具有单个功能和六个指令,但是其他数目的功能和指令是可能的。另外,如指令802中的‘entry’和指令812中的‘return’(到/来自被调用的功能)那样,使用来自追踪的指令的命令助记符‘mne’,来识别各个功能并且可以将追踪转换成分层功能格式。
图9示出由数据挖掘分析器118根据核追踪如图8中的核追踪800创建的部分分层功能格式900的示例。由数据挖掘分析器118分析核追踪,以识别由处理装置101处理的各个功能。根据设置在每个指令中的命令助记符,识别功能并且将其添加至分层功能格式900。分层功能格式900包括多个功能行901,每个功能行表示单独的功能。每个功能行901具有指示该功能的某些方面的项目列表。在分层功能格式900中,每行中的第一字段902指示功能的级别。例如,功能‘LBB_ULDSP_PuschMainProc’是级别4,而功能‘LBB_ULDSP_PuschSym9Proc’是级别5,因为它被‘LBB_ULDSP_PuschMainProc’调用。加(+)号表示当前功能调用另一功能。减(-)号表示返回到调用功能。第二字段904指示功能的名称。第三字段905指示功能类型。术语APP和OS表示该功能是“应用”或“操作系统”功能。第四字段906是指示与该功能相关联的指令的数目的指令数。第五字段908是指示功能在追踪中的序列顺序的顺序编号。例如,第一功能行901示出:‘LBB_ULDSP_PuschMainProc’904为第6224个功能。第六字段910是指示在调用该功能之前指令的累计数目的累计数。例如,在调用功能‘LBB_ULDSP_PuschMainProc’904之前总共有663,376条指令。第七字段912是指示原始追踪中的起始指令编号的起始编号,通过该起始编号直接定位功能开始(以及结束)的位置。从分层功能格式900中匹配基因功能,并且根据核追踪和分层功能格式得到基因功能的属性,以用于输入到基因功能库数据库中。
图10示出了与示例基因功能相关联的核追踪1000的示例。根据下面讨论的系统级别设计数据流图,功能‘LBB_ULDSP_PuschMainProc’被识别为基因功能。基因功能与图9的分层功能格式900中的功能行901匹配。在该示例中,在图9的顶功能行901中找到基因功能‘LBB_ULDSP_PuschMainProc’。核追踪1000中的指令1002至1010与基因功能‘LBB_ULDSP_PuschMainProc’对应。基因功能主要由与基因功能相关联的基因功能的名称、加载和存储数目、存储器使用量、数据流、工作负荷、抢占和功率使用来限定。由‘开始’和‘结束’指令限定的原始追踪中的相应指令段唯一地限定了与用于基于追踪(CA)的模拟的基因功能相关联的追踪。基因功能‘LBB_ULDSP_PuschMainProc’具有原始追踪中提供的指令1002的‘开始’指令索引‘176018361’以及指令1010的‘结束’指令索引‘176018365’。核追踪1000用于在基因功能库数据库中创建基因功能‘LBB_ULDSP_PuschMainProc’条目并且得到与其相关联的属性。由于各种无线通信场景,可能存在与相同的应用功能相关联的多于一个的基因功能。
图11示出与由处理装置101执行的指令相关联的典型无线通信装置的标准顶层系统设计中的数据流图1100的示例。数据流图1100示出了在无线通信装置的标准系统设计中执行的特定功能或基因功能。数据流图1100中示出的基因功能包括通用公共无线电接口(Common Public Radio Interface,CRPI)功能1102、时域处理(time domain processing,TDP)硬件加速器(hardware accelerator,HAC)配置功能1104、TDP和快速傅里叶变换(fastfourier transform,FFT)功能1106以及数字自动增益控制(digital automatic gaincontrol,DAGC)功能1108。由这些基因功能执行的计算以及它们彼此以及与存储器缓冲器1110的交互可以被用于构建与追踪的每个基因功能相关联的基因功能库。具有灵活和可调节粒度的这些类型的功能块是系统架构中的基础和关键元素,导致相应基因功能的限定用作新系统架构的系统探索的基础和根本。如上所示,在系统级别设计数据流例如数据流图1100中确定的基因功能通过数据挖掘分析器118与分层功能格式900进行匹配,并且从中提取以放入基因功能库数据库中。每个基因功能可以被分成基因功能的一个或更多个子组以增加分析的粒度。根据核追踪得到与上面所讨论的属性相关联的每个基因功能的信息,以插入到基因功能库数据库中。对于每个基因功能,基因功能库数据库包括以下信息:例如基因功能使用多少数据、与基因功能相关联的数据吞吐量、基因功能的工作负荷、基因功能消耗多少功率、以及在基因功能处理期间抢占事件的发生。
图12示出了部分分层功能格式1200的示例,其仅指示特定基因功能(在本例中为Ruu)被发现的次数。用于说明的目的,作为示例,Ruu功能块与根据核追踪得到的APP‘LBB_ULDSP_PUSCH_RuuMainProc’功能相关。因此,为了限定Ruu基因功能,首先通过将在核追踪中出现的所有‘LBB_ULDSP_PUSCH_RuuMainProc’基因功能的列表转换成分层功能格式来创建基因功能库数据库条目,而不管该基因功能何时出现在追踪中。根据分层功能格式,可以得到何时、何地以及如何调用该基因功能以及它们执行的功能操作。以这种方式,可以在个体基础上分析特定基因功能。
可以构建基因功能库数据库用于基于标记(IA追踪)和基于追踪(CA追踪)的系统模拟和探索。对于基于标记的系统模拟而言,相应基因功能的存储器使用量、数据流、工作负荷和功率使用的精确信息对于获得有意义的模拟结果是不可或缺的。基于标记的模拟提供了系统架构的性能模型,该性能模型将数据传输抽象地表示为被称为标记的一组简单符号。除了控制事件的时间顺序所需的数据之外,实际的应用数据和应用数据上的变换都不被描述。基于标记的模拟通过交错执行架构的程序和模拟来避免大的追踪存储需求。应用数据不被建模,并且只有控制信息被建模。通常,基于标记的模拟解决了多处理器联网系统执行主要系统功能的时间。基于标记的模拟保持追踪资源例如存储器缓冲区空间、通信链接和处理器单元的使用。网络的结构被向下描述到网络节点级别。网络节点包括处理器元件、网络交换机、共享存储器和I/O单元。在基于标记的模拟中不描述网络节点的内部结构。
图13示出了用于将基因功能库数据库应用于基于追踪的模拟的顶层系统设计数据流1302、分层功能格式1304和指令1306的核追踪之间的关系。基于追踪的模拟是指为了性能预测的目的,通过逐周期地查看程序执行或系统组件访问的追踪来执行的系统模拟。基于追踪的模拟可以被用于各种应用,包括对非常大的计算机集群上的消息传递性能的分析。基于追踪的模拟器通常具有两个组件:一个执行动作并存储结果(即追踪),另一个读取追踪的日志文件并将其插入新的(并且通常为更复杂的)场景。例如,在大型计算机集群设计的情况下,执行发生在较少数目的节点上并且追踪被留在日志文件中。模拟器读取这些日志文件并且在更大数目的节点上模拟性能,从而基于在更少数目的节点上执行追踪来提供非常大的应用的性能视图。
指令1306的核追踪是根据IA追踪信息和得到的CA追踪信息得到的。通过分析指令1306的核追踪而生成分层功能格式1304。顶层系统设计数据流1302识别用于包括在基因功能数据库中的基因功能。来自顶层系统设计数据流1302的基因功能与分层功能格式1304中的功能相匹配。与每个基因功能相关联的特定指令被用于得到用于包括在基因功能数据库中的属性。与基因功能相关联的追踪被用于系统设计的CA(周期精确)模拟。可以针对每个基因功能在个体的基础上得到和评估如上面所讨论的存储器使用量、数据吞吐量、工作负荷、抢占和功率使用以用于顶层分析和模拟。可以检测基因功能的抢占,并且可以以上面所讨论的方式确定与特定基因功能相关联的抢占成本和百分比。
图14示出了基于上面所讨论的特征根据核追踪进行数据挖掘的处理1400。处理1400开始于块1402,在块1402中检测一个或更多个核追踪以识别指令执行序列。在块1404中,将核追踪中的指令地址映射到适当的应用和OS功能。在块1406中将映射的功能排序成分层格式。在块1408中从分层格式中识别一个或更多个基因功能。对于每个基因功能,在块1410中根据分层格式和核追踪得到属性。在块1412中使用每个基因功能的条目来填充基因功能库数据库,所述条目包括在块1410中得到的属性。在块1414中可以针对特定基因功能进一步检测抢占事件。在检测到抢占事件时,在块1416中确定与被抢占的基因功能相关联的抢占成本和百分比。
图15示出了适用于实现本文中公开的一个或更多个实施方式的追踪累加器116和数据挖掘分析器118的通用计算组件1500的简化示例。上述用于通过生成基因功能库数据库来检测核追踪的特征可以在具有足够处理能力、存储器资源和网络吞吐量能力以处理置于其上的必要的工作负荷的任何通用计算组件例如计算机或网络组件上实现。计算组件1500可以在追踪累加器116和数据挖掘分析器118中实现以执行在本文中描述的特征。计算组件1500包括处理器1502(其可以被称为中央处理器单元或CPU),处理器1502与包括以下的存储器装置通信:辅助存储器1504、只读存储器(read only memory,ROM)1506、随机存取存储器(random access memory,RAM)1508、输入/输出(input/output,I/O)装置1510以及网络/组件连接装置1512。处理器1502可以被实现为一个或更多个CPU芯片或者可以是一个或更多个专用集成电路(application specific integrated circuits,ASIC)的部分。
辅助存储器1504通常由一个或更多个磁盘驱动器或磁带驱动器组成,并且用于数据的非易失性存储,并且在RAM 1508未大到足以保存全部工作数据的情况下作为溢出数据存储装置。辅助存储器1504可以被用于存储当被选择用于执行时被加载到RAM 1508中的程序。ROM 1506被用于存储在程序执行期间读取的指令和可能的数据。ROM 1506是非易失性存储器装置,其相对于辅助存储器1504的较大存储容量通常具有较小的存储器容量。RAM1508被用于存储易失性数据并且可能用于存储指令。对ROM 1506和RAM 1508二者的访问通常比对辅助存储器1504的访问快。可以在辅助存储器1504或RAM 1508中保存基因功能库数据库。可以基于追踪累加器116或数据挖掘分析器118内的每个组件的功能来并入额外的处理器和存储器装置。
在本发明的另一实施方式中,用于无线基带设计的根据处理系统中的核追踪进行数据挖掘的设备包括用于检测处理系统中的核追踪的检测装置,该核追踪是在处理系统中执行的指令序列。另外,该设备包括用于将核追踪中的指令地址映射到多个应用或操作系统功能的映射装置以及用于将所映射的功能设置成分层格式的格式设置装置。该设备还包括用于识别分层格式中的基因功能的识别装置以及用于根据分层格式得到基因功能的属性的属性取得装置,其中,基因功能是由处理系统执行的基本功能。此外,该设备包括用于将属性存储到基因功能库数据库中的存储装置。
由检测装置检测到的核追踪包括指令地址、时间戳、加载/存储操作、数据位置和数据大小。检测装置被配置成提取指令地址、时间戳、加载/存储操作、数据位置和数据大小中的一个或更多个。属性取得装置被配置成得到以下属性中的一个或更多个:
由处理系统在指令执行期间针对各种存储器空间而使用的存储器使用量,存储器使用量是根据核追踪中的加载/存储指令信息得到的;
在指令执行期间处理系统内的吞吐量,吞吐量是根据中央处理核与缓存之间交换的数据流信息以及缓存与存储器子系统之间交换的数据流信息得到的;
处理系统在指令执行期间的工作负荷,工作负荷是根据来自周期精确追踪的核的基线工作负荷、缓存未命中计数以及来自对各种存储器空间访问的延迟信息得到的;以及
处理系统在指令执行期间的功率使用,功率使用是根据加载/存储操作和算术逻辑单元(ALU)操作的计数得到的。
在一些实施方式中,由根据计算机可读程序代码形成并且在计算机可读介质中实施的计算机程序来实现或支持装置中的一个或更多个装置的一些或全部功能或处理。短语“代码”包括包含源代码、目标代码和可执行代码的任何类型的计算机代码。短语“计算机可读介质”包括能够被计算机访问的任何类型的介质,例如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、致密盘(compact disc,CD)、数字视频盘(digital video disc,DVD)或任何其他类型的存储器。在执行时,计算机程序可以检测核追踪、将核追踪转换成分层格式、生成基因功能数据库并且确定与基因功能相关联的抢占成本。
阐述在本专利文件中贯穿使用的某些词和短语的限定可能是有利的。术语“包括”和“包含”及其派生词表示包括但不限于。术语“或”是包括性的,表示和/或。短语“与...相关联”和“与其相关联”及其派生词表示包括、包括在...内、与…互连、包含、包含在...内、连接至或与...连接、耦接至或与...耦接、与...通信、与...协作、交错、并置、接近于、绑定到或与...绑定、具有、具有…的属性等。
尽管本公开内容已经描述了某些实施方式和一般相关联的方法,但是这些实施方式和方法的改变和置换对于本领域技术人员而言将是明显和易于辨别的。因此,对示例实施方式的以上描述不限定或限制本公开内容。在不脱离由所附权利要求限定的本公开内容的范围的情况下,其他变化、替换和改变也是可能的。
Claims (14)
1.一种用于无线基带设计的根据处理系统中的核追踪进行数据挖掘的方法,所述方法包括:
检测所述处理系统中的核追踪,所述核追踪是在所述处理系统中执行的指令序列;
将所述核追踪中的指令地址映射到多个应用或操作系统功能;
将所映射的功能设置成分层格式;
识别所述分层格式中的基因功能,其中,所述基因功能是由所述处理系统执行的基本功能;
根据所述分层格式得到所述基因功能的属性;以及
将所述属性存储到基因功能库数据库中。
2.根据权利要求1所述的方法,其中,所述核追踪包括指令地址、时间戳、加载/存储操作、数据位置和数据大小。
3.根据权利要求1至2中任一项所述的方法,其中,所得到的属性中之一是由所述处理系统在指令执行期间针对各种存储器空间而使用的存储器使用量,所述存储器使用量是根据所述核追踪中的加载/存储指令信息得到的。
4.根据权利要求1至3中任一项所述的方法,其中,所得到的属性中之一是在指令执行期间所述处理系统内的吞吐量,所述吞吐量是根据中央处理核与缓存之间交换的数据流信息以及所述缓存与存储器子系统之间交换的数据流信息得到的。
5.根据权利要求1至4中任一项所述的方法,其中,所得到的属性中之一是所述处理系统在指令执行期间的工作负荷,所述工作负荷是根据来自周期精确追踪的核的基线工作负荷、缓存未命中计数以及来自对各种存储器空间访问的延迟信息得到的。
6.根据权利要求1至5中任一项所述的方法,其中,所得到的属性中之一是所述处理系统在指令执行期间的功率使用,所述功率使用是根据加载/存储操作和算术逻辑单元(ALU)操作的计数得到的。
7.根据权利要求1至6中任一项所述的方法,还包括:
检测所述基因功能执行期间的抢占事件;以及
确定能够归因于所述抢占事件的成本。
8.一种用于无线基带设计的根据处理系统中的核追踪进行数据挖掘的设备,包括:
存储器,被配置成存储数据和指令代码;以及
处理器,在执行所述指令代码时被配置成:
检测所述处理系统中的核追踪,所述核追踪是在处理系统中执行的指令序列;
将所述核追踪中的指令地址映射到多个应用或操作系统功能;
将所映射的功能排序成分层格式;
识别所述分层格式中的基因功能,其中,所述基因功能是由所述处理系统执行的基本功能;
根据所述分层格式得到所述基因功能的属性;以及
将所述属性存储到基因功能库数据库中。
9.根据权利要求8所述的设备,其中,所述核追踪包括指令地址、时间戳、加载/存储操作、数据位置和数据大小。
10.根据权利要求8至9中任一项所述的设备,其中,所得到的属性中之一是由所述处理系统在指令执行期间针对各种存储器空间而使用的存储器使用量,所述存储器使用量是根据所述核追踪中的加载/存储指令信息得到的。
11.根据权利要求8至10中任一项所述的设备,其中,所得到的属性中之一是在指令执行期间所述处理系统内的吞吐量,所述吞吐量是根据中央处理核与缓存之间交换的数据流信息以及所述缓存与存储器子系统之间交换的数据流信息得到的。
12.根据权利要求8至11中任一项所述的设备,其中,所得到的属性中之一是所述处理系统在指令执行期间的工作负荷,所述工作负荷根据来自周期精确追踪的核的基线工作负荷、缓存未命中计数以及来自对各种存储器空间访问的延迟信息得到的。
13.根据权利要求8至12中任一项所述的设备,其中,所得到的属性中之一是所述处理系统在指令执行期间的功率使用,所述功率使用是根据加载/存储操作和算术逻辑单元(ALU)操作的计数得到的。
14.根据权利要求8至13中任一项所述的设备,其中,所述处理器还被配置成:
检测所述基因功能执行期间的抢占事件;以及
确定能够归因于所述抢占事件的成本。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/983,934 US11636122B2 (en) | 2015-12-30 | 2015-12-30 | Method and apparatus for data mining from core traces |
US14/983,934 | 2015-12-30 | ||
PCT/CN2016/113076 WO2017114472A1 (en) | 2015-12-30 | 2016-12-29 | Method and apparatus for data mining from core traces |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108885579A true CN108885579A (zh) | 2018-11-23 |
CN108885579B CN108885579B (zh) | 2020-11-27 |
Family
ID=59224591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680077507.4A Active CN108885579B (zh) | 2015-12-30 | 2016-12-29 | 用于根据核追踪进行数据挖掘的方法和设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11636122B2 (zh) |
EP (1) | EP3391224B1 (zh) |
KR (1) | KR102161192B1 (zh) |
CN (1) | CN108885579B (zh) |
WO (1) | WO2017114472A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116719643A (zh) * | 2023-07-17 | 2023-09-08 | 合芯科技有限公司 | 一种优化三级缓存访问延迟的多核处理器调度方法及装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10635769B1 (en) * | 2015-12-08 | 2020-04-28 | Xilinx, Inc. | Hardware and software event tracing for a system-on-chip |
KR102353859B1 (ko) * | 2017-11-01 | 2022-01-19 | 삼성전자주식회사 | 컴퓨팅 장치 및 비휘발성 듀얼 인라인 메모리 모듈 |
US11023442B2 (en) | 2018-02-23 | 2021-06-01 | Accenture Global Solutions Limited | Automated structuring of unstructured data |
CN110275670B (zh) * | 2018-03-16 | 2021-02-05 | 华为技术有限公司 | 控制存储设备中数据流的方法、装置、存储设备及存储介质 |
US11231987B1 (en) * | 2019-06-28 | 2022-01-25 | Amazon Technologies, Inc. | Debugging of memory operations |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1766848A (zh) * | 2005-11-08 | 2006-05-03 | 北京大学 | 基于模拟器的嵌入式软件运行时能耗估算方法 |
US8543367B1 (en) * | 2006-02-16 | 2013-09-24 | Synopsys, Inc. | Simulation with dynamic run-time accuracy adjustment |
CN103425565A (zh) * | 2012-05-16 | 2013-12-04 | 腾讯科技(深圳)有限公司 | 获取程序运行信息的方法及系统 |
CN103530471A (zh) * | 2013-10-23 | 2014-01-22 | 中国科学院声学研究所 | 一种基于模拟器的关键路径分析方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6223186B1 (en) * | 1998-05-04 | 2001-04-24 | Incyte Pharmaceuticals, Inc. | System and method for a precompiled database for biomolecular sequence information |
US20030140337A1 (en) | 2001-12-21 | 2003-07-24 | Celoxica Ltd. | System, method, and article of manufacture for data transfer reporting for an application |
US7401057B2 (en) * | 2002-12-10 | 2008-07-15 | Asset Trust, Inc. | Entity centric computer system |
US20050065969A1 (en) * | 2003-08-29 | 2005-03-24 | Shiby Thomas | Expressing sequence matching and alignment using SQL table functions |
US7904487B2 (en) * | 2003-10-09 | 2011-03-08 | Oracle International Corporation | Translating data access requests |
US7779238B2 (en) | 2004-06-30 | 2010-08-17 | Oracle America, Inc. | Method and apparatus for precisely identifying effective addresses associated with hardware events |
US8010337B2 (en) * | 2004-09-22 | 2011-08-30 | Microsoft Corporation | Predicting database system performance |
US7502777B2 (en) * | 2006-02-28 | 2009-03-10 | Red Hat, Inc. | System and method for self tuning object-relational mappings |
WO2007135490A1 (en) | 2006-05-24 | 2007-11-29 | Freescale Semiconductor, Inc. | Method and system for storing data from a plurality of processors |
CN101246449B (zh) | 2008-02-25 | 2011-08-10 | 华为技术有限公司 | 跟踪函数调用轨迹的方法和装置 |
US8966055B2 (en) * | 2008-11-14 | 2015-02-24 | Qualcomm Incorporated | System and method for facilitating capacity monitoring and recommending action for wireless networks |
US10817502B2 (en) * | 2010-12-13 | 2020-10-27 | Sandisk Technologies Llc | Persistent memory management |
US9965279B2 (en) * | 2013-11-29 | 2018-05-08 | The Regents Of The University Of Michigan | Recording performance metrics to predict future execution of large instruction sequences on either high or low performance execution circuitry |
US10050959B2 (en) * | 2014-09-03 | 2018-08-14 | Nanthealth, Inc. | Synthetic genomic variant-based secure transaction devices, systems and methods |
US20180329873A1 (en) * | 2015-04-08 | 2018-11-15 | Google Inc. | Automated data extraction system based on historical or related data |
-
2015
- 2015-12-30 US US14/983,934 patent/US11636122B2/en active Active
-
2016
- 2016-12-29 WO PCT/CN2016/113076 patent/WO2017114472A1/en active Application Filing
- 2016-12-29 EP EP16881261.8A patent/EP3391224B1/en active Active
- 2016-12-29 CN CN201680077507.4A patent/CN108885579B/zh active Active
- 2016-12-29 KR KR1020187021601A patent/KR102161192B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1766848A (zh) * | 2005-11-08 | 2006-05-03 | 北京大学 | 基于模拟器的嵌入式软件运行时能耗估算方法 |
US8543367B1 (en) * | 2006-02-16 | 2013-09-24 | Synopsys, Inc. | Simulation with dynamic run-time accuracy adjustment |
CN103425565A (zh) * | 2012-05-16 | 2013-12-04 | 腾讯科技(深圳)有限公司 | 获取程序运行信息的方法及系统 |
CN103530471A (zh) * | 2013-10-23 | 2014-01-22 | 中国科学院声学研究所 | 一种基于模拟器的关键路径分析方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116719643A (zh) * | 2023-07-17 | 2023-09-08 | 合芯科技有限公司 | 一种优化三级缓存访问延迟的多核处理器调度方法及装置 |
CN116719643B (zh) * | 2023-07-17 | 2024-04-05 | 合芯科技有限公司 | 一种优化三级缓存访问延迟的多核处理器调度方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
KR20180096780A (ko) | 2018-08-29 |
EP3391224B1 (en) | 2020-03-25 |
US11636122B2 (en) | 2023-04-25 |
EP3391224A1 (en) | 2018-10-24 |
EP3391224A4 (en) | 2019-01-09 |
WO2017114472A1 (en) | 2017-07-06 |
US20170193055A1 (en) | 2017-07-06 |
CN108885579B (zh) | 2020-11-27 |
KR102161192B1 (ko) | 2020-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108885579A (zh) | 用于根据核追踪进行数据挖掘的方法和设备 | |
Luu et al. | A multiplatform study of I/O behavior on petascale supercomputers | |
Winter et al. | Adaptive sparse matrix-matrix multiplication on the GPU | |
Jeong et al. | Androstep: Android storage performance analysis tool | |
US7779393B1 (en) | System and method for efficient verification of memory consistency model compliance | |
CN101329638A (zh) | 程序代码的并行性的分析方法和系统 | |
Diener et al. | Evaluating thread placement based on memory access patterns for multi-core processors | |
Boukhobza et al. | Flash Memory Integration: Performance and Energy Issues | |
US9298590B2 (en) | Methods and apparatuses for automated testing of streaming applications using mapreduce-like middleware | |
JP3608915B2 (ja) | マルチプロセッシングシステムの性能評価方法および装置並びにマルチプロセッシングシステムの性能評価プログラムを格納した記憶媒体 | |
CN110058958A (zh) | 用于管理数据备份的方法、设备和计算机程序产品 | |
CN109964207A (zh) | 用于时间行程调试和分析的基于高速缓存的跟踪 | |
Ji et al. | An artificial neural network model of LRU-cache misses on out-of-order embedded processors | |
US8340952B2 (en) | Power estimation method and device therefor | |
Daoudi et al. | somp: Simulating openmp task-based applications with numa effects | |
Geimer et al. | Recent developments in the scalasca toolset | |
Lu et al. | Fast cache simulation for host-compiled simulation of embedded software | |
US7606989B1 (en) | Method and apparatus for dynamically pre-tenuring objects in a generational garbage collection system | |
CN114020717A (zh) | 分布式存储系统的性能数据获取方法、装置、设备及介质 | |
Tran et al. | Instruction cache in hard real-time systems: modeling and integration in scheduling analysis tools with AADL | |
Hu et al. | A performance prototyping approach to designing concurrent software architectures | |
US20150169813A1 (en) | Creating an end point report based on a comprehensive timing report | |
Dreyer et al. | Non-intrusive online timing analysis of large embedded applications | |
US10713167B2 (en) | Information processing apparatus and method including simulating access to cache memory and generating profile information | |
CN110018814A (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 |