Papers for

computer architects

Papers whose findings have a practical use for this group, as judged from the abstract. Open a paper to read what it means in practice.

Proba prefetcher boosts memory speed and cuts traffic on multicore systems

Proba: A High-Performance, Low-Traffic Probabilistic Spatial Memory Streaming Prefetcher

Abstract: Spatial Memory Streaming (SMS) prefetchers exploit recurring spatial access patterns across memory regions to predict future accesses. Despite their effectiveness, existing SMS-based designs suffer from coarse control over aggressiveness and limited adaptability to dynamic program behavior and historical patterns. In this work, we present Proba, a feedback-directed SMS-based prefetcher that integrates probabilistic pattern updates, marginal accuracy decision-making, and pattern accumulation over several trigger features to achieve fine-grained accuracy-coverage trade-offs. When accuracy deteriorates, Proba moderates its aggressiveness to prioritize accurate prefetches; conversely, when accuracy rises, it expands its coverage. Proba achieves higher speedups than any other SMS-based prefetcher while being vastly more efficient in DRAM traffic. This culminates in a large performance gap between Proba and other techniques in multicore and DRAM-constrained scenarios without harming single-threaded throughput.

Wed 21 OctHardware Architecture
The gist
Computers move data from memory slowly, causing delays. Prefetchers try to guess what data will be needed next to speed things up. The authors made Proba, a new prefetcher that learns patterns better and adjusts how much it predicts based on how well it’s doing. This balance lets Proba speed up programs more than past designs while causing less extra memory traffic. Proba works well both when many programs run together and when memory is limited.
Open → 2610.30448v1

Full application simulator enhances computing directly in DRAM memory

A gem5-based Simulation Framework for Computing-in-DRAM

Abstract: Computing-in-Memory using DRAM (CIMD) has demonstrated substantial energy and throughput gains for memory-bound workloads consisting of bulk-bitwise operations, by performing computation directly within DRAM subarrays. Realizing CIMD, however, requires a redesign of the memory controller and careful mapping of operands onto the memory arrays. Presently, accurate FPGA-based testbeds exist, but they are costly and labor-intensive, while open-source simulators are largely trace-based and cannot execute full application runs. The only full-application CIMD simulator available, included with MIMDRAM, is built on an outdated version of gem5 and its toolchains. We present gem5-CIMD, a full-application CIMD simulation framework built on the latest version of gem5. We extend the simulated instruction set from four bitwise operations to sixteen CIM instructions spanning arithmetic, relational, conditional, and utility operations across a range of data types and bitwidths (4 to 64 bits). A complete memory-management stack comprising multi-level huge-page support, a CIM-aware allocator, and a subarray-aware address-mapping scheme ensures that CIM operands are co-located in the same DRAM subarray. In addition, gem5-CIMD is aware of the DRAM refresh interval and faithfully models and schedules the mandatory refresh operations when needed. We provide a CIM standard library intended as a compiler target and evaluate gem5-CIMD on multiple case studies including an end-to-end KNN workload. The simulator sources, including the evaluated workloads, are publicly available.

Tue 6 OctHardware ArchitectureEmerging Technologies
The gist
Computing directly inside DRAM memory can speed up certain tasks and cut energy use, but it needs special controllers and ways to organize data. The authors created gem5-CIMD, a simulator based on an updated gem5 platform, that can run entire programs using many operations inside DRAM. Their tool includes smart memory management and models important DRAM refresh cycles. They also provide code libraries and tested the simulator on practical examples like K-nearest neighbors. This simulator is publicly available for others to use and build upon.
Open → 2610.08186v1

LLM guided cache policies improve computer memory performance

CACHEFORGE: LLM-Guided End-to-End Generative Cache Replacement Policy for Performance and Hardware Efficiency

Abstract: Modern cache replacement designs saturate because they operate within fixed representational structures, hand-crafted and heuristic based feature-engineered predictors, or offline imitation models that cannot generate new decision logic on their own. At the same time, replacement is shaped by the causal interaction of prefetching, thrashing, spatial locality, and access-type behavior, producing an enormous design space that is difficult to traverse manually. Prior approaches typically rely on heuristics, parameter tuning, or imitation of an offline optimal policy, capturing correlations rather than synthesizing new mechanisms. As a result, their performance gains often plateau and they overfit under dynamic workload conditions. CACHEFORGE is the first framework to evolve cache-replacement policies end-to-end by embedding a large language model inside a governed hardware-aware loop. In each iteration, the LLM proposes new C++ replacement logic, the policy is evaluated under a trace-based CRC-2 ChampSim simulator, and the framework enforces feasibility through reward shaping, structural checks, dynamic mutation, temperature scheduling, and cross-policy crossover. This closed-loop generation-evolution loop specifically designed for cache replacement policy enables the discovery of compact policies that satisfy hardware constraints while exploring algorithmic transformations beyond fixed predictor structures. Across SPEC CPU2006, CACHEFORGE outperforms all CRC-2 baselines. It improves the total hit rate by 27.36%, 19.69%, 13.72%, 13.15%, 11.83%, and 5.73% over MPPPB, ReD, Hawk-eye, SHiP++, LIME, and LRU, respectively. On memory-intensive workloads, it increases IPC by 10.15%, 7.89%, 6.34%, 3.64%, 3.12%, and 2.71% over LRU, MPPPB, LIME, ReD, SHiP++, and Hawkeye.

Tue 6 OctHardware ArchitectureArtificial IntelligenceMachine Learning
The gist
Modern computer caches decide which data to keep or remove, but existing methods rely on fixed rules and can't easily adapt to changing needs. The authors introduce CACHEFORGE, a system that uses a large language model (LLM) to generate new cache replacement strategies automatically. This system tests, evolves, and refines these strategies iteratively, discovering more efficient and adaptable policies. The improved policies boost performance significantly on common computer benchmarks and memory-heavy tasks.
Open → 2610.07668v1

How addressing evolved into a math theory linking programming and hardware

The Mathematical Evolution of Addressing: From Yushchenko's Address Programming Language to A Mathematics of Arrays How Addressing Evolved into a Mathematical Theory of Indexing, Array Computation, and Machine Realization

Abstract: This article argues that a central development in the history of computing is the mathematical evolution of addressing. During the three decades separating Kateryna Yushchenko's Address Programming Language (1958) from Lenore Mullin's A Mathematics of Arrays (1988), addressing evolved from a machine-level mechanism for locating data into a formal theory of indexing, reduction, and machine realization, passing through Kenneth Iverson's algebra of arrays and Philip Abrams' recognition of shape as an architectural resource. Mullin's theory establishes indexing itself, via the function ψ, as the primitive from which array operations compose, reduce to a Denotational Normal Form, transform into an Operational Normal Form, and realize on hardware through dimension lifting. Historical claims are sourced against primary material, with inferences flagged as such; mathematical claims are stated as identities; performance claims are marked validated, theoretically established, or provisional. The result links programming languages, array mathematics, and computer architecture in one account.

Sun 20 SeptGeneral LiteratureProgramming Languages
The gist
Addressing started as a simple way for computers to find data in memory. Over thirty years, it grew into a full mathematical theory that explains how to organize and work with arrays (collections of data). The authors show how this process connects programming languages, math for arrays, and computer hardware design. This math lets programmers describe, analyze, and implement data operations more clearly and efficiently.
Open → 2609.23854v1