Skip to content

v1.5.0 speed regressions #2662

@ghost

Description

A msvc2019 speed regression commit: 634bfd3

EDIT:
This regression only occurs when using /Ob3 compiler option, AND on i5-4570.
If use '/Ob2' option, OR on Ryzen-3600X, 634bfd3 has no speed regression.

/Ob3 specifies more aggressive inlining than /Ob2
https://docs.microsoft.com/en-us/cpp/build/reference/ob-inline-function-expansion

before:

                  c_speed   d_speed
level 1: 63.99%, 200.3395, 370.5008
level 2: 54.90%, 150.2246, 259.3094
level 3: 52.55%, 104.7193, 231.1173
level 4: 49.95%, 94.5034, 198.3928

after:

                  c_speed   d_speed
level 1: 63.99%, 184.0881, 361.4072
level 2: 54.90%, 144.1343, 259.7859
level 3: 52.55%, 101.5963, 231.4723
level 4: 49.95%, 91.4660, 198.3102

The unit of c_speed/d_speed is MB/s.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions