Carl Friedrich Bolz-Tereick pushed to branch branch/default at PyPy / pypy


Commits:
6467b659 by Carl Friedrich Bolz-Tereick at 2020-12-29T20:49:23+01:00
rename length and be more careful about its uses

--HG--
branch : map-improvements

- - - - -
eca1f1f6 by Carl Friedrich Bolz-Tereick at 2020-12-29T21:22:24+01:00
store everything erased

--HG--
branch : map-improvements

- - - - -
12ce34ee by Carl Friedrich Bolz-Tereick at 2020-12-29T22:00:39+01:00
factor out some common code into helper methods

--HG--
branch : map-improvements

- - - - -
324150d3 by Carl Friedrich Bolz-Tereick at 2020-12-30T12:47:11+01:00
erase a bit differently

--HG--
branch : map-improvements

- - - - -
b95aefec by Carl Friedrich Bolz-Tereick at 2020-12-30T13:34:37+01:00
in progress: the simple cases of unboxing work

--HG--
branch : map-improvements

- - - - -
21ee8ee3 by Carl Friedrich Bolz-Tereick at 2020-12-31T13:07:06+01:00
fix remaining tests

--HG--
branch : map-improvements

- - - - -
a83b5a4a by Carl Friedrich Bolz-Tereick at 2020-12-31T14:20:17+01:00
implement type freezing for unboxed types:

if the types of a field aren't stable, just give up on unboxing any field 
for
the type

--HG--
branch : map-improvements

- - - - -
85194a93 by Carl Friedrich Bolz-Tereick at 2020-12-31T14:38:07+01:00
implement immutability of UnwrappedPlainAttributes

--HG--
branch : map-improvements

- - - - -
071d6418 by Carl Friedrich Bolz-Tereick at 2021-01-01T19:03:22+01:00
some more tests for specialized classes

--HG--
branch : map-improvements

- - - - -
ae48de81 by Carl Friedrich Bolz-Tereick at 2021-01-19T20:31:41+01:00
merge default

--HG--
branch : map-improvements

- - - - -
33aa95cc by Carl Friedrich Bolz-Tereick at 2021-01-19T22:18:04+01:00
fix bug in more complicated patterns of boxed and unboxed attributes

--HG--
branch : map-improvements

- - - - -
9cac4e17 by Carl Friedrich Bolz-Tereick at 2021-01-19T22:50:23+01:00
expose mapdict implementation via __pypy__ to help with debugability

--HG--
branch : map-improvements

- - - - -
fd6ca310 by Carl Friedrich Bolz-Tereick at 2021-01-21T19:34:34+01:00
fix interaction of reordering and unboxing

--HG--
branch : map-improvements

- - - - -
25041a4d by Carl Friedrich Bolz-Tereick at 2021-01-21T20:31:40+01:00
another reordering bug

--HG--
branch : map-improvements

- - - - -
08c5791d by Carl Friedrich Bolz-Tereick at 2021-01-26T10:31:57+01:00
add missing immutable field

--HG--
branch : map-improvements

- - - - -
d6303f16 by Carl Friedrich Bolz-Tereick at 2021-01-26T14:32:34+01:00
fix a problem with undetected type-instability: it wasn't found if the
different types were in different objects!

fix a bit involved, but makes unreachable UnboxedPlainAttribute truely
unreachable

--HG--
branch : map-improvements

- - - - -
ac211cb8 by Carl Friedrich Bolz-Tereick at 2021-01-26T15:27:04+01:00
stop field optimizations in a few of the existing tests

--HG--
branch : map-improvements

- - - - -
589882c8 by Carl Friedrich Bolz-Tereick at 2021-01-26T17:09:59+01:00
remove debugging comment, make test_pypy_c more natural

--HG--
branch : map-improvements

- - - - -
4402d461 by Carl Friedrich Bolz-Tereick at 2021-01-27T09:44:55+01:00
document branch

--HG--
branch : map-improvements

- - - - -
c2084dce by Carl Friedrich Bolz-Tereick at 2021-01-27T13:15:48+01:00
fix a bug where the unboxed storage would grow too large

--HG--
branch : map-improvements

- - - - -
f7b2e32d by Carl Friedrich Bolz-Tereick at 2021-01-27T21:56:35+01:00
this took way too long: at least reproduce the failure in a unit test

--HG--
branch : map-improvements

- - - - -
5550cf11 by Carl Friedrich Bolz-Tereick at 2021-01-28T13:46:48+01:00
add layout comments

--HG--
branch : map-improvements

- - - - -
31e40772 by Carl Friedrich Bolz-Tereick at 2021-01-28T15:20:43+01:00
fix test_unbox_reorder_bug3

also rip out size prediction:
- with the JIT it's a lot less useful
- it was always a mess with inlined fields
- unboxing makes it even less clear

--HG--
branch : map-improvements

- - - - -
c170a018 by Carl Friedrich Bolz-Tereick at 2021-01-28T15:33:02+01:00
always go through _set_mapdict_map

--HG--
branch : map-improvements

- - - - -
23b6ad2f by Carl Friedrich Bolz-Tereick at 2021-01-30T16:05:53+01:00
pretty subtle bug: when iterating over a map dict, some items would go missing!

--HG--
branch : map-improvements

- - - - -
07ff1eaa by Carl Friedrich Bolz-Tereick at 2021-01-30T16:30:07+01:00
merge default

--HG--
branch : map-improvements

- - - - -
432b4c30 by Carl Friedrich Bolz-Tereick at 2021-01-31T20:46:56+01:00
only unbox ints on 64 bit machines (otherwise there is no memory saving and
very unclear whether it's a good idea)

--HG--
branch : map-improvements

- - - - -
859cf487 by Carl Friedrich Bolz-Tereick at 2021-01-31T20:49:29+01:00
merge default

--HG--
branch : map-improvements

- - - - -
84f4bacf by Carl Friedrich Bolz-Tereick at 2021-02-01T14:10:13+01:00
merge default

--HG--
branch : map-improvements

- - - - -
0fdae78f by Carl Friedrich Bolz-Tereick at 2021-02-02T19:20:40+01:00
merge map-improvements

optimize instances with integer and float fields by storing them unboxed in a
float array (on 32bit machines this is only done for float fields). The float
array is stored in one of the storage slots of the instance. Once a field
proves to be type-unstable we give up on type-specializing this class and
revert all instances once we touch them the next time to the default
representation.

- - - - -


13 changed files:

- pypy/doc/whatsnew-head.rst
- pypy/module/__pypy__/interp_magic.py
- pypy/module/__pypy__/test/test_special.py
- pypy/module/pypyjit/test_pypy_c/test_call.py
- pypy/module/pypyjit/test_pypy_c/test_containers.py
- pypy/module/pypyjit/test_pypy_c/test_instance.py
- pypy/module/pypyjit/test_pypy_c/test_misc.py
- pypy/module/pypyjit/test_pypy_c/test_thread.py
- pypy/objspace/std/mapdict.py
- pypy/objspace/std/objspace.py
- pypy/objspace/std/test/test_dictmultiobject.py
- pypy/objspace/std/test/test_mapdict.py
- rpython/rlib/rerased.py


View it on GitLab: 
https://foss.heptapod.net/pypy/pypy/-/compare/b5e28e56b6e59819fda50a2c46f5384713d58bea...0fdae78f58d29ed22e2d09fabbe8a29d6fa32f9e

-- 
View it on Heptapod: 
https://foss.heptapod.net/pypy/pypy/-/compare/b5e28e56b6e59819fda50a2c46f5384713d58bea...0fdae78f58d29ed22e2d09fabbe8a29d6fa32f9e
You're receiving this email because of your account on foss.heptapod.net.


_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to