Project

General

Profile

Bug #1333

performance regression with SSE4.1

Added by Szilárd Páll almost 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
mdrun
Target version:
Affected version - extra info:
4.6.4-dev since commit eb153
Affected version:
Difficulty:
uncategorized
Close

Description

eb153 has introduced a performance regression in the non-bonded kernels of about 6-8% on SSE4.1 platforms (see log files attached).

The culprit seems to be the gmx_invsqrt_pr() function in include/gmx_simd_math_single.h which if swapped back to the previous SSE4.1 version, gets the performance back to the state previous to eb153.

4.6.4-dev-20130825-f98bb3f_gccbench_1x1_cpu.log View - commit:f98bb3f (after commit:eb153417) (19.7 KB) Szilárd Páll, 09/13/2013 09:37 PM

4.6.3-dev-20130626-5a342c7_gccbench_1x1_cpu.log View - commit:5a342c7 (before commit:eb153417) (19.7 KB) Szilárd Páll, 09/13/2013 09:38 PM

Associated revisions

Revision 94e69be7 (diff)
Added by Berk Hess almost 4 years ago

optimized generic SIMD invsqrt

The function gmx_invsqrt_pr now uses one instruction less when
FMA is not supported in hardware.
Fixes #1333

Change-Id: Idace7296b88a8ecc0331e22d5bb3088753c478de

History

#2 Updated by Berk Hess almost 4 years ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

#3 Updated by Mark Abraham almost 4 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF