Carl Friedrich Bolz-Tereick pushed to branch branch/py3.7 at PyPy / pypy


Commits:
9732fa80 by Carl Friedrich Bolz-Tereick at 2021-03-19T21:33:13+01:00
randomly implement a faster divmod for very large numbers, following Mark
Dickinson's approach from this issue: https://bugs.python.org/issue3451

--HG--
branch : faster-rbigint-big-divmod

- - - - -
0185aad6 by Carl Friedrich Bolz-Tereick at 2021-03-19T21:34:17+01:00
for reference, before the introduction of extract_bits

--HG--
branch : faster-rbigint-big-divmod

- - - - -
d3fd8ae9 by Carl Friedrich Bolz-Tereick at 2021-03-19T21:34:35+01:00
and get it back

--HG--
branch : faster-rbigint-big-divmod

- - - - -
4400655a by Carl Friedrich Bolz-Tereick at 2021-03-20T16:56:17+01:00
boost size once, not many times during the recursion

--HG--
branch : faster-rbigint-big-divmod

- - - - -
dde7da59 by Carl Friedrich Bolz-Tereick at 2021-03-21T13:02:43+01:00
some tweaks

--HG--
branch : faster-rbigint-big-divmod

- - - - -
379a10b8 by Carl Friedrich Bolz-Tereick at 2021-03-21T15:39:38+01:00
some tweaks (more possible)

--HG--
branch : faster-rbigint-big-divmod

- - - - -
2419dc5c by Carl Friedrich Bolz-Tereick at 2021-03-21T18:54:26+01:00
remove quadraticness

--HG--
branch : faster-rbigint-big-divmod

- - - - -
c52b6ad0 by Carl Friedrich Bolz-Tereick at 2021-03-21T20:34:16+01:00
tweaks

--HG--
branch : faster-rbigint-big-divmod

- - - - -
ed5bf211 by Carl Friedrich Bolz-Tereick at 2021-03-22T07:26:48+01:00
do less extracting

--HG--
branch : faster-rbigint-big-divmod

- - - - -
f881ae87 by Carl Friedrich Bolz-Tereick at 2021-03-22T11:39:36+01:00
no need for extract_bits any more, all based on digits

--HG--
branch : faster-rbigint-big-divmod

- - - - -
43f8b55e by Carl Friedrich Bolz-Tereick at 2021-03-22T13:06:03+01:00
start integrating divmod_big

--HG--
branch : faster-rbigint-big-divmod

- - - - -
06fd2475 by Carl Friedrich Bolz-Tereick at 2021-03-22T13:50:32+01:00
tweak heuristics

--HG--
branch : faster-rbigint-big-divmod

- - - - -
6b60817e by Carl Friedrich Bolz-Tereick at 2021-03-22T14:00:42+01:00
tune _full_digits_lshift_then_or

--HG--
branch : faster-rbigint-big-divmod

- - - - -
a2eb5fde by Carl Friedrich Bolz-Tereick at 2021-03-23T13:20:20+01:00
test and fix: should never use the length of ._digits, always numdigits()

bug found by afl after 12h!

--HG--
branch : faster-rbigint-big-divmod

- - - - -
53fc4b57 by Carl Friedrich Bolz-Tereick at 2021-03-23T13:23:19+01:00
rename

--HG--
branch : faster-rbigint-big-divmod

- - - - -
519e74bd by Carl Friedrich Bolz-Tereick at 2021-03-24T10:43:59+01:00
add a diagram

--HG--
branch : faster-rbigint-big-divmod

