Pith. sign in

REVIEW 3 major objections 4 minor 89 references

Multi-Dimensional Vector ISA Extension for Mobile In-Cache Computing

T0 review · 3 major / 4 minor · reviewed 2026-08-10 · deepseek-v4-flash

Pith's one-line read A multi-dimensional vector ISA extension lets mobile in-cache computing engines use all 8192 SIMD lanes by encoding parallel work across up to four data dimensions.

desk verdict Solid architecture paper with a genuinely new multi-dimensional vector ISA for in-cache computing; the headline speedups are plausible but rest on borrowed simulator parameters, so they should be treated as indicative rather than measured. read the letter →

arxiv 2501.09902 v1 pith:3BEJZCCA submitted 2025-01-17 cs.AR

classification cs.AR
keywords multi-dimensionalvectorISAin-cachecomputingbit-serialSRAMmobileCPUsSIMDutilizationdata-levelparallelismArmNeoncomparisonin-SRAM
verification ladder T0 review T1 audit T2 compute T3 formal

The pith

A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.

The reading

This paper claims that the reason in-cache computing has not caught on for mobile CPUs is not the hardware but the instruction set: existing long-vector ISAs only describe one-dimensional strided and random memory access, while mobile data-parallel kernels expose limited parallelism in any single dimension (an average of 635 lanes in the benchmark suite studied). It proposes MVE, a long-vector multi-dimensional vector ISA extension that lets one instruction describe up to four dimensions of strided or random access, including replication via zero strides and coarse-grain dimension-level masking. On a bit-serial in-SRAM engine built from half of a 512 KB private L2 cache, MVE is claimed to outperform the Arm Neon SIMD units of a commercial mobile core by 2.9x in execution time and 8.8x in energy, at 3.6% area overhead, and to improve in-cache engine utilization from 23% to 60% compared with a one-dimensional long-vector ISA on the same engine. If these numbers hold, MVE would make in-cache computing a practical, low-area way to scale vector throughput on mobile processors for fine-grain data-parallel kernels.

What carries the argument

The load-bearing object is the multi-dimensional logical register abstraction layered on top of a bit-serial in-SRAM computing engine. An MVE physical register spans all 32 compute-capable SRAM arrays of half the L2 cache, giving 8192 bit-serial SIMD lanes with data elements stored vertically along bitlines; the ISA exposes this as a logical register with up to four dimensions, whose lengths and strides live in control registers. Stride modes 0 and 1 encode the frequent values zero (replication) and one (sequential), mode 2 derives the stride from the lower dimension's length, and mode 3 reads a configurable stride from a control register. Random access fetches one base address per element of the highest dimension from a memory array and applies strides to the inner dimensions. A dimension-level mask control register masks off whole slices of the highest dimension without touching per-lane predicate vectors, and a cache controller with per-control-block state machines maps logical indices to SRAM bitlines while a transpose memory unit (TMU) handles data movement between memory and the vertical bitline layout.

What would settle it

Measure the actual cycle count of a 32-bit bit-serial addition on a fabricated 7nm 256x256 SRAM compute array with the same peripheral logic, and feed that latency plus measured TMU/crossbar energy into the paper's simulator; if the 44-kernel geometric-mean speedup over Neon drops below the claimed 2.9x and energy reduction below 8.8x, the central claim is falsified.

Watch

Extended reading notes

Core claim

The paper's central discovery is that mobile vector kernels can be made to fill an 8192-lane in-cache SIMD engine if the ISA expresses parallelism across multiple dimensions of the data structure rather than flattening everything into one long vector. MVE treats each 8192-element physical register as a logical register with up to four dimensions, whose lengths and strides are set in control registers; loads and stores then gather elements using per-dimension stride modes, with a zero stride causing replication and a random stride reading base addresses from a pointer array for the outermost dimension. This collapses what would be many masked one-dimensional accesses, pack/unpack moves, and mask-generating scalar instructions into a single instruction. The paper reports that on 44 kernels from 12 mobile libraries, MVE reduces dynamic vector instructions 2.3x and scalar instructions 2.0x versus a one-dimensional long-vector ISA on the same bit-serial engine, cutting idle time and yielding 2.9x average speedup and 8.8x energy reduction over commercial packed-SIMD execution, with a 3.6% area overhead to the core.

Load-bearing premise

The evaluation assumes that the bit-serial in-SRAM instruction latencies and per-operation energy numbers taken from prior in-cache designs carry over unchanged to MVE's 8192-lane engine integrated into an Arm core; if the real SRAM compute latency, energy, or the transpose/crossbar data-movement cost is materially worse, the 2.9x, 8.8x, and 3.8x-versus-1D-ISA results would not hold at the reported magnitudes.

Editorial extensions

If this is right

  • In-cache computing engines become viable for mobile parts without adding dedicated vector register files or wide ALUs, since the area overhead is 3.6% versus 16.3% for the evaluated Neon-style vector datapath.
  • Workloads whose one-dimensional parallelism is far below the SIMD width, such as the 128-element audio chunks in the WebRTC module, can still fill all 8192 lanes by batching multiple chunks into higher dimensions.
  • The multi-dimensional ISA helps every in-SRAM computing scheme, not just bit-serial: the paper reports 3.8x, 2.8x, and 1.8x speedups over a one-dimensional ISA for bit-serial, bit-hybrid, and bit-parallel engines, respectively.
  • Tightly integrated in-cache vector execution avoids kernel-launch and data-copy overheads, so MVE outperforms a mobile GPU on small matrix sizes (up to roughly 6M FLOPs for GEMM and 4.6M FLOPs for SpMM), a regime where GPU overhead dominates.
  • Lower-precision kernels gain the most because bit-serial arithmetic cost scales quadratically with precision while the competing SIMD datapath scales linearly; 8-bit image, graphics, and string kernels show the largest speedups.

