HRM_merge {mergingTools}R Documentation

HRM merge

Description

HRM_merge merges HEMs coming from separate subexperiments into one single dataset. A Subexperiment is a measurement of a group of HEMs the size of the allowed PMCs by the machine. For HRM there is a designated anchor HEM that will be included on each subexperiment. For more details check the reference paper below. The input data must be in a specific format:

1 2 3 1 4 5
30 15 20 40 10 12
35 16 25 25 13 15
32 14 30 21 11 17

where the numbers on top are the codes for the HEMs on the T2080. In this case we have two subexperiments: subexp1 = (1, 2, 3), subexp2 = (1, 4, 5); and H1 is the anchor HEM that should be included in each subexperiment. The data will be processed into:

H1 H2 H3 H1 H4 H5
30 15 20 40 10 12
35 16 25 25 13 15
32 14 30 21 11 17

The processing transforms the code of the HEMs to the reference name on the T2080 manual. merge_hems sorts each subexperiment by the anchor HEM, and the substitutes the anchor HEM by its quantiles. If one inputs the example dataset, merge_hems will return:

H1 H2 H3 H4 H5
21 15 20 11 17
31 14 30 13 15
40 16 25 10 12

Usage

HRM_merge(data = NULL, anchor_hem = NULL)

Arguments

data

Sample data.

anchor_hem

Reference HEM for merging

Value

Returns a merged dataframe as stated in the description

References

S. Vilardell, I. Serra, R. Santalla, E. Mezzetti, J. Abella and F. J. Cazorla, "HRM: Merging Hardware Event Monitors for Improved Timing Analysis of Complex MPSoCs," in IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 39, no. 11, pp. 3662-3673, Nov. 2020, <doi:10.1109/TCAD.2020.3013051>.

Examples

library(mergingTools)
n_pmcs <- 6
data_hrm <- mergingTools::process_raw_experiments(data = data_hrm_raw_vignette, n_pmcs = n_pmcs)
merged_data <- mergingTools::HRM_merge(data = data_hrm, anchor_hem = "PROCESSOR_CYCLES")

[Package mergingTools version 1.0.1 Index]