Publication:
Reusetracker: fast yet accurate multicore reuse distance analyzer

dc.contributor.coauthorChabbi, Milind
dc.contributor.departmentDepartment of Computer Engineering
dc.contributor.departmentGraduate School of Sciences and Engineering
dc.contributor.kuauthorErten, Didem Unat
dc.contributor.kuauthorMarzijarani, Mandana Bagheri
dc.contributor.kuauthorSasongko, Muhammad Aditya
dc.contributor.schoolcollegeinstituteCollege of Engineering
dc.contributor.schoolcollegeinstituteGRADUATE SCHOOL OF SCIENCES AND ENGINEERING
dc.date.accessioned2024-11-09T23:00:48Z
dc.date.issued2022
dc.description.abstractOne widely used metric that measures data locality is reuse distance-the number of unique memory locations that are accessed between two consecutive accesses to a particular memory location. State-of-the-art techniques that measure reuse distance in parallel applications rely on simulators or binary instrumentation tools that incur large performance and memory overheads. Moreover, the existing sampling-based tools are limited to measuring reuse distances of a single thread and discard interactions among threads in multi-threaded programs. In this work, we propose REUSETRACKER a fast and accurate reuse distance analyzer that lever-ages existing hardware features in commodity CPUs. REUSETRACKER is designed for multi-threaded programs and takes cache-coherence effects into account. By utilizing hardware features like performance monitoring units and debug registers, REUSETRACKER can accurately profile reuse distance in parallel applications with much lower overheads than existing tools. It introduces only 2.9x runtime and 2.8x memory overheads. Our tool achieves 92% accuracy when verified against a newly developed configurable benchmark that can generate a variety of different reuse distance patterns. We demonstrate the tool's functionality with two use-case scenarios using PARSEC, Rodinia, and Synchrobench benchmark suites where REUSETRACKER guides code refactoring in these benchmarks by detecting spatial reuses in shared caches that are also false sharing and successfully predicts whether some benchmarks in these suites can benefit from adjacent cache line prefetch optimization.
dc.description.indexedbyWOS
dc.description.indexedbyScopus
dc.description.issue1
dc.description.openaccessYES
dc.description.publisherscopeInternational
dc.description.sponsoredbyTubitakEuTÜBİTAK
dc.description.sponsorshipScientific and Technological Research Council of Turkey (TUBITAK) [120E492]
dc.description.sponsorshipRoyal Society-Newton Advanced Fellowship The work is supported by the Scientific and Technological Research Council of Turkey (TUBITAK), Grant No. 120E492. Dr. Didem Unat is supported by the Royal Society-Newton Advanced Fellowship.
dc.description.volume19
dc.identifier.doi10.1145/3484199
dc.identifier.eissn1544-3973
dc.identifier.issn1544-3566
dc.identifier.scopus2-s2.0-85127188216
dc.identifier.urihttps://doi.org/10.1145/3484199
dc.identifier.urihttps://hdl.handle.net/20.500.14288/8127
dc.identifier.wos771937000003
dc.keywordsReuse distance
dc.keywordsHardware performance counters
dc.keywordsDebug registers
dc.keywordsAddress sampling
dc.language.isoeng
dc.publisherAssoc Computing Machinery
dc.relation.ispartofACM Transactions on Architecture and Code Optimization
dc.subjectComputer science
dc.subjectComputer architecture
dc.titleReusetracker: fast yet accurate multicore reuse distance analyzer
dc.typeJournal Article
dspace.entity.typePublication
local.contributor.kuauthorSasongko, Muhammad Aditya
local.contributor.kuauthorMarzijarani, Mandana Bagheri
local.contributor.kuauthorErten, Didem Unat
local.publication.orgunit1College of Engineering
local.publication.orgunit1GRADUATE SCHOOL OF SCIENCES AND ENGINEERING
local.publication.orgunit2Department of Computer Engineering
local.publication.orgunit2Graduate School of Sciences and Engineering
relation.isOrgUnitOfPublication89352e43-bf09-4ef4-82f6-6f9d0174ebae
relation.isOrgUnitOfPublication3fc31c89-e803-4eb1-af6b-6258bc42c3d8
relation.isOrgUnitOfPublication.latestForDiscovery89352e43-bf09-4ef4-82f6-6f9d0174ebae
relation.isParentOrgUnitOfPublication8e756b23-2d4a-4ce8-b1b3-62c794a8c164
relation.isParentOrgUnitOfPublication434c9663-2b11-4e66-9399-c863e2ebae43
relation.isParentOrgUnitOfPublication.latestForDiscovery8e756b23-2d4a-4ce8-b1b3-62c794a8c164

Files