- - - - -
453eb266 by Carl Friedrich Bolz-Tereick at 2021-03-24T10:55:46+01:00
typo :-(

--HG--
branch : faster-rbigint-big-divmod

- - - - -
5d37d08c by Carl Friedrich Bolz-Tereick at 2021-03-24T13:33:53+01:00
kill c-based comments

--HG--
branch : faster-rbigint-big-divmod

- - - - -
16715209 by Carl Friedrich Bolz-Tereick at 2021-03-24T19:28:42+01:00
kill redundant code

--HG--
branch : faster-rbigint-big-divmod

- - - - -
83abb3cc by Carl Friedrich Bolz-Tereick at 2021-03-24T20:20:43+01:00
shortcut

--HG--
branch : faster-rbigint-big-divmod

- - - - -
a08e2415 by Carl Friedrich Bolz-Tereick at 2021-03-25T09:02:54+01:00
center

--HG--
branch : faster-rbigint-big-divmod

- - - - -
2a90c6a5 by Carl Friedrich Bolz-Tereick at 2021-03-25T10:15:48+01:00
run the hypothesis tests in a special mode where SHIFT is set to a small value,
to find edge cases more easily

--HG--
branch : faster-rbigint-big-divmod

- - - - -
65734934 by Carl Friedrich Bolz-Tereick at 2021-03-26T12:57:30+01:00
fixes

--HG--
branch : faster-rbigint-big-divmod

- - - - -
3ac5b256 by Carl Friedrich Bolz-Tereick at 2021-03-26T13:35:52+01:00
improve coverage

--HG--
branch : faster-rbigint-big-divmod

- - - - -
ba228b10 by Matti Picus at 2021-04-04T20:05:58+03:00
Added tag release-pypy2.7-v7.3.4rc2 for changeset 63df5ef41012

- - - - -
34aaf3fe by Matti Picus at 2021-04-04T20:06:16+03:00
Added tag release-pypy3.7-v7.3.4rc2 for changeset 51efa818fd9b

- - - - -
035e76d7 by Matti Picus at 2021-04-04T20:21:41+03:00
update versions.json for rc2

- - - - -
cd9ea75d by Matti Picus at 2021-04-06T20:54:10+03:00
add rc2 to check_versions

- - - - -
66540975 by Matti Picus at 2021-04-08T08:06:05+03:00
Added tag release-pypy2.7-v7.3.4 for changeset 63df5ef41012

- - - - -
d01efe39 by Matti Picus at 2021-04-08T08:06:18+03:00
Added tag release-pypy3.7-v7.3.4 for changeset 51efa818fd9b

- - - - -
1304c671 by Matti Picus at 2021-04-08T09:05:40+03:00
release v7.3.4

- - - - -
f95c5950 by Matti Picus at 2021-04-08T11:35:25+03:00
fix versions.json, add mention of vmprof for arm64

- - - - -
0e3c1d26 by Carl Friedrich Bolz-Tereick at 2021-04-08T20:39:36+02:00
fix madvise

- - - - -
24f09f61 by Matti Picus at 2021-04-08T21:49:39+03:00
update howto-release with more info about versions.json

- - - - -
cb11bcee by Ronan Lamy at 2021-04-08T20:40:51+01:00
Remove obsolete code dealing with pre-2.7 Pythons

- - - - -
a6c845a0 by Carl Friedrich Bolz-Tereick at 2021-04-08T22:36:58+02:00
merge head

- - - - -
9489e8f5 by Ronan Lamy at 2021-04-08T21:47:53+01:00
Prevent @pytest.mark.pypy_only from wrongly skipping apptests, and use it more

- - - - -
8e246f9f by Carl Friedrich Bolz-Tereick at 2021-04-12T10:58:34+02:00
oops, fix wrong test

--HG--
branch : faster-rbigint-big-divmod

- - - - -
5ba4e56d by Carl Friedrich Bolz-Tereick at 2021-04-12T10:59:09+02:00
be paranoid: check that the result of divmod is correct, if we use the new
faster (and more complicated) code path. better an assertion error than a wrong
result

--HG--
branch : faster-rbigint-big-divmod

- - - - -
4ce4db16 by Carl Friedrich Bolz-Tereick at 2021-04-12T12:41:00+02:00
ouch, something wrong on 32 bit. add some debug prints to find it on the 
buildbot

--HG--
branch : faster-rbigint-big-divmod

- - - - -
e9d01388 by Carl Friedrich Bolz-Tereick at 2021-04-12T12:48:50+02:00
hrmpf

--HG--
branch : faster-rbigint-big-divmod

- - - - -
16f8b228 by Carl Friedrich Bolz-Tereick at 2021-04-12T14:18:32+02:00
another attempt

--HG--
branch : faster-rbigint-big-divmod

- - - - -
f9127129 by Carl Friedrich Bolz-Tereick at 2021-04-12T19:58:53+02:00
last attempt :-(

--HG--
branch : faster-rbigint-big-divmod

- - - - -
27a36ee0 by Carl Friedrich Bolz-Tereick at 2021-04-12T21:07:42+02:00
the assert itself was wrong :-(((((. This is just incompetent flailing at this
point.

--HG--
branch : faster-rbigint-big-divmod

- - - - -
8224a96f by Carl Friedrich Bolz-Tereick at 2021-04-13T10:48:20+02:00
merge faster-rbigint-big-divmod: a faster divide-and-conquer divmod
implementation for divmod of rbigints, given large enough numbers. based on
python code by Mark Dickinson here: https://bugs.python.org/issue3451

- - - - -
ac3f5f56 by Carl Friedrich Bolz-Tereick at 2021-04-14T10:05:46+02:00
add a jit driver for deque._find (I introduced _find here, because on 3.x,
deque has more methods and already had this abstraction)

- - - - -
387efc36 by Carl Friedrich Bolz-Tereick at 2021-04-14T10:17:05+02:00
merge default

--HG--
branch : py3.7

- - - - -


15 changed files:

- .hgignore
- .hgtags
- pypy/doc/how-to-release.rst
- pypy/doc/release-v7.3.4.rst
- pypy/interpreter/test/test_argument.py
- pypy/module/_collections/interp_deque.py
- pypy/objspace/std/test/test_newformat.py
- pypy/objspace/std/test/test_obj.py
- pypy/tool/release/check_versions.py
- pypy/tool/release/repackage.sh
- pypy/tool/release/versions.json
- rpython/rlib/rbigint.py
- rpython/rlib/rmmap.py
- rpython/rlib/test/test_rbigint.py
- rpython/rlib/test/test_rmmap.py


View it on GitLab: 
https://foss.heptapod.net/pypy/pypy/-/compare/68fb106de0c4458f249fa5866b3414c63e5467d3...387efc36e6d2ac6160990afb9b1af2a5d4928d73

-- 
View it on Heptapod: 
https://foss.heptapod.net/pypy/pypy/-/compare/68fb106de0c4458f249fa5866b3414c63e5467d3...387efc36e6d2ac6160990afb9b1af2a5d4928d73
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