[Python-bugs-list] [ python-Bugs-419390 ] base64.py could be smarter...

noreply@sourceforge.net noreply@sourceforge.net
Wed, 06 Jun 2001 14:17:46 -0700


Bugs item #419390, was updated on 2001-04-26 23:57
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=419390&group_id=5470

Category: Python Library
Group: Feature Request
Status: Open
Resolution: None
Priority: 5
Submitted By: Anthony Baxter (anthonybaxter)
Assigned to: Nobody/Anonymous (nobody)
Summary: base64.py could be smarter...

Initial Comment:
base64.encodestring and decodestring take the
provided string, wrap it in a StringIO, then 
pass it to encode/decode which uses read() to 
pull it back out again. 

Seems pretty inefficient.

Replacing decodestring with:
  return binascii.a2b_base64(s)

results in a speedup of a factor of 16 or so.
(my sample: a 2Mb encoded voice message - takes
an average of 10s in the current form, and 0.6s
using just binascii.)

A similar speedup for encodestring seems possible.


----------------------------------------------------------------------

>Comment By: Peter Schneider-Kamp (nowonder)
Date: 2001-06-06 14:17

Message:
Logged In: YES 
user_id=14463

Looks good to me. Uploaded (extremely small) patch #430846.

Unfortunately speeding up encoding of a String seems to be
harder (binascii.b2a_base64 accepts at most 76 bytes). Ideas
anyone?

----------------------------------------------------------------------

Comment By: Jeremy Hylton (jhylton)
Date: 2001-05-07 21:27

Message:
Logged In: YES 
user_id=31392

Anthony,
Could you submit a patch?


----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=419390&group_id=5470