01:29 iwuvmika left 03:59 apogee_ntv left 04:06 apogee_ntv joined
Geth rakudo/lizmat-93: 0ea0699e96 | (Elizabeth Mattijsen)++ | 2 files
Streamline .sort(&mapper)

  - 0,1,2 elem lists within noise, tending to be 1% faster
  - 3..7 elem lists 15% - 0% slower
  - 8..* elems 7% .. 60% faster
This is basically achieved by streamlining the logic which determines ... (11 more lines)
12:40
rakudo: lizmat++ created pull request #6874:
Streamline .sort(&mapper)
12:41
rakudo/lizmat-93: c1597a215a | (Elizabeth Mattijsen)++ | src/core.c/Rakudo/Sorting.rakumod
Pre-size native int array with indices

This doesn't really add any overhead for small numbers, but improves performance by about 5% for a list of 100000 elements
13:52
rakudo/lizmat-94: 71d66bfb24 | (Elizabeth Mattijsen)++ | src/core.c/List.rakumod
Make List/Array.sum about 14% faster

By replacing repeated nqp::getattr calls by a lowered lexical
14:55
rakudo: lizmat++ created pull request #6875:
Make List/Array.sum about 14% faster
14:56
rakudo/lizmat-95: aef8909009 | (Elizabeth Mattijsen)++ | src/core.c/List.rakumod
Make List/Array.EXISTS-POS(uint) (about 3% faster)

Reorganize code a bit
   - First check if $!todo is concrete (it usually isn't) so that
   the more expensive nqp::isge_i is usually not done
   - only one actual nqp::existspos
... (6 more lines)
17:55
rakudo: lizmat++ created pull request #6876:
Make List/Array.EXISTS-POS(uint) (about 3% faster)
rakudo/lizmat-96: 25c22411d2 | (Elizabeth Mattijsen)++ | src/core.c/List.rakumod
Make List/Array.EXISTS-POS(Int:D) (about 70% faster)

  - First check negativity of index and existence of refified
  - Then check if $!todo is concrete (it usually isn't) so that the more expensive nqp::isge_i is usually not done
  - only one actual nqp::existspos
Reduce bytecode size (568 -> 472)
  - fewer nqp::getattr, more lowered lexical accesses
  - remove return constraint: nqp::hllbool() can only return Bool:D
This actually gets neatly inlined and thus much faster
18:36
rakudo: lizmat++ created pull request #6877:
Make List/Array.EXISTS-POS(Int:D) (about 70% faster)
rakudo/lizmat-97: 0f92690834 | (Elizabeth Mattijsen)++ | src/core.c/List.rakumod
Reduce List.FLATTENABLE_LIST size (364 -> 340)

  - No performance change, just slightly easier to inline
  - De-nqpify code, pure HLL from now
19:28
rakudo: lizmat++ created pull request #6878:
Reduce List.FLATTENABLE_LIST size (364 -> 340)
19:29
21:06 finanalyst joined 22:53 finanalyst left