# AVX指令集中的32种浮点比较关系详解

在传统印象中，数字的比较关系只有6种。但在AVX指令集中，Intel一下给出了32种浮点比较谓词，详见下图--

（Intel手册：Table 3-9. Comparison Predicate for VCMPPD and VCMPPS Instructions）

为什么会有这么多种比较谓词呢？我为此困惑困惑了很久。
直到最近翻阅了不少资料后，才终于将它们弄懂了。

Intel使用的是IEEE 754规范的浮点数据类型。对于浮点数据类型来说，除了可以存储数字、无穷之外，还可以存储 NaN（not a number。非数）。

NaN（非数）分为两大类--

# Using Intel® Streaming SIMD Extensions and Intel® Integrated Performance Primitives to Accelerate Algorithms

This paper examines how to use Intel® SSE to accelerate an image processing application, how to take advantage of it using compiler directives for optimal SIMD code generation, and how to employ Intel® IPP to fully exploit SIMD acceleration.
• simd
• IPP
• visual computing
• Intel IPP
• image processing
• Intel SSE
• vcsource_type_techarticle
• vcsource_domain_media
• vcsource_os_windows
• vcsource_platform_desktoplaptop
• vcsource_product_icc
• vcsource_os_linux
• vcsource_index
• Graphiques
• Développement de jeu
• # Optimizing the Rendering Pipeline of Animated Models Using the Intel Streaming SIMD Extensions

by J.M.P. van Waveren, Id Software, Inc.

### Introduction

The following articles describe the individual routines used in the rendering pipeline and how they are optimized using the Intel Streaming SIMD Extensions.

• simd
• specular map
• visual computing
• vcsource_type_techarticle
• vcsource_os_windows
• vcsource_platform_desktoplaptop
• vcsource_domain_graphics
• vcsource_domain_gamedev
• vcsource_index
• vcsource
• Développement de jeu
• Graphiques
• # How Special Silicon Facilitates Parallel Arithmetic

SIMD (for single instruction, multiple data) enables one arithmetic instruction to be performed across multiple data items simultaneously. This article lightly touches on the advantages of SIMD for parallel applications.
• Compilateur Intel® C++
• simd
• SSE
• game development
• physics
• visual computing
• vcsource_type_techarticle
• vcsource_os_windows
• vcsource_platform_desktoplaptop
• vcsource_domain_graphics
• vcsource_product_icc
• vcsource_index
• vcsource
• Développement de jeu
• Graphiques
• Informatique parallèle
• # 3D Vector Normalization Using 256-Bit Intel® Advanced Vector Extensions (Intel® AVX)

This article shows how to use 256-bit Intel® Advanced Vector Extensions (Intel® AVX) to normalize an array of 3D vectors. We describe a shuffle approach to convert between AOS & SOA on-the-fly in order to make data ready for up to 8-wide SIMD processing.
• SOA
• simd
• AVX
• game development
• visual computing
• transpose
• shuffle
• AOS
• vcsource_type_techarticle
• vcsource_os_windows
• vcsource_platform_desktoplaptop
• vcsource_domain_graphics
• vcsource_index