Skip to main content

AVX2 Programming – Packed Integers

  • Chapter
  • First Online:
Modern X86 Assembly Language Programming
  • 542 Accesses

Abstract

In Chapter 8, you learned how to use AVX instructions to perform packed integer operations using 128-bit wide operands and the XMM register set. In this chapter, you’ll learn how to carry out similar operations using AVX2 instructions using 256-bit wide operands and the YMM register set. This chapter’s source code examples are divided into two major sections. The first section contains elementary examples that illustrate elementary packed integer operations using AVX2 instructions. The second section is a continuation of the SIMD image processing techniques first presented in Chapter 8. This section also spotlights a simple method that you can use to benchmark the performance of an assembly language function.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    A program should verify processor support for popcnt using the cpuid instruction as explained in Chapter 16.

  2. 2.

    Latency is the number of clock cycles required to complete execution of an instruction’s micro-ops. Throughput is the number of clock cycles that the processor must wait before the execution unit issue ports can accept the same instruction.

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to APress Media, LLC, part of Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Kusswurm, D. (2023). AVX2 Programming – Packed Integers. In: Modern X86 Assembly Language Programming. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-9603-5_10

Download citation

Publish with us

Policies and ethics