Thursday, November 12, 2026
Science
No Result
View All Result
  • Login
  • HOME
  • SCIENCE NEWS
  • CONTACT US
  • HOME
  • SCIENCE NEWS
  • CONTACT US
No Result
View All Result
Scienmag
No Result
View All Result
Home Science News Technology and Engineering

Parallel JPEG Encoder Update Adds Arithmetic Coding and Improves Multithreaded Speedups

November 12, 2026
in Technology and Engineering
Denise Maddox
By Denise Maddox Scienmag Editorial Profile - Mechanical Engineering
Reading Time: 5 mins read
0
Parallel JPEG Encoder Update Adds Arithmetic Coding and Improves Multithreaded Speedups

Parallel JPEG Encoder Update Adds Arithmetic Coding and Improves Multithreaded Speedups

65
SHARES
587
VIEWS
Share on FacebookShare on Twitter
ADVERTISEMENT

A newly published release of the open-source Parallel JPEG with RDOQ encoder, designated version 3.0, introduces an arithmetic entropy coding pipeline alongside existing Huffman workflows, cutting compressed bitrates while maintaining multithreaded scaling on modern multicore hardware. Developed as a modular C++17 implementation of a multithreaded sequential Discrete Cosine Transform-based JPEG encoder, the software supports parallelization of the encoding process with selected components also supporting parallel decoding. The updated pipeline implements the arithmetic coding specifications set forth in the ISO/IEC 10918-1 standard, complementing previous capabilities with dedicated state-aware estimators, parallel restart markers, and adapted rate-distortion optimized quantization routines that collectively preserve standard bitstream compliance.

The underlying architecture of the encoder relies on two complementary mechanisms to achieve high throughput across central processing units: thread-level parallelization across multiple processing cores and Single Instruction, Multiple Data extensions operating at the register level. The software leverages dynamically dispatched SIMD instruction sets, including SSE4.2, AVX2, and AVX512, choosing code paths at runtime depending on the hardware capabilities detected on the host processor. While the previous version 2.0 offered multithreaded encoding with bit-level segment merging and restart-marker segmentation exclusively for Huffman entropy coding, the new release extends thread-level parallelization to the arithmetic codec, allowing developers to target environments where storage economy takes precedence over single-threaded execution speed.

Implementing an arithmetic entropy pipeline within a standard-compliant framework introduces unique computational constraints not present in static Huffman coding. Huffman code lengths are stateless and can be pre-tabulated into fixed tables, whereas arithmetic encoders and probability models continuously maintain internal register states, emit output bytes in batches, and allocate fractional bit counts to individual binary decision bins. To mitigate performance penalties during intensive coefficient evaluation, the developers designed a dedicated bit-count estimator capable of caching and restoring internal registers and probability distributions during optimization passes. This capability directly enables rate-distortion optimized quantization across the arithmetic path, allowing the encoder to test candidate transform coefficient adjustments against exact entropy penalties.

To accelerate arithmetic state evaluation and remove branch instructions from the critical encoding path, the codec employs precalculated lookup tables totaling 1,808 bytes of memory. These compact structures store the 452 one-byte state-transition entries of the probability model, predefined least probable symbol probability estimates, and fixed-point bit-cost approximations derived from the ISO/IEC 10918-1 specification.

Parallelization of arithmetic coding is implemented via the restart-marker strategy, designated MT+R, which divides image data into discrete segments separated by standard restart markers. Because arithmetic probability models and internal registers are reinitialized at every restart boundary, multiple independent encoder and decoder instances can execute simultaneously across available CPU worker threads. While reinitializing probability models at the start of each segment reduces coding gain by approximately one percentage point, it allows multiple encoder and decoder instances to run in parallel.

Comprehensive performance evaluations demonstrate that arithmetic entropy coding achieves substantial reductions in compressed output size compared to baseline Huffman techniques. Under plain encoding scenarios across varying quality presets, arithmetic coding reduces output bitrates by 12.55% to 25.24% in single-threaded runs and by 11.57% to 23.84% when utilizing restart markers.

