Exploring the Search Space of Hybrid E/P Cores Prefetch Configurations using Machine Learning

In modern computer architecture, prefetching is a technique used to improve performance by bridging the memory latency gap between the processor and the memory. Prefetchers predict which data or instructions will be needed soon and fetch them from higher levels of the memory hierarchy to lower levels. However, overly aggressive prefetching can lead to [pollution] in the last-level cache, disrupt efficient workload distribution across cores by altering the per-thread cache hit rate, and can significantly increase memory bandwidth usage. This issue is particularly pronounced in heterogeneous CPU architectures, such as Intel's Arrow Lake, which combines Performance cores (P-cores) and Efficiency cores (E-cores). E-cores offer fine-grained control over prefetching, making it crucial to co-optimize E-core prefetching alongside the overall system configurations to achieve the best performance. A pilot study has explored the energy and performance behavior of E-cores and P-cores with a subset of different thread counts on an Intel Meteor Lake processor. The study also examined the search space and estimated the potential performance gains a dynamic optimizer could achieve. The main goal of this thesis is to design a system that attempts to search for an optimal prefetcher configuration along with other system settings to maximize performance while minimizing energy consumption. We also aim to determine whether the best-performing configurations for a given benchmark suite remain effective across different benchmarks. The Intel Arrow Lake architecture provides 35 tunable parameters for its hardware E-core prefetchers, accessible through various Model-Specific Registers (MSRs). In this thesis, we selected 15 prefetcher parameters from the available set and combined them with other system-level parameters, such as E-core and P-core frequencies, number of threads, OpenMP scheduling strategies, and compiler flags, resulting in a configuration space of over 6 billion unique combinations. Given the vast configuration search space, we use machine learning techniques, specifically Bayesian Optimization, to search the vast space. Then we analyze data and effectively select the top-performing and/or energy-efficient configurations. Through the combination of dynamic search techniques and data analytics methods such as Random Forest classification and K-means clustering, this thesis successfully identified configuration parameters that strongly influence performance, energy consumption, and EDP. To further assess the role of prefetcher tuning, we conducted three focused case studies where only prefetcher settings were optimized under fixed core frequency regimes (low, mid, and high range). Despite the vast search space, these techniques allowed us to efficiently explore meaningful regions and uncover high-impact configurations, demonstrating that intelligent tuning can lead to significant system-level improvements.

Publication Details

Journal
KTH Publication Database DiVA (KTH Royal Institute of Technology)
Published
2025-01-01
Primary Topic
Astrophysical Phenomena and Observations
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Exploring the Search Space of Hybrid E/P Cores Prefetch Configurations using Machine Learning

KTH Publication Database DiVA (KTH Royal Institute of Technology)
Astrophysical Phenomena and Observations
article

Exploring the Search Space of Hybrid E/P Cores Prefetch Configurations using Machine Learning

article en

Abstract

In modern computer architecture, prefetching is a technique used to improve performance by bridging the memory latency gap between the processor and the memory. Prefetchers predict which data or instructions will be needed soon and fetch them from higher levels of the memory hierarchy to lower levels. However, overly aggressive prefetching can lead to [pollution] in the last-level cache, disrupt efficient workload distribution across cores by altering the per-thread cache hit rate, and can significantly increase memory bandwidth usage. This issue is particularly pronounced in heterogeneous CPU architectures, such as Intel's Arrow Lake, which combines Performance cores (P-cores) and Efficiency cores (E-cores). E-cores offer fine-grained control over prefetching, making it crucial to co-optimize E-core prefetching alongside the overall system configurations to achieve the best performance. A pilot study has explored the energy and performance behavior of E-cores and P-cores with a subset of different thread counts on an Intel Meteor Lake processor. The study also examined the search space and estimated the potential performance gains a dynamic optimizer could achieve. The main goal of this thesis is to design a system that attempts to search for an optimal prefetcher configuration along with other system settings to maximize performance while minimizing energy consumption. We also aim to determine whether the best-performing configurations for a given benchmark suite remain effective across different benchmarks. The Intel Arrow Lake architecture provides 35 tunable parameters for its hardware E-core prefetchers, accessible through various Model-Specific Registers (MSRs). In this thesis, we selected 15 prefetcher parameters from the available set and combined them with other system-level parameters, such as E-core and P-core frequencies, number of threads, OpenMP scheduling strategies, and compiler flags, resulting in a configuration space of over 6 billion unique combinations. Given the vast configuration search space, we use machine learning techniques, specifically Bayesian Optimization, to search the vast space. Then we analyze data and effectively select the top-performing and/or energy-efficient configurations. Through the combination of dynamic search techniques and data analytics methods such as Random Forest classification and K-means clustering, this thesis successfully identified configuration parameters that strongly influence performance, energy consumption, and EDP. To further assess the role of prefetcher tuning, we conducted three focused case studies where only prefetcher settings were optimized under fixed core frequency regimes (low, mid, and high range). Despite the vast search space, these techniques allowed us to efficiently explore meaningful regions and uncover high-impact configurations, demonstrating that intelligent tuning can lead to significant system-level improvements.

KTH Publication Database DiVA (KTH Royal Institute of Technology)
Affordable and clean energy
Openalex Percentile: Top 50%
Astrophysical Phenomena and Observations
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.