Reading between the lines

Editorial extensions of the paper, not claims the author makes directly.

  • Beyond the paper's benchmark set, the multi-dimensional stride encoding could plausibly extend to kernels with data-dependent or triangular strides, though the paper does not evaluate such patterns; a gather-in-lower-dimension variant would be a natural stress test.
  • The paper's own scalability analysis shows idle time becomes the dominant bottleneck when the number of SRAM arrays grows, suggesting that the same ISA on server-class caches would need multi-core or multi-issue vector dispatch rather than wider single-engine arrays.
  • The reported utilization gain from 23% to 60% assumes the benchmark mix of the mobile suite used in the paper; a kernel set dominated by long one-dimensional arrays (e.g., large linear algebra) would narrow the gap between MVE and a 1D ISA, since both would saturate the lanes.
  • Because the coherency mechanism relies on an inclusive L2 with presence bits and flushes dirty lines on mode switch, multi-core sharing of the same cache or finer-grained switching could add coherence traffic that the single-core evaluation does not capture.
Share X Bluesky LinkedIn Reddit HN

Signed reviews

No signed human review yet.

Editorial analysis

A structured set of objections, weighed in public.

Desk editor's note, referee report, and a circularity audit.

Referee Report

3 major / 4 minor

Summary. The paper proposes MVE, a multi-dimensional vector ISA extension for in-cache (bit-serial SRAM) computing in mobile CPUs. MVE extends long-vector ISAs with multi-dimensional strided and random loads/stores and dimension-level masked execution, and adds microarchitectural support (MVE controller, TMU, crossbar) in the private L2. The authors evaluate 44 kernels from 12 mobile libraries with a trace-driven cycle-accurate simulator plus on-device Neon/GPU measurements, reporting 2.9x speedup and 8.8x energy reduction over Arm Neon, 3.8x over RVV on the same bit-serial engine, and 3.6% area overhead.

Significance. If the reported results hold, the paper makes a solid systems contribution: it identifies a real mismatch between 1D vector ISAs and multi-dimensional mobile kernels, proposes a compact ISA and a concrete cache architecture, and ships a substantial artifact (simulator, compiler scripts, benchmark implementations, traces) that reproduces most headline figures. The utilization improvement from 23% (RVV) to 60% (MVE) on the same engine is a crisp, falsifiable claim. The main risk is that the quantitative headroom rests on unvalidated in-SRAM latency/energy parameters from prior same-group work and on an unmodeled TMU/crossbar cost, so the exact speedup/energy ratios are not yet established to the standard the paper claims.

major comments (3)
  1. [Section VI and Section V-B] The load-bearing performance and energy numbers depend on parameter transfer that is not validated or sensitivity-tested. The text states that the simulator uses 'the bit-serial in-SRAM instruction latency of Duality Cache [35]' and 'the bit-serial in-SRAM computing energy parameters from [31]', while Section V-B describes TMU transpose and crossbar routing without giving their cycle or energy costs. Since data access is 34.8% of execution time on average (Figure 7(a)), even a few hundred extra cycles per CB load/store would materially erode the 2.9x/8.8x margins. Please add a sensitivity sweep over in-SRAM operation latencies, TMU/XB routing costs, and per-operation energy, or provide independent measurements/RTL characterization for these components.
  2. [Appendix B] The artifact does not reproduce the Duality Cache comparison: Appendix B explicitly states that Figure 12(a) is excluded due to 'complexities with DC's simulation infrastructure (GPU Ocelot)'. As that figure supports the claim that MVE outperforms a SIMT-based in-cache design (Section VII-C), the non-reproducible DC result should either be backed by a reproducible artifact path or be reported as a preliminary/simulator-only result with a clear caveat.
  3. [Section VI] The evaluation mixes measured baselines with simulated MVE numbers without an end-to-end cycle-accuracy validation of the MVE simulator. Functional correctness is validated against Neon outputs, which is good, but no comparison is presented between simulator-predicted Neon performance and measured Neon performance on the Snapdragon 855. At minimum, the simulator should be calibrated against the measured Neon baseline (or the discrepancy should be quantified) before the 2.9x ratio is treated as quantitative.
minor comments (4)
  1. [Section IV] In the matrix-transposition code snippet, Line 3 calls vsetdiml(0, M) and vsetdiml(0, 8192/M); the second call should presumably be vsetdiml(1, 8192/M), since DIM1 is the row dimension.
  2. [Section III-E] The heading 'Conventional Predictated Execution' contains a typo; it should read 'Predicated Execution'.
  3. [Section VI] The paper should provide a table of the Duality Cache operation latencies and Neural Cache energy values used by the simulator, since these values are central to reproducibility and are currently only referenced by citation.
  4. [Section VII-C] The text says MVE 'cuts down the idle time of AC by 2.0x', but Figure 13 reports 1.2x performance improvement for AC; please clarify whether the 2.0x refers to idle time specifically and align the phrasing with the figure.

Circularity Check

0 steps flagged · score 0.0 of 10

No significant circularity: MVE's speedups come from a trace-driven simulator with fixed published parameters; the paper's self-citations are benchmarks and component models, not definitional inputs that force the results.

full rationale

Walking the derivation chain: the design premise (limited 1D data-level parallelism in mobile kernels, prevalence of multidimensional access patterns) is supported by the Swan benchmark suite [49], which is authored by this group but is a concrete, separately published workload set; relying on it is a benchmark-selection choice, not a circular reduction. The simulator uses 'the bit-serial in-SRAM instruction latency of Duality Cache [35]' and 'the bit-serial in-SRAM computing energy parameters from [31]' (Section VI). These are component-model transfers from prior, separately published artifacts with stated models; no parameter is fit to the MVE-versus-Neon, MVE-versus-RVV, or MVE-versus-GPU results, so the headline 2.9x, 8.8x, 3.8x numbers are not forced by construction. The RVV comparison runs both ISAs on the same modeled in-cache engine, and the 5.3x/13.0x instruction-count deltas follow from the arithmetic of 8192 SIMD lanes divided by output-matrix widths, not from the conclusion. The Appendix explicitly states that the artifact does not reproduce the Duality Cache comparison in Figure 12(a); this is a reproducibility gap in one ancillary comparison, but it does not make the central derivation circular because the MVE-vs-DC claim is an architectural model comparison, not an equation whose outputs equal its inputs. No step defines X in terms of Y, renames a fitted parameter as a prediction, or imports a uniqueness theorem from self-citation. Therefore the paper is judged to have no significant circularity, with the main caveat being sensitivity of the absolute speedups to the cited in-SRAM latency/energy parameters rather than a circular derivation.

Assumptions & free parameters 0 free parameters · 4 assumptions · 2 invented entities

The central results depend on prior same-group in-SRAM compute models, the representativeness of the Swan workload set, and a trace-driven simulator that is not hardware-validated. There are no free parameters fitted to make MVE win; all constants are inherited from published cache-computing models. MVE itself is a proposed ISA and architecture with no independent silicon evidence.

assumptions (4)
  • domain assumption SRAM arrays can be repurposed as bit-serial vector engines with the cycle and energy counts given by Neural Cache and Duality Cache.
    Section VI performance modeling uses "the bit-serial in-SRAM instruction latency of Duality Cache" and "the bit-serial in-SRAM computing energy parameters from [31]". The entire speedup and energy result inherits these prior numbers.
  • domain assumption Swan benchmark suite is representative of data-parallel mobile kernels, and its 44 kernels, with 11 selected for detailed study, capture enough multidimensionality.
    Swan [49] is by the same authors; Section III uses it as the workload basis and Section VI selects 11 kernels for detailed comparison. If the suite over-represents multidimensional patterns, MVE's benefit shrinks.
  • domain assumption Tracing binaries with DynamoRIO on an Armv8.2-A server CPU and replaying traces in a custom simulator faithfully models the Snapdragon 855 core microarchitecture.
    Section VI 'Performance modeling' describes this trace-driven methodology; the simulator is not validated against hardware.
  • domain assumption Inclusive L2 with presence bits preserves L1/L2 coherency for MVE loads and stores.
    Section V-C argues this design preserves coherency; it is an architectural assumption, not a measured property.
invented entities (2)
  • MVE multi-dimensional vector ISA extension
    purpose: Encode up to four dimensions of data-level parallelism for in-cache vector engines, reducing instruction count and improving lane utilization.
    No silicon or standard ratification is provided; evidence is simulator-based. It is the paper's proposed entity, not an independently observed one.
  • MVE controller, Transpose Memory Unit (TMU), and crossbar hardware
    purpose: Flatten logical multi-dimensional registers onto SRAM bitlines and transpose data between horizontal memory words and vertical SIMD lanes.
    These blocks are synthesized in RTL for area but not fabricated; their performance is modeled analytically and from prior same-group work.

how reviews work

0 comments
Cite this review

Pith. "Pith review of Multi-Dimensional Vector ISA Extension for Mobile In-Cache Computing." pith.science (2026). https://pith.science/paper/3BEJZCCA

