Show simple item record

dc.contributor.authorTiganourias, E
dc.contributor.authorMavropoulos, M
dc.contributor.authorKeramidas, G
dc.contributor.authorKelefouras, Vasileios
dc.contributor.authorAntonopoulos, CP
dc.contributor.authorVoros, N
dc.date.accessioned2021-09-03T16:08:05Z
dc.date.available2021-09-03T16:08:05Z
dc.date.issued2021-06-07
dc.identifier.isbn9780738133614
dc.identifier.urihttp://hdl.handle.net/10026.1/17760
dc.description.abstract

Profiling based techniques have gained much attention on computer architecture and software analysis communities. The target is to rely on one or more profiling tools in order to identify specific code pieces of interest e.g., code pieces that slowdown a given application. The extracted code pieces can be further modified and optimized. In general, the profiling tools can be classified as deterministic, statistical-based, or rely on hardware performance counters. A common characteristic of the available profiling tools is typically based on analyzing or even manipulating (in case of binary instrumentation tools) machine-level code. This approach come with two main drawbacks. First, a lot of information (even GBytes of data) needs to be gathered, stored, post-processed, and visualized. Second, the performed analysis of the gathered data is platform-specific and it is not straightforward to categorize the given applications/program phases/kernels into distinct categories that have the same or almost the same behavior (e.g., the same percentage of computational vs. control instructions). The latter stems from the fact even small changes in the source code of the applications might lead to significantly different machine code implementations. Therefore, even two specific program kernels exhibit the same behavior (e.g., they have the same number of instructions, but with a different ordering), it is very difficult for a machine-code level profiling tool to assess their similarity, simply because the generated machine level code might have significant differences resulting in many missing opportunities for the available profiling tools. To address this issue, in this paper, we present a new profiling tool that is able to operate on the machine independent intermediate representation (IR) level. The profiler (still in development phase) relies on the LLVM API and it is able to hierarchically (at various levels of the call stack) and recursively parse the IR code and extract various useful statistics. We showcase the practicality of our profiler by analyzing a subset of the PolyBench benchmarks assuming (as pointed out by a recent study) that there is a strong correlation of LLVM IR code.

dc.format.extent1-5
dc.language.isoen
dc.publisherIEEE
dc.rightsAttribution 4.0 International
dc.rightsAttribution 4.0 International
dc.rightsAttribution 4.0 International
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/
dc.titleA Hierarchical Profiler of Intermediate Representation Code based on LLVM
dc.typeconference
dc.typeConference Proceeding
plymouth.date-start2021-06-07
plymouth.date-finish2021-06-10
plymouth.volume00
plymouth.conference-name2021 10th Mediterranean Conference on Embedded Computing (MECO)
plymouth.publication-statusPublished
plymouth.journal2021 10th Mediterranean Conference on Embedded Computing (MECO)
dc.identifier.doi10.1109/meco52532.2021.9460203
plymouth.organisational-group/Plymouth
plymouth.organisational-group/Plymouth/Faculty of Science and Engineering
plymouth.organisational-group/Plymouth/REF 2021 Researchers by UoA
plymouth.organisational-group/Plymouth/REF 2021 Researchers by UoA/UoA11 Computer Science and Informatics
plymouth.organisational-group/Plymouth/Users by role
plymouth.organisational-group/Plymouth/Users by role/Academics
dc.rights.embargoperiodNot known
rioxxterms.versionofrecord10.1109/meco52532.2021.9460203
rioxxterms.licenseref.urihttp://creativecommons.org/licenses/by/4.0/
rioxxterms.typeConference Paper/Proceeding/Abstract


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record

Attribution 4.0 International
Except where otherwise noted, this item's license is described as Attribution 4.0 International

All items in PEARL are protected by copyright law.
Author manuscripts deposited to comply with open access mandates are made available in accordance with publisher policies. Please cite only the published version using the details provided on the item record or document. In the absence of an open licence (e.g. Creative Commons), permissions for further reuse of content should be sought from the publisher or author.
Theme by 
Atmire NV