The higher algorithmic complexity of arithmetic encoding results in increased execution time compared to Huffman routines. In single-threaded benchmarks, arithmetic encoding runs at roughly 0.25 to 0.40 times the speed of the Huffman path, as every binary bin requires probability updates, interval recalculations, and potential renormalization steps. Consequently, entropy coding represents a significantly larger proportion of total runtime. Single-threaded high-quality encoding requires 506.33 milliseconds per frame for arithmetic coding compared to 125.47 milliseconds for Huffman coding, while decoding requires 32.53 milliseconds per frame versus 8.01 milliseconds in single-threaded Huffman mode.

Despite slower single-threaded throughput, the arithmetic path demonstrates superior multithreaded parallel scaling as core counts increase. Because the computational bottlenecks of arithmetic coding stem from internal instruction-level dependencies and branch resolution rather than the memory bandwidth limits encountered during quantization, thread scaling exhibits high efficiency. On a 16-core processor operating 32 simultaneous multithreading threads, the high-quality arithmetic encoder achieves an overall speedup of 23.21 times over its single-thread baseline, bringing the average picture encoding time down from 506.33 milliseconds to 21.81 milliseconds per frame, outperforming the 21.73 times speedup observed for Huffman encoding.

Decoding performance reflects similar multithreaded acceleration when restart markers are present in the bitstream. In high-quality testing on the 16-core, 32-thread hardware configuration, arithmetic decoding time decreases from 32.53 milliseconds in single-threaded operation to 1.73 milliseconds per frame under multithreaded execution, representing an 18.76 times parallelization speedup. In comparison, high-quality Huffman decoding reaches a parallelization gain of 8.96 times under identical thread counts.

Maintained under the open-source BSD-3-Clause license, version 3.0 of the software preserves the modular separation of its core components, ensuring that developers can independently enable, disable, or substitute SIMD kernels, Huffman paths, and arithmetic optimization modules without disrupting output standard conformity.

A detailed breakdown of encoder performance across lower and medium compression presets highlights how workload intensity influences execution times and parallel scaling behavior. In the low-quality evaluation scenario, single-threaded Huffman encoding completed in an average of 22.36 milliseconds per frame, whereas single-threaded arithmetic encoding required 55.10 milliseconds per frame. When parallel execution with restart markers was engaged across 32 threads on 16 cores, average processing times dropped to 1.86 milliseconds for the Huffman path and 2.91 milliseconds for the arithmetic path. These measurements reflect parallelization gains of 12.02 times for Huffman processing and 18.95 times for arithmetic encoding under low-quality settings, showing that arithmetic coding maintains strong scaling advantages even at modest computational loads.

Under the medium-quality scenario, intermediate operational demands further illustrated the responsiveness of both processing paths to thread-level distribution. Single-threaded Huffman encoding averaged 41.46 milliseconds per frame and accelerated to 2.53 milliseconds per frame under multithreaded execution with restart markers, achieving a 16.40 times parallelization gain. Arithmetic encoding under the same medium-quality parameters recorded a single-threaded latency of 122.51 milliseconds per frame, which decreased to 5.57 milliseconds per frame when leveraging 32 threads, representing a 22.00 times speedup. Across all evaluated presets, arithmetic encoding sustained higher relative parallelization gains than Huffman coding, demonstrating consistent performance scaling across diverse image quality targets.

Decoding times observed across lower and medium quality presets followed a similar pattern of parallel acceleration. In low-quality decoding tests, the single-threaded Huffman mode required 5.32 milliseconds per frame, reaching 0.73 milliseconds under multithreaded execution with restart markers, which corresponds to a 7.26 times parallelization speedup. Arithmetic decoding at the same quality target required 10.65 milliseconds in single-threaded operation and 0.87 milliseconds with restart markers, yielding a 12.25 times parallel speedup. At medium quality, single-threaded decoding took 6.23 milliseconds for Huffman and 15.95 milliseconds for arithmetic coding; parallel execution reduced these figures to 0.77 milliseconds and 1.05 milliseconds per frame, generating speedup factors of 8.12 times and 15.17 times, respectively.

