[libre-riscv-dev] div/mod algorithm written in python
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Tue Jul 23 11:00:03 BST 2019
On Tue, Jul 23, 2019 at 10:32 AM Jacob Lifshay <programmerjake at gmail.com> wrote:
> On Tue, Jul 23, 2019 at 1:26 AM Luke Kenneth Casson Leighton
> <lkcl at lkcl.net> wrote:
> > ok have added unit tests which do the inf / nan / zero / random /
> > permutations coverage, plus set a 20,000 random run going on each of
> > FP16/32/64. the FP64 one generates only like 3 values per second so
> > that's going to take... 2 hours just on its own.
> If the tests are set up to use unittest's testing framework,
> pytest-xdist can be used to drastically speed up testing -- by about
> an order of magnitude on my computer (6-cores/12-threads). If you have
> multiple computers, pytest-xdist can distribute the test workload
> between computers (though I haven't yet tried that).
(*sotto-voice* don't tell no-one, i just edit the test files by hand,
add a for-loop and increase the n_vals parameter, delete a function or
two and run 3 versions in different xterms....)
> > oh! radix-8 - right! yes, sorry, not an 8-bit-wide radix
> > (radix-256), eek! yes, sorry, with you now, i remember :)
> > ok yes, hmm, i'll run the current batch (log2_radix=2) and look at
> > log2_radix=3 next.
> > i'd like to get this one declared "done" (milestone completed) then
> I'm all for declaring division completed :)
i restarted the unit tests after working out some
voodoo-magic-constants that allow log2_radix=3 to run, i've now got 5
xterms all running separate tasks, loadavg 5.9, twin laptop fans
damaging my hearing *sigh*, it'll be a couple hours yet.
whoaaaa could you see if there's anything that can be done about the
size of the graphviz diagram? that left-hand-side is scary.
i remember spotting that the loops are an opportunity to create a
separate module: that would help a lot.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 196367 bytes
Desc: not available
More information about the libre-riscv-dev