Show/Hide Toolbars

HOMER Pro 3.16

Navigation: Design > Calculate Button

Advanced Vector Extensions

Scroll Prev Top Next More

HOMER Logo


The 64-bit version of HOMER Pro using the AVX (Advanced Vector Extensions) extensions is roughly twice as fast as HOMER 3.8.

HOMER Pro version 3.9 introduces the use of SSE (Streaming SIMD Extensions), AVX (Advanced Vector Extensions), and AVX2 instruction sets for internal computations. HOMER Pro detects whether SSE, AVX, or AVX2 is supported on your machine and uses the fastest available instruction set.

The presence of this feature is indicated by a blue lightning bolt on the top left of the HOMER Pro screen.

avx

Previous versions of HOMER Pro and the current 32-bit version of HOMER Pro use the x87 instruction set. SSE, AVX, and AVX2 instruction sets provide slightly different floating-point results. Typically, these differences are not enough to change the time series or Net Present Cost calculations.

Note: According to David Goldberg’s seminal paper, “What Every Computer Scientist Should Know About Floating-Point Arithmetic” (http://www.lsi.upc.edu/~robert/teaching/master/material/p5-goldberg.pdf), the IEEE-754 standard does not guarantee that the same program will deliver identical results on all conforming systems.

When using 64-bit HOMER Pro, the SSE and AVX instructions are used for floating-point math. In 32-bit mode, even if SSE is enabled, HOMER uses x87 registers to return floating-point results. For more information, see Bruce Dawson’s article on Floating Point Determinism (https://randomascii.wordpress.com/2013/07/16/floating-point-determinism/) or the Addendum to Computer Systems, A Programmer’s Perspective (http://csapp.cs.cmu.edu/2e/waside/waside-sse.pdf).