"Andrei Alexandrescu" <[email protected]> wrote in message news:[email protected]... > Hello, > > > I just submitted > (https://github.com/D-Programming-Language/tools/commit/c77b870fdc5674d7434b03d1767ba831eaac25b1) > > a change to rdmd that runs one thread per stat when comparing file dates, > using David's excellent std.parallelism. > > In my experiment the change introduces no additional lag on small projects > and works 10-15% faster on moderate projects (couple dozen deps). > > Could someone try rdmd against some larger projects and assess its > behavior and speed? > >
Finally got a change to try this. The projects probably aren't as big as what you had in mind, but I tried: rdmd 0124c6b61a VS rdmd 75f292fffd Compiling: - Compiling all of Goldie's targets with DMD 2.058 - Attempting to compile DDMD with DMD 2.053 (the build failed pretty quickly, but not until after RDMD would DMD for the second time) On: - 32-bit single-core Linux, using a HDD - 32-bit single-core Windows, using a HDD - 64-bit dual-core Linux, using a USB Flash drive On all combinations I got no difference between the two versions of RDMD (which is good in the case of the single-core machines, of course). The once slight exception was that compiling Goldie's targets on the 64-bit dual-core machine was about 1-2% faster with the newer RDMD (75f292fffd) compared with the older (0124c6b61a). Could just be noise, though. There was one weird anomaly: When compiling the Goldie targets on the 64-bit dual-core, I compiled all of Goldie 8 times with each of the two RDMDs. On *ONE* of the compilations with the newer RDMD, one of the targets failed to build with a DMD ICE: dmd: ../ztc/aa.c:423: void AArray::rehash_x(aaA*, aaA**, size_t): Assertion `0' failed. I hadn't touched anything during or in-between compilations.
