The comparative efficacy of multi-core versus single-core processor architectures has remained a focal point of computer architecture research. According to Amdahl’s Law, the theoretical speedup of a program using multiple processors is limited by the sequential portion of the task; thus, optimal performance on multi-core systems is achievable only when computational workloads are effectively parallelized and uniformly distributed across all available cores. In high-performance and real-time systems, this parallel distribution—achieved through multithreaded execution—plays a critical role in minimizing latency and maximizing throughput. With the advent and widespread adoption of multi-core processors, parallel computing has evolved into a foundational design paradigm for improving computational efficiency. Earlier strategies to exploit parallelism were constrained to hardware redundancy and Instruction-Level Parallelism (ILP), both of which offered limited scalability. These methods underscored the importance of decomposing large, complex computations into smaller, independent sub-processes capable of running in parallel. Consequently, threads have emerged as the fundamental logical abstraction layer for managing parallel tasks in. This paper aims to empirically analyze the performance improvements offered by multithreading on multi-core CPU architectures, specifically by quantifying execution time reductions. A computationally intensive workload matrix multiplication 1 k × 1 k (size) is employed as a benchmark. The task is parallelized using POSIX threads (Pthreads) and implemented on both a uni-core ARM processor and a multi-core ARM Cortex-A7 processor, running on Raspberry Pi OS. The experimental results clearly demonstrate that the multi-core configuration achieves a substantial reduction in execution time approximately 50% compared to its single-core counterpart, validating the effectiveness of multithreaded execution in compute-intensive scenarios.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Optimization and Benchmarking of Multithreaded Matrix Multiplication Using Pthreads on Raspbian-Based Single and Multi-core CPUs

  • Dhruva R. Rinku,
  • Parimi Hema Sree,
  • K. A. Jyotsna,
  • D. Nagajyothi

摘要

The comparative efficacy of multi-core versus single-core processor architectures has remained a focal point of computer architecture research. According to Amdahl’s Law, the theoretical speedup of a program using multiple processors is limited by the sequential portion of the task; thus, optimal performance on multi-core systems is achievable only when computational workloads are effectively parallelized and uniformly distributed across all available cores. In high-performance and real-time systems, this parallel distribution—achieved through multithreaded execution—plays a critical role in minimizing latency and maximizing throughput. With the advent and widespread adoption of multi-core processors, parallel computing has evolved into a foundational design paradigm for improving computational efficiency. Earlier strategies to exploit parallelism were constrained to hardware redundancy and Instruction-Level Parallelism (ILP), both of which offered limited scalability. These methods underscored the importance of decomposing large, complex computations into smaller, independent sub-processes capable of running in parallel. Consequently, threads have emerged as the fundamental logical abstraction layer for managing parallel tasks in. This paper aims to empirically analyze the performance improvements offered by multithreading on multi-core CPU architectures, specifically by quantifying execution time reductions. A computationally intensive workload matrix multiplication 1 k × 1 k (size) is employed as a benchmark. The task is parallelized using POSIX threads (Pthreads) and implemented on both a uni-core ARM processor and a multi-core ARM Cortex-A7 processor, running on Raspberry Pi OS. The experimental results clearly demonstrate that the multi-core configuration achieves a substantial reduction in execution time approximately 50% compared to its single-core counterpart, validating the effectiveness of multithreaded execution in compute-intensive scenarios.