@misc{pith2026250109902,
  author       = {Pith},
  title        = {Pith review of: Multi-Dimensional Vector ISA Extension for Mobile In-Cache Computing},
  year         = {2026},
  howpublished = {\url{https://pith.science/paper/3BEJZCCA}},
  note         = {Machine review of arXiv:2501.09902}
}
read the original abstract

In-cache computing technology transforms existing caches into long-vector compute units and offers low-cost alternatives to building expensive vector engines for mobile CPUs. Unfortunately, existing long-vector Instruction Set Architecture (ISA) extensions, such as RISC-V Vector Extension (RVV) and Arm Scalable Vector Extension (SVE), provide only one-dimensional strided and random memory accesses. While this is sufficient for typical vector engines, it fails to effectively utilize the large Single Instruction, Multiple Data (SIMD) widths of in-cache vector engines. This is because mobile data-parallel kernels expose limited parallelism across a single dimension. Based on our analysis of mobile vector kernels, we introduce a long-vector Multi-dimensional Vector ISA Extension (MVE) for mobile in-cache computing. MVE achieves high SIMD resource utilization and enables flexible programming by abstracting cache geometry and data layout. The proposed ISA features multi-dimensional strided and random memory accesses and efficient dimension-level masked execution to encode parallelism across multiple dimensions. Using a wide range of data-parallel mobile workloads, we demonstrate that MVE offers significant performance and energy reduction benefits of 2.9x and 8.8x, on average, compared to the SIMD units of a commercial mobile processor, at an area overhead of 3.6%.

Figures

Figures reproduced from arXiv: 2501.09902 by the authors.

Figure 1
Figure 1. (a) Mobile core with in-cache computing enabled for half of the L2 [PITH_FULL_IMAGE:figures/full_fig_p003_1.png] view at source ↗
Figure 2
Figure 2. (a) MVE operates on N long-vector in-cache registers. (b) In-cache data elements and SIMD lanes use the vertical data layout of bit-lines. (c) An in-cache physical register spans all compute-capable SRAM arrays. bitlines provides 256 data elements for a PR. (c) Each PR spans across all SRAM arrays. Therefore, an in-cache long￾vector PR contains 8K data elements using 32 SRAM arrays. We observe that the mobile data-p… view at source ↗
Figure 3
Figure 3. Strided memory access example of Intrapicture Prediction kernel: loading from (a) 2D memory layout to (b) 3D logical registers, mapped to (c) the SIMD lanes of flattened-out physical registers by MVE controller. Each stride value (Si) takes up to 16 instruction bits. Encod￾ing multiple stride values for different dimensions increases the instruction width. However, our analysis shows that stride values of 0 (for rep… view at source ↗
Figures from the paper (8 more)
Figure 5
Figure 5. Figure 5: MVE Controller maps multi-dimensional logical registers to 1D Physical SIMD Registers. Efficient dimension-level masked execution masks off leaves under a node in the highest dimension of the tree (iterations of the outer-most loop). require coarse-grain masked executi…
Figure 6
Figure 6. Figure 6: MVE adds pink modules to the Cache Architecture. [PITH_FULL_IMAGE:figures/full_fig_p008_6.png]
Figure 7
Figure 7. Figure 7: (a) Execution time and (b) energy consumption of MVE normalized [PITH_FULL_IMAGE:figures/full_fig_p009_7.png]
Figure 10
Figure 10. Figure 10: MVE Performance compared to RISC-V RVV [ [PITH_FULL_IMAGE:figures/full_fig_p010_10.png]
Figure 9
Figure 9. Figure 9: GEMM and SpMM execution time of MVE and Adreno 640 GPU [PITH_FULL_IMAGE:figures/full_fig_p010_9.png]
Figure 12
Figure 12. Figure 12: (a) Performance comparison with Duality Cache [ [PITH_FULL_IMAGE:figures/full_fig_p011_12.png]
Figure 13
Figure 13. Figure 13: Performance improvement of MVE compared to RISC-V RVV [ [PITH_FULL_IMAGE:figures/full_fig_p011_13.png]
Figure 14
Figure 14. Figure 14: Simulation takes four steps. Steps 1 and 2 must be executed on an Armv8.2-A machine. Steps 3 and 4 can be performed on any machine. [PITH_FULL_IMAGE:figures/full_fig_p014_14.png]

Discussion (0). Continue with ORCID to comment.

Reference graph

Works this paper leans on

89 extracted references · 67 canonical work pages

  1. [35]

    Duality cache for data parallel acceleration,

    D. Fujiki, S. Mahlke, and R. Das, “Duality cache for data parallel acceleration,” in Proceedings of the 46th International Symposium on Computer Architecture , ser. ISCA ’19. New York, NY , USA: Association for Computing Machinery, 2019, p. 397–410. [Online]. Available: https://doi.org/10.1145/3307650.3322257

  2. [31]

    Neural cache: Bit-serial in-cache acceleration of deep neural networks,

    C. Eckert, X. Wang, J. Wang, A. Subramaniyan, D. Sylvester, D. Blaauw, R. Das, and R. Iyer, “Neural cache: Bit-serial in-cache acceleration of deep neural networks,” IEEE Micro , vol. 39, no. 3, p. 11–19, may

  3. [1]

    [Online]

    Android - secure and reliable mobile operating system. [Online]. Available: https://www.android.com/

  4. [2]

    [Online]

    Chromium. [Online]. Available: https://www.chromium.org/Home/

  5. [3]

    [Online]

    Kirin 990 5g dieshot. [Online]. Available: https://xian333c.top/archives/ 526

  6. [4]

    [Online]

    Pdfium. [Online]. Available: https://pdfium.googlesource.com/pdfium/+/ master/README.md

  7. [5]

    [Online]

    riscv-v-spec. [Online]. Available: https://github.com/riscv/riscv-v-spec

  8. [6]

    [Online]

    Webrtc. [Online]. Available: https://webrtc.org/

Show all 89 references
  1. [7]

    Adler and J.-l

    M. Adler and J.-l. Gailly. Zlib data compression library. [Online]. Available: https://github.com/madler/zlib

  2. [8]

    Compute caches,

    S. Aga, S. Jeloka, A. Subramaniyan, S. Narayanasamy, D. Blaauw, and R. Das, “Compute caches,” in 2017 IEEE International Symposium on High Performance Computer Architecture (HPCA) , 2017, pp. 481–492

  3. [9]

    Towards a reconfigurable bit-serial/bit-parallel vector accelerator using in-situ processing-in-sram,

    K. Al-Hawaj, O. Afuye, S. Agwa, A. Apsel, and C. Batten, “Towards a reconfigurable bit-serial/bit-parallel vector accelerator using in-situ processing-in-sram,” in 2020 IEEE International Symposium on Circuits and Systems (ISCAS) , 2020, pp. 1–5

  4. [10]

    Eve: Ephemeral vector engines,

    K. Al-Hawaj, T. Ta, N. Cebry, S. Agwa, O. Afuye, E. Hall, C. Golden, A. B. Apsel, and C. Batten, “Eve: Ephemeral vector engines,” in 2023 IEEE International Symposium on High-Performance Computer Architecture (HPCA), 2023, pp. 691–704

  5. [11]

    Arm cortex-a76 core technical reference manual r3p0

    Arm. Arm cortex-a76 core technical reference manual r3p0. [Online]. Available: https://developer.arm.com/documentation/100798/0300/

  6. [12]

    Arm optimized routines

    Arm. Arm optimized routines. [Online]. Available: https://github.com/ ARM-software/optimized-routines

  7. [13]

    Introducing the scalable matrix extension for the armv9-a architecture

    Arm. Introducing the scalable matrix extension for the armv9-a architecture. [Online]. Available: https://community.arm.com/arm-community-blogs/b/architectures-and- processors-blog/posts/scalable-matrix-extension-armv9-a-architecture

  8. [14]

    Cmsis-dsp, an optimized compute library for embedded systems

    Arm-Software. Cmsis-dsp, an optimized compute library for embedded systems. [Online]. Available: https://github.com/ARM-software/CMSIS- DSP

  9. [15]

    Arrow: A risc-v vector accelerator for machine learning inference,

    I. A. Assir, M. E. Iskandarani, H. R. A. Sandid, and M. A. R. Saghir, “Arrow: A risc-v vector accelerator for machine learning inference,”

  10. [16]

    A 75kb sram in 65nm cmos for in-memory computing based neuromorphic image denoising,

    S. K. Bose, V . Mohan, and A. Basu, “A 75kb sram in 65nm cmos for in-memory computing based neuromorphic image denoising,” in 2020 IEEE International Symposium on Circuits and Systems (ISCAS) , 2020, pp. 1–5

  11. [17]

    Toward performance portable programming for heterogeneous systems on a chip: A case study with qualcomm snapdragon soc,

    A. Cabrera, S. Hitefield, J. Kim, S. Lee, N. R. Miniskar, and J. S. Vetter, “Toward performance portable programming for heterogeneous systems on a chip: A case study with qualcomm snapdragon soc,” in 2021 IEEE High Performance Extreme Computing Conference (HPEC) , 2021, pp. 1–7

  12. [18]

    Accelerating database analytic query workloads using an associative processor,

    H. Caminal, Y . Chronis, T. Wu, J. M. Patel, and J. F. Martínez, “Accelerating database analytic query workloads using an associative processor,” in Proceedings of the 49th Annual International Symposium on Computer Architecture , ser. ISCA ’22. New York, NY , USA: Association...

  13. [19]

    Cape: A content- addressable processing engine,

    H. Caminal, K. Yang, S. Srinivasa, A. K. Ramanathan, K. Al-Hawaj, T. Wu, V . Narayanan, C. Batten, and J. F. Martínez, “Cape: A content- addressable processing engine,” in 2021 IEEE International Symposium on High-Performance Computer Architecture (HPCA) , 2021, pp. 557– 569

  14. [21]

    Ara: A 1-ghz+ scalable and energy-efficient risc-v vector processor with mul- tiprecision floating-point support in 22-nm fd-soi,

    M. Cavalcante, F. Schuiki, F. Zaruba, M. Schaffner, and L. Benini, “Ara: A 1-ghz+ scalable and energy-efficient risc-v vector processor with mul- tiprecision floating-point support in 22-nm fd-soi,” IEEE Transactions on Very Large Scale Integration (VLSI) Systems , vol. 28, no...

  15. [22]

    Xuantie-910: A commercial multi-core 12-stage pipeline out-of-order 64-bit high performance risc-v processor with vector extension : Indus- trial product,

    C. Chen, X. Xiang, C. Liu, Y . Shang, R. Guo, D. Liu, Y . Lu, Z. Hao, J. Luo, Z. Chen, C. Li, Y . Pu, J. Meng, X. Yan, Y . Xie, and X. Qi, “Xuantie-910: A commercial multi-core 12-stage pipeline out-of-order 64-bit high performance risc-v processor with vector extension : Indu...

  16. [23]

    The csi multi- media architecture,

    D. Cheresiz, B. Juurlink, S. Vassiliadis, and H. Wijshoff, “The csi multi- media architecture,” IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 13, no. 1, pp. 1–13, 2005

  17. [24]

    A software library containing sparse functions written in opencl

    clMathLibraries. A software library containing sparse functions written in opencl. [Online]. Available: https://github.com/clMathLibraries/ clSPARSE/

  18. [25]

    Mom: a matrix simd instruction set architecture for multimedia applications,

    J. Corbal, R. Espasa, and M. Valero, “Mom: a matrix simd instruction set architecture for multimedia applications,” in SC ’99: Proceedings of the 1999 ACM/IEEE Conference on Supercomputing , 1999, pp. 15–15

  19. [26]

    Three-dimensional memory vectorization for high bandwidth media memory systems,

    J. Corbal, R. Espasa, and M. Valero, “Three-dimensional memory vectorization for high bandwidth media memory systems,” in 35th An- nual IEEE/ACM International Symposium on Microarchitecture, 2002. (MICRO-35). Proceedings., 2002, pp. 149–160

  20. [27]

    Andes plots risc-v vector heading,

    M. Demler, “Andes plots risc-v vector heading,” Microprocessor Report, 2020

  21. [28]

    Developers

    A. Developers. Profile battery usage with batterystats and battery historian. [Online]. Available: https://developer.android.com/topic/ performance/power/setup-battery-historian

  22. [29]

    Ocelot: A dynamic optimization framework for bulk-synchronous applications in hetero- geneous systems,

    G. Diamos, A. Kerr, S. Yalamanchili, and N. Clark, “Ocelot: A dynamic optimization framework for bulk-synchronous applications in hetero- geneous systems,” in 2010 19th International Conference on Parallel Architectures and Compilation Techniques (PACT), 2010, pp. 353–364

  23. [30]

    The linpack benchmark: past, present and future,

    J. J. Dongarra, P. Luszczek, and A. Petitet, “The linpack benchmark: past, present and future,” Concurrency and Computation: practice and experience, vol. 15, no. 9, pp. 803–820, 2003

  24. [32]

    C. N. Fischer and R. J. LeBlanc Jr, Crafting a Compiler with C . Benjamin-Cummings Publishing Co., Inc., 1991

  25. [33]

    Mvc: Enabling fully coherent multi-data-views through the memory hierarchy with processing in memory,

    D. Fujiki, “Mvc: Enabling fully coherent multi-data-views through the memory hierarchy with processing in memory,” in Proceedings of the 56th Annual IEEE/ACM International Symposium on Microarchitecture, 2023, pp. 800–814

  26. [34]

    Multi-layer in-memory processing,

    D. Fujiki, A. Khadem, S. Mahlke, and R. Das, “Multi-layer in-memory processing,” in 2022 55th IEEE/ACM International Symposium on Microarchitecture (MICRO), 2022, pp. 920–936

  27. [36]

    Mdacache: Caching for multi-dimensional-access memories,

    S. George, M. J. Liao, H. Jiang, J. B. Kotra, M. T. Kandemir, J. Sampson, and V . Narayanan, “Mdacache: Caching for multi-dimensional-access memories,” in 2018 51st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2018, pp. 841–854

  28. [37]

    Blink (rendering engine)

    Google. Blink (rendering engine). [Online]. Available: https://www. chromium.org/blink/

  29. [38]

    Boringssl library

    Google. Boringssl library. [Online]. Available: https://github.com/ google/boringssl

  30. [39]

    Skia - a complete 2d graphic library for drawing text, geometries, and images

    Google. Skia - a complete 2d graphic library for drawing text, geometries, and images. [Online]. Available: https://github.com/google/ skia

  31. [40]

    Xnnpack, a highly optimized library of floating-point neural network inference operators

    Google. Xnnpack, a highly optimized library of floating-point neural network inference operators. [Online]. Available: https://github.com/ google/XNNPACK

  32. [41]

    Comparing the sizes of flagship chipsets: Qualcomm, samsung, huawei and apple

    gsmarena. Comparing the sizes of flagship chipsets: Qualcomm, samsung, huawei and apple. [Online]. Avail- able: https://www.gsmarena.com/comparing_the_sizes_of_flagship_ chipsets_qualcomm_samsung_huawei_adn_apple-news-30240.php

  33. [42]

    Optimizing binary translation of dynamically generated code,

    B. Hawkins, B. Demsky, D. Bruening, and Q. Zhao, “Optimizing binary translation of dynamically generated code,” in Proceedings of the 13th Annual IEEE/ACM International Symposium on Code Generation and Optimization, ser. CGO ’15. USA: IEEE Computer Society, 2015, p. 68–78

  34. [43]

    Mobilenets: Efficient convolutional neural networks for mobile vision applications,

    A. G. Howard, M. Zhu, B. Chen, D. Kalenichenko, W. Wang, T. Weyand, M. Andreetto, and H. Adam, “Mobilenets: Efficient convolutional neural networks for mobile vision applications,” 2017. [Online]. Available: https://arxiv.org/abs/1704.04861

  35. [44]

    Instruments

    T. Instruments. Tms320c5x user’s guide. [Online]. Available: https: //www.ti.com/lit/ug/spru056d/spru056d.pdf

  36. [45]

    Accelerate artificial intelligence (ai) workloads with intel advanced matrix extensions (intel amx)

    Intel. Accelerate artificial intelligence (ai) workloads with intel advanced matrix extensions (intel amx). [Online]. Available: https://www.intel.com/content/www/us/en/content- details/785250/accelerate-artificial-intelligence-ai-workloads-with- intel-advanced-matrix-extensio...

  37. [47]

    A 28 nm con- figurable memory (tcam/bcam/sram) using push-rule 6t bit cell enabling logic-in-memory,

    S. Jeloka, N. B. Akesh, D. Sylvester, and D. Blaauw, “A 28 nm con- figurable memory (tcam/bcam/sram) using push-rule 6t bit cell enabling logic-in-memory,” IEEE Journal of Solid-State Circuits , vol. 51, no. 4, pp. 1009–1021, 2016

  38. [48]

    Energy-efficient and high throughput sparse distributed memory architecture,

    M. Kang, E. P. Kim, M.-s. Keel, and N. R. Shanbhag, “Energy-efficient and high throughput sparse distributed memory architecture,” in 2015 IEEE International Symposium on Circuits and Systems (ISCAS) , 2015, pp. 2505–2508

  39. [49]

    Vector- processing for mobile devices: Benchmark and analysis,

    A. Khadem, D. Fujiki, N. Talati, S. Mahlke, and R. Das, “Vector- processing for mobile devices: Benchmark and analysis,” in 2023 IEEE International Symposium on Workload Characterization (IISWC) , 2023, pp. 15–27

  40. [50]

    Reducing area overhead for error-protecting large l2/l3 caches,

    S. Kim, “Reducing area overhead for error-protecting large l2/l3 caches,” IEEE Transactions on Computers , vol. 58, no. 3, pp. 300–310, 2009

  41. [51]

    Ramulator: A fast and extensible dram simulator,

    Y . Kim, W. Yang, and O. Mutlu, “Ramulator: A fast and extensible dram simulator,” IEEE Computer Architecture Letters , vol. 15, no. 1, pp. 45–49, 2016

  42. [52]

    The motorola dsp56000 digital signal processor,

    K. L. Kloker, “The motorola dsp56000 digital signal processor,” IEEE Micro, vol. 6, no. 6, pp. 29–48, 1986

  43. [53]

    Performance evaluation of a vector supercomputer sx-aurora tsubasa,

    K. Komatsu, S. Momose, Y . Isobe, O. Watanabe, A. Musa, M. Yokokawa, T. Aoyama, M. Sato, and H. Kobayashi, “Performance evaluation of a vector supercomputer sx-aurora tsubasa,” in SC18: International Conference for High Performance Computing, Networking, Storage and Analysis ,...

  44. [54]

    Smart instruction codes for in-memory computing architectures compatible with standard sram interfaces,

    M. Kooli, H.-P. Charles, C. Touzet, B. Giraud, and J.-P. Noel, “Smart instruction codes for in-memory computing architectures compatible with standard sram interfaces,” in 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE) , 2018, pp. 1634–1639

  45. [55]

    Towards a truly integrated vector processing unit for memory-bound applications based on a cost-competitive computational sram design solution,

    M. Kooli, A. Heraud, H.-P. Charles, B. Giraud, R. Gauchi, M. Ezzadeen, K. Mambu, V . Egloff, and J.-P. Noel, “Towards a truly integrated vector processing unit for memory-bound applications based on a cost-competitive computational sram design solution,” J. Emerg. Technol. Com...

  46. [56]

    Rc-nvm: Dual-addressing non-volatile memory architecture supporting both row and column memory accesses,

    S. Li, N. Xiao, P. Wang, G. Sun, X. Wang, Y . Chen, H. H. Li, J. Cong, and T. Zhang, “Rc-nvm: Dual-addressing non-volatile memory architecture supporting both row and column memory accesses,” IEEE Transactions on Computers, vol. 68, no. 2, pp. 239–254, 2019

  47. [57]

    libjpeg-turbo

    libjpeg_turbo. libjpeg-turbo. [Online]. Available: https://libjpeg-turbo. org/

  48. [58]

    official png reference library

    libpng. official png reference library. [Online]. Available: http: //www.libpng.org/pub/png/libpng.html

  49. [59]

    Webp codec

    libwebp. Webp codec. [Online]. Available: https://github.com/ webmproject/libwebp

  50. [60]

    B. C. Lopes and R. Auler, Getting started with LLVM core libraries . Packt Publishing Ltd, 2014

  51. [61]

    Shufflenet v2: Practical guidelines for efficient cnn architecture design,

    N. Ma, X. Zhang, H.-T. Zheng, and J. Sun, “Shufflenet v2: Practical guidelines for efficient cnn architecture design,” 2018. [Online]. Available: https://arxiv.org/abs/1807.11164

  52. [62]

    Vitruvius: And area-efficient risc-v decoupled vector accelerator for high performance computing,

    F. Minervini and O. Palomar, “Vitruvius: And area-efficient risc-v decoupled vector accelerator for high performance computing,” RISC-V Summit, 2021

  53. [63]

    Vitruvius+: An area-efficient risc-v decoupled vector coprocessor for high performance computing applications,

    F. Minervini, O. Palomar, O. Unsal, E. Reggiani, J. Quiroga, J. Marimon, C. Rojas, R. Figueras, A. Ruiz, A. Gonzalez, J. Mendoza, I. Vargas, C. Hernandez, J. Cabre, L. Khoirunisya, M. Bouhali, J. Pavon, F. Moll, M. Olivieri, M. Kovac, M. Kovac, L. Dragic, M. Valero, and A. Cri...

  54. [64]

    Cacti 6.0: A tool to model large caches,

    N. Muralimanohar, R. Balasubramonian, and N. P. Jouppi, “Cacti 6.0: A tool to model large caches,” HP laboratories, vol. 27, p. 28, 2009

  55. [65]

    Clblast: A tuned opencl blas library,

    C. Nugteren, “Clblast: A tuned opencl blas library,” in Proceedings of the International Workshop on OpenCL , ser. IWOCL ’18. New York, NY , USA: Association for Computing Machinery, 2018. [Online]. Available: https://doi.org/10.1145/3204919.3204924

  56. [66]

    Nvidia hopper architecture in-depth

    Nvidia. Nvidia hopper architecture in-depth. [Online]. Available: https://developer.nvidia.com/blog/nvidia-hopper-architecture-in-depth/

  57. [67]

    J. S. Olesen. Greedy register allocation in llvm 3.0. [Online]. Available: http://blog.llvm.org/2011/09/greedy-register-allocation-in-llvm-30.html

  58. [68]

    Vicuna: A Timing-Predictable RISC-V Vector Coprocessor for Scalable Parallel Computation,

    M. Platzer and P. Puschner, “Vicuna: A Timing-Predictable RISC-V Vector Coprocessor for Scalable Parallel Computation,” in 33rd Euromicro Conference on Real-Time Systems (ECRTS 2021) , ser. Leibniz International Proceedings in Informatics (LIPIcs), B. B. Brandenburg, Ed., vol....

  59. [69]

    Hexagon npu sdk

    qualcomm. Hexagon npu sdk. [Online]. Available: https://www. qualcomm.com/developer/software/hexagon-npu-sdk

  60. [70]

    Introducing trepn profiler 6.0

    Qualcomm. Introducing trepn profiler 6.0. [Online]. Available: https://developer.qualcomm.com/blog/introducing-trepn-profiler-60

  61. [71]

    Snapdragon mobile platform opencl general programming and optimization guide

    Qualcomm. Snapdragon mobile platform opencl general programming and optimization guide. [Online]. Available: https://developer.qualcomm. com/download/adrenosdk/adreno-opencl-programming-guide.pdf

  62. [72]

    Impala: Algorithm/architecture co-design for in-memory multi-stride pattern matching,

    E. Sadredini, R. Rahimi, M. Lenjani, M. Stan, and K. Skadron, “Impala: Algorithm/architecture co-design for in-memory multi-stride pattern matching,” in 2020 IEEE International Symposium on High Performance Computer Architecture (HPCA), 2020, pp. 86–98

  63. [73]

    Eap: A scalable and efficient in-memory accelerator for automata processing,

    E. Sadredini, R. Rahimi, V . Verma, M. Stan, and K. Skadron, “Eap: A scalable and efficient in-memory accelerator for automata processing,” in Proceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecture , ser. MICRO ’52. New York, NY , USA: Association...

  64. [74]

    Co-design for a64fx manycore processor and

    M. Sato, Y . Ishikawa, H. Tomita, Y . Kodama, T. Odajima, M. Tsuji, H. Yashiro, M. Aoki, N. Shida, I. Miyoshi, K. Hirai, A. Furuya, A. Asato, K. Morita, and T. Shimizu, “Co-design for a64fx manycore processor and ”fugaku”,” in SC20: International Conference for High Performanc...

  65. [75]

    An eight-core 1.44-ghz risc-v vector processor in 16-nm finfet,

    C. Schmidt, J. Wright, Z. Wang, E. Chang, A. Ou, W. Bae, S. Huang, V . Milovanovi´c, A. Flynn, B. Richards et al. , “An eight-core 1.44-ghz risc-v vector processor in 16-nm finfet,” IEEE Journal of Solid-State Circuits, vol. 57, no. 1, pp. 140–152, 2021

  66. [76]

    Gather-scatter dram: In-dram address translation to improve the spatial locality of non-unit strided accesses,

    V . Seshadri, T. Mullins, A. Boroumand, O. Mutlu, P. B. Gibbons, M. A. Kozuch, and T. C. Mowry, “Gather-scatter dram: In-dram address translation to improve the spatial locality of non-unit strided accesses,” in 2015 48th Annual IEEE/ACM International Symposium on Microar- chi...

  67. [77]

    Intelligence x280

    SiFive. Intelligence x280. [Online]. Available: https://www.sifive.com/ document-file/x280-datasheet

  68. [78]

    Performance p270

    SiFive. Performance p270. [Online]. Available: https://www.sifive.com/ document-file/x280-datasheet

  69. [79]

    Blade: An in-cache computing architecture for edge devices,

    W. A. Simon, Y . M. Qureshi, M. Rios, A. Levisse, M. Zapater, and D. Atienza, “Blade: An in-cache computing architecture for edge devices,” IEEE Transactions on Computers , vol. 69, no. 9, pp. 1349– 1363, 2020

  70. [80]

    The arm scalable vector extension,

    N. Stephens, S. Biles, M. Boettcher, J. Eapen, M. Eyole, G. Gabrielli, M. Horsnell, G. Magklis, A. Martinez, N. Premillieu, A. Reid, A. Rico, and P. Walker, “The arm scalable vector extension,”IEEE Micro, vol. 37, no. 2, pp. 26–39, 2017

  71. [81]

    Scaling equations for the accurate prediction of cmos device performance from 180nm to 7nm,

    A. Stillmaker and B. Baas, “Scaling equations for the accurate prediction of cmos device performance from 180nm to 7nm,” Integration, vol. 58, pp. 74–81, 2017. [Online]. Available: https: //www.sciencedirect.com/science/article/pii/S0167926017300755

  72. [82]

    Cache automaton,

    A. Subramaniyan, J. Wang, E. R. M. Balasubramanian, D. Blaauw, D. Sylvester, and R. Das, “Cache automaton,” in Proceedings of the 50th Annual IEEE/ACM International Symposium on Microarchitecture, ser. MICRO-50 ’17. New York, NY , USA: Association for Computing Machinery, 2017...

  73. [83]

    Overview of the high efficiency video coding (hevc) standard,

    G. J. Sullivan, J.-R. Ohm, W.-J. Han, and T. Wiegand, “Overview of the high efficiency video coding (hevc) standard,” IEEE Transactions on Circuits and Systems for Video Technology , vol. 22, no. 12, pp. 1649– 1668, 2012

  74. [84]

    big.vlittle: On-demand data-parallel acceleration for mobile systems on chip,

    T. Ta, K. Al-Hawaj, N. Cebry, Y . Ou, E. Hall, C. Golden, and C. Batten, “big.vlittle: On-demand data-parallel acceleration for mobile systems on chip,” in 2022 55th IEEE/ACM International Symposium on Microar- chitecture (MICRO), 2022, pp. 181–198

  75. [85]

    Bottlenecks in multimedia process- ing with simd style extensions and architectural enhancements,

    D. Talla, L. John, and D. Burger, “Bottlenecks in multimedia process- ing with simd style extensions and architectural enhancements,” IEEE Transactions on Computers, vol. 52, no. 8, pp. 1015–1031, 2003

  76. [86]

    Kvazaar: Open-source hevc/h.265 encoder,

    M. Viitanen, A. Koivula, A. Lemmetti, A. Ylä-Outinen, J. Vanne, and T. D. Hämäläinen, “Kvazaar: Open-source hevc/h.265 encoder,” in Proceedings of the 24th ACM International Conference on Multimedia, ser. MM ’16. New York, NY , USA: Association for Computing Machinery, 2016, p...

  77. [87]

    Bit prudent in- cache acceleration of deep convolutional neural networks,

    X. Wang, J. Yu, C. Augustine, R. Iyer, and R. Das, “Bit prudent in- cache acceleration of deep convolutional neural networks,” in2019 IEEE International Symposium on High Performance Computer Architecture (HPCA), 2019, pp. 81–93

  78. [88]

    Pumice: Processing-using- memory integration with a scalar pipeline for symbiotic execution,

    S. Wong, C. C. Tamarit, and J. F. Martínez, “Pumice: Processing-using- memory integration with a scalar pipeline for symbiotic execution,” in Design Automation Conference (DAC) , july 2023

  79. [89]

    Sealer: In-sram aes for high-performance and low-overhead memory encryption,

    J. Zhang, H. Naghibijouybari, and E. Sadredini, “Sealer: In-sram aes for high-performance and low-overhead memory encryption,” in Proceedings of the ACM/IEEE International Symposium on Low Power Electronics and Design , ser. ISLPED ’22. New York, NY , USA: Association for Comp...

  80. [2019]

    Available: https://doi.org/10.1109/MM.2019.2908101

    [Online]. Available: https://doi.org/10.1109/MM.2019.2908101

  81. [2021]

    Available: https://arxiv.org/abs/2107.07169

    [Online]. Available: https://arxiv.org/abs/2107.07169

Pith tools

Reviewed August 10, 2026 · model on record in the stance chip above.