Re: float[] → Vertex[] – decreases performance by 1000%

Brad Roberts braddr at puremagic.com
Tue Aug 28 17:38:13 PDT 2012


On Wed, 29 Aug 2012, Timon Gehr wrote:

> On 08/29/2012 01:26 AM, David wrote:
> > > Use this to create a minimal test case with minimal user interaction:
> > > https://github.com/CyberShadow/DustMite
> > 
> > Doesn't help if dmd doesn't crash, or?
> > 
> 
> It doesn't help a lot if compilation succeeds, but you stated that you
> generally tend to ignore dmd bugs. Most dmd bugs make compilation fail.

It's more generally useful than that.  It can reduce for any set of 
commands that together produce a binary decision: pass or fail.  The key 
problem is that it does need to be deterministic.  It doesn't matter if 
it's dmd that fails, or an execution of the output code, or really 
anything that determines pass or fail.  The basic pattern is:

while (progress can be made)
   try a reduction

   if reduction still reproduces the error
      continue
   else
      revert
done

(it's obviously more complex and there's tons of magic inside try a 
reduction)



More information about the Digitalmars-d-learn mailing list