|Re: Eigen 3.3 vs 3.2 Performance (was RE: [eigen] 3.3-beta2 released!)|
[ Thread Index |
| More lists.tuxfamily.org/eigen Archives
- To: eigen <eigen@xxxxxxxxxxxxxxxxxxx>
- Subject: Re: Eigen 3.3 vs 3.2 Performance (was RE: [eigen] 3.3-beta2 released!)
- From: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>
- Date: Thu, 2 Aug 2018 00:10:47 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=g6dOi2YRXaWSzHN4ftpvhk9OxeJwwh5CrrTVU+0Nwn4=; b=bzOQ5HsQXZtXeNTdg5oOLPWrHnGsBXpSwg0WRlR+hgcBdo4ghnp+J1ahJ5qiLh4CtE zGccnPzKcA+A2pD1QvrymPCyfUo9TVD2+9j2DoJXqexqv3+XkLN4vMGtYhHXsAgYrivE Zdwboyc1EZp3+USQBwNrjbAWnLsxNf7YIbZRL1EeDOY4/hfOr/NsCAG4TL8K2PKYn77l 1R+iuTknRt999tDvsYuSCM6rWuFsH5rjKz96ru/b21ET9K6zqKJ3EA5Zi2eHlFaqX4h1 wLbtuzPoT3nlH7VwwlaIG3mBpV+IXpfNE6B7mcKYay1ETErid1rCR/u96xwpFyz15u// kGWA==
I tried your little benchmark and with gcc 7, I got no difference at all (-O3 -NDEBUG):
// 3.2: 7.75s
// 3.3: 7.68s
// 3.2 -march=native: 7.46s
// 3.3 -march=native: 7.48s
I ran each test 4 times and keep the best of each, the variations were about 0.2s.
extracting the relevant code is rather difficult, unfortunately.
Attached you will find an extracted subset, which may point to one problematic area with partial vectorization as for this example Eigen 3.3 is ~13% slower (unless I'm measuring incorrectly).
If I turn off partial vectorization, the run-time is the same. This is not completely representative (obviously), because in my "complete" runs disabling partial vectorization only decreases the run-time difference between 3.3 and 3.2, but does not eliminate it.
Deutsches Zentrum für Luft- und Raumfahrt e.V. (DLR)
German Aerospace Center
Institute of Aerodynamics and Flow Technology | Lilienthalplatz 7 | 38108 Braunschweig | Germany
Daniel Vollmer | AS C²A²S²E
Von: Marc Glisse [marc.glisse@xxxxxxxx]
Gesendet: Mittwoch, 1. August 2018 12:06
Betreff: Re: Eigen 3.3 vs 3.2 Performance (was RE: [eigen] 3.3-beta2 released!)
On Wed, 1 Aug 2018, Daniel.Vollmer@xxxxxx wrote:
> I've attached a document with some performance measurements for
> different compilers, different Eigen versions, and 3 different
> test-cases for our code (tau, cgns, dg) that stress different areas /
Would it be hard to create small testcases that you could share and that
would still show a similar performance pattern? I assume that the easier
it is for Eigen dev to reproduce, the more likely they are to investigate.