The evaluation also examined scalability across intermediate thread allocations to characterize parallelization trajectories before reaching full simultaneous multithreading capacity. For high-quality arithmetic encoding starting from a 506.33-millisecond baseline, allocating two threads achieved a 1.95 times speedup, four threads achieved 3.86 times, eight threads reached 7.56 times, and 16 threads reached 14.40 times before attaining 23.21 times across 32 threads. High-quality Huffman encoding scaled from its 125.47-millisecond baseline at rates of 1.90 times for two threads, 3.89 times for four threads, 7.48 times for eight threads, and 14.08 times for 16 threads. For high-quality arithmetic decoding starting at 32.53 milliseconds, speedups scaled steadily across two, four, eight, and 16 threads at 1.79 times, 3.44 times, 6.32 times, and 11.18 times, outperforming corresponding Huffman decoding speedups of 1.39 times, 2.25 times, 3.52 times, and 5.34 times across the same configurations.

Building and deploying the software requires a C++17 conformant compiler, such as GCC version 10.0 or newer, Clang version 13.0 or newer, or Microsoft Visual C++ version 19.15 or newer, managed via CMake 3.15 or later. Build-time dependencies including fmtlib and doctest are acquired automatically during the CMake configuration process, simplifying testing and integration for developers building standard-compliant image processing pipelines.

Subject of Research: Parallel JPEG encoding with rate-distortion optimized quantization and arithmetic coding

Article Title: Version [3.0] – Parallel JPEG with RDOQ (PJRD) – a straightforward, modular implementation of a parallel JPEG encoder with encoder control optimizations

Article References: Grajek, T., Stankowski, J., Klimaszewski, K., Grzelka, A., & Karwowski, D. (2026). Version [3.0] – Parallel JPEG with RDOQ (PJRD) – a straightforward, modular implementation of a parallel JPEG encoder with encoder control optimizations. SoftwareX, 36, Article 103211. https://doi.org/10.1016/j.softx.2026.103211

Image Credits: AI Generated

DOI: 10.1016/j.softx.2026.103211

Keywords: JPEG compression, parallel computing, arithmetic coding, image encoding, rate-distortion optimization, SIMD instructions, multithreading, discrete cosine transform, open-source software, software engineering, image codecs, data compression, restart markers, AVX512, CPU optimization, lossy image compression

Cite Scienmag News

Denise Maddox. (November 12, 2026). Parallel JPEG Encoder Update Adds Arithmetic Coding and Improves Multithreaded Speedups. Scienmag. https://scienmag.com/parallel-jpeg-encoder-update-adds-arithmetic-coding-and-improves-multithreaded-speedups/

Denise Maddox. "Parallel JPEG Encoder Update Adds Arithmetic Coding and Improves Multithreaded Speedups." Scienmag, 12 November 2026, https://scienmag.com/parallel-jpeg-encoder-update-adds-arithmetic-coding-and-improves-multithreaded-speedups/. Accessed 12 November 2026.

Denise Maddox. "Parallel JPEG Encoder Update Adds Arithmetic Coding and Improves Multithreaded Speedups." Scienmag. November 12, 2026. https://scienmag.com/parallel-jpeg-encoder-update-adds-arithmetic-coding-and-improves-multithreaded-speedups/

Tags: arithmetic codingAVX512CPU optimizationdata compressiondiscrete cosine transformimage codecsimage encodingJPEG compressionlossy image compressionmultithreadingopen-source softwareparallel computingrate-distortion optimizationrestart markersSIMD instructionssoftware engineering
Share26Tweet16
Previous Post

Bismuth Oxyiodide Framework Heterojunction Degrades Rhodamine B Under Visible Light

Next Post

Preleukaemic Clones Acquire Rapid Driver Mutations Decades Before Acute Myeloid Leukaemia

Related Posts

Ultra-High-Performance Concrete Jackets Enhance Strength and Cyclic Performance of Damaged Bridge Columns
Technology and Engineering

Ultra-High-Performance Concrete Jackets Enhance Strength and Cyclic Performance of Damaged Bridge Columns

November 12, 2026
Shanghai Study Maps 70 Years of Urban Fragmentation in Siwenli
Technology and Engineering

Shanghai Study Maps 70 Years of Urban Fragmentation in Siwenli

November 12, 2026
Children in Small Indonesian Homes Adapt Play Spaces Through Sensory Cues
Technology and Engineering

Children in Small Indonesian Homes Adapt Play Spaces Through Sensory Cues

November 12, 2026
Dual Standard GNSS Receivers Reduce Initial Vehicle Orientation Error by 66 Percent
Technology and Engineering

Dual Standard GNSS Receivers Reduce Initial Vehicle Orientation Error by 66 Percent

November 12, 2026
Discover Energy Marks Five Years with Surging Global South Research Contributions
Technology and Engineering

Discover Energy Marks Five Years with Surging Global South Research Contributions

November 12, 2026
Cognitive Architecture Models How Social Evidence and Resource Constraints Shape Beliefs
Medicine

Cognitive Architecture Models How Social Evidence and Resource Constraints Shape Beliefs

November 12, 2026
Next Post
Preleukaemic Clones Acquire Rapid Driver Mutations Decades Before Acute Myeloid Leukaemia

Preleukaemic Clones Acquire Rapid Driver Mutations Decades Before Acute Myeloid Leukaemia

  • Mothers who receive childcare support from maternal grandparents show more optimized

    Mothers who receive childcare support from maternal grandparents show more parental warmth, finds NTU Singapore study

    27656 shares
    Share 11059 Tweet 6912
  • University of Seville Breaks 120-Year-Old Mystery, Revises a Key Einstein Concept

    1061 shares
    Share 424 Tweet 265
  • Bee body mass, pathogens and local climate influence heat tolerance

    682 shares
    Share 273 Tweet 171
  • Researchers record first-ever images and data of a shark experiencing a boat strike

    546 shares
    Share 218 Tweet 137
  • Groundbreaking Clinical Trial Reveals Lubiprostone Enhances Kidney Function

    531 shares
    Share 212 Tweet 133
Science

Embark on a thrilling journey of discovery with Scienmag.com—your ultimate source for cutting-edge breakthroughs. Immerse yourself in a world where curiosity knows no limits and tomorrow’s possibilities become today’s reality!

RECENT NEWS

  • Soil Bacterium Arthrobacter Completely Degrades Plant Triterpenoid Saponin Biopesticides Within Hours
  • Ultra-High-Performance Concrete Jackets Enhance Strength and Cyclic Performance of Damaged Bridge Columns
  • Arbuscular Mycorrhizal Fungi Improve Growth and Physiology in Drought-Stressed Soybeans
  • Symposium Outlines Emerging Mechanisms and Therapeutic Strategies Across RNA Biology

Categories

  • Agriculture
  • Anthropology
  • Archaeology
  • Athmospheric
  • Biology
  • Biotechnology
  • Blog
  • Bussines
  • Cancer
  • Chemistry
  • Climate
  • Earth Science
  • Editorial Policy
  • Marine
  • Mathematics
  • Medicine
  • Pediatry
  • Policy
  • Psychology & Psychiatry
  • Science Education
  • Science News
  • Social Science
  • Space
  • Technology and Engineering

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 5,150 other subscribers

© 2026 Scienmag - Science Magazine

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
No Result
View All Result
  • HOME
  • SCIENCE NEWS
  • CONTACT US

© 2026 Scienmag - Science Magazine

Discover more from Science

Subscribe now to keep reading and get access to the full archive.

Continue reading