From: John Perry <john.perry@usm.edu>
Subject: Re: Performance of records with variant parts
Date: Mon, 22 Mar 2021 10:45:21 -0700 (PDT) [thread overview]
Message-ID: <b2408cae-884d-4b84-8152-d4d41a5aa5cen@googlegroups.com> (raw)
In-Reply-To: <s3akp6$jdu$1@gioia.aioe.org>
On Monday, March 22, 2021 at 12:39:54 PM UTC-5, Dmitry A. Kazakov wrote:
> On 2021-03-22 18:02, John Perry wrote:
>
> > Is there a reason that the record with variant parts runs so much slower? I can make the complete source available if need be.
> It must check the discriminant if the object is dynamically constrained.
I'm not quite sure I understand. Are you saying that it has to check the discriminant at run-time? How would that differ from checking the value if it were merely a field of the record?
(Sorry if this is is a dumb question, but I guess I don't understand variant records as well as I thought.)
> Checking the discriminant and accessing a scalar field is roughly in the
> same league, so 15-30% penalty is a quite good outcome. I would expect
> 50% or even worse with cache misses between independent memory accesses.
OK, so 15-30% is actually good news. Interesting.
john perry
next prev parent reply other threads:[~2021-03-22 17:45 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-22 17:02 Performance of records with variant parts John Perry
2021-03-22 17:32 ` Jeffrey R. Carter
2021-03-22 17:49 ` John Perry
2021-03-22 17:54 ` John Perry
2021-03-22 19:31 ` Jeffrey R. Carter
2021-03-22 22:11 ` John Perry
2021-03-23 9:31 ` Jeffrey R. Carter
2021-03-23 14:27 ` Simon Wright
2021-03-23 23:00 ` John Perry
2021-03-23 23:27 ` Jeffrey R. Carter
2021-03-26 15:38 ` Stephen Leake
2021-03-26 15:44 ` John Perry
2021-03-30 7:12 ` Emmanuel Briot
2021-04-01 0:03 ` John Perry
2021-04-01 6:45 ` Emmanuel Briot
2021-04-01 13:38 ` Niklas Holsti
2021-04-02 16:07 ` John Perry
2021-03-22 17:39 ` Dmitry A. Kazakov
2021-03-22 17:45 ` John Perry [this message]
2021-03-22 18:07 ` Dmitry A. Kazakov
2021-03-22 18:23 ` John Perry
2021-03-22 20:30 ` Dmitry A. Kazakov
2021-03-22 18:59 ` Niklas Holsti
2021-03-22 21:54 ` John Perry
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox