cpython/Misc
Tim Peters 696cf43b58 Heavily fiddled variant of patch #1442927: PyLong_FromString optimization.
``long(str, base)`` is now up to 6x faster for non-power-of-2 bases.  The
largest speedup is for inputs with about 1000 decimal digits.  Conversion
from non-power-of-2 bases remains quadratic-time in the number of input
digits (it was and remains linear-time for bases 2, 4, 8, 16 and 32).

Speedups at various lengths for decimal inputs, comparing 2.4.3 with
current trunk.  Note that it's actually a bit slower for 1-digit strings:

  len  speedup
 ----  -------
   1     -4.5%
   2      4.6%
   3      8.3%
   4     12.7%
   5     16.9%
   6     28.6%
   7     35.5%
   8     44.3%
   9     46.6%
  10     55.3%
  11     65.7%
  12     77.7%
  13     73.4%
  14     75.3%
  15     85.2%
  16    103.0%
  17     95.1%
  18    112.8%
  19    117.9%
  20    128.3%
  30    174.5%
  40    209.3%
  50    236.3%
  60    254.3%
  70    262.9%
  80    295.8%
  90    297.3%
 100    324.5%
 200    374.6%
 300    403.1%
 400    391.1%
 500    388.7%
 600    440.6%
 700    468.7%
 800    498.0%
 900    507.2%
1000    501.2%
2000    450.2%
3000    463.2%
4000    452.5%
5000    440.6%
6000    439.6%
7000    424.8%
8000    418.1%
9000    417.7%
2006-05-24 21:10:40 +00:00
..
RPM 2.5a2 2006-04-27 02:13:13 +00:00
Vim Update for 'ImportWarning' 2006-05-16 17:42:16 +00:00
ACKS Bug #1334662 / patch #1335972: int(string, base) wrong answers. 2006-05-23 18:45:30 +00:00
AIX-NOTES The fix to use . was incorporated 2003-06-08 02:25:17 +00:00
BeOS-NOTES
BeOS-setup.py Remove regsub, reconvert, regex, regex_syntax and everything under lib-old. 2006-03-16 06:50:13 +00:00
build.sh At least test_threading_local doesn't leak any more. 2006-04-18 03:02:10 +00:00
cheatsheet Remove regsub, reconvert, regex, regex_syntax and everything under lib-old. 2006-03-16 06:50:13 +00:00
developers.txt Added SVN access for Steven Bethard and Talin, for PEP updating. 2006-04-27 22:53:05 +00:00
find_recursionlimit.py Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
gdbinit break sets a breakpoint rather than stopping the loop. 2005-09-05 16:16:49 +00:00
HISTORY moved older releases into HISTORY 2006-03-20 06:30:41 +00:00
indent.pro
NEWS Heavily fiddled variant of patch #1442927: PyLong_FromString optimization. 2006-05-24 21:10:40 +00:00
NEWS.help Bug #1014775: update NEWS.help for changes in docutils. 2004-08-30 14:33:25 +00:00
Porting
PURIFY.README
pymemcompat.h
python-config.in Patch #1161914: Add python-config. 2006-04-15 08:13:05 +00:00
python-mode.el Sync with python-mode project. Adds two changes: 2003-12-18 21:53:33 +00:00
python.man fix two typos in python(1) 2005-03-20 14:16:03 +00:00
README Add some doc about using valgrind 2004-06-06 19:58:40 +00:00
README.OpenBSD Add some notes about a recurring problem with OpenBSD 2006-01-09 07:29:03 +00:00
README.valgrind Add some notes about a couple of poorly behaved tests 2006-04-17 01:49:14 +00:00
RFD
setuid-prog.c
SpecialBuilds.txt Update instructions for EXTRA_CFLAGS: configure ignores 2006-04-16 18:55:07 +00:00
valgrind-python.supp Updated gentoo to 2005.0 2005-11-13 18:58:32 +00:00
vgrindefs

Python Misc subdirectory
========================

This directory contains files that wouldn't fit in elsewhere.  Some
documents are only of historic importance.

Files found here
----------------

ACKS		Acknowledgements
AIX-NOTES	Notes for building Python on AIX
BeOS-NOTES	Notes for building on BeOS
BeOS-setup.py	setup.py replacement for BeOS, see BeOS-NOTES
cheatsheet	Quick summary of Python by Ken Manheimer
find_recursionlimit.py  Script to find a value for sys.maxrecursionlimit
gdbinit		Handy stuff to put in your .gdbinit file, if you use gdb
HISTORY		News from previous releases -- oldest last
HPUX-NOTES	Notes about dynamic loading under HP-UX
indent.pro	GNU indent profile approximating my C style
NEWS		News for this release (for some meaning of "this")
Porting		Mini-FAQ on porting to new platforms
PURIFY.README	Information for Purify users
pymemcompat.h	Memory interface compatibility file.
python.man	UNIX man page for the python interpreter
python-mode.el	Emacs mode for editing Python programs
README		The file you're reading now
README.valgrind	Information for Valgrind users, see valgrind-python.supp
RFD		Request For Discussion about a Python newsgroup
RPM		(Old) tools to build RPMs
SpecialBuilds.txt     Describes extra symbols you can set for debug builds
setuid-prog.c	C helper program for set-uid Python scripts
vgrindefs	Python configuration for vgrind (a generic pretty printer)
valgrind-python.supp	Valgrind suppression file, see README.valgrind