Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #42656
| Path | csiph.com!usenet.pasdenom.info!gegeweb.org!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed2.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail |
|---|---|
| Return-Path | <davea@davea.name> |
| X-Original-To | python-list@python.org |
| Delivered-To | python-list@mail.python.org |
| X-Spam-Status | OK 0.000 |
| X-Spam-Evidence | '*H*': 1.00; '*S*': 0.00; 'algorithm': 0.04; 'encoding': 0.05; 'output': 0.05; 'pop': 0.05; 'subject:Python': 0.06; 'compiler': 0.07; 'explicit': 0.07; 'failing': 0.07; 'variables': 0.07; '#define': 0.09; '++i)': 0.09; 'aliases': 0.09; 'differing': 0.09; 'executed': 0.09; 'imply': 0.09; 'logic': 0.09; 'pointers': 0.09; 'sub': 0.09; 'typed': 0.09; 'worse': 0.09; 'xor': 0.09; 'template': 0.14; 'changes': 0.15; '-16': 0.16; '-20': 0.16; '2-4': 0.16; 'assembler': 0.16; 'character.': 0.16; 'cmp': 0.16; 'did,': 0.16; 'dl,': 0.16; 'dword': 0.16; 'eax': 0.16; 'eax,': 0.16; 'ebp': 0.16; 'ebp,': 0.16; 'ecx': 0.16; 'ecx,': 0.16; 'edx': 0.16; 'edx,': 0.16; 'encodings': 0.16; 'endp': 0.16; 'esi': 0.16; 'esi,': 0.16; 'esp': 0.16; 'esp,': 0.16; 'jmp': 0.16; 'jne': 0.16; 'lea': 0.16; 'less,': 0.16; 'loop.': 0.16; 'mov': 0.16; 'pointers,': 0.16; 'proc': 0.16; 'ptr': 0.16; 'received:74.208.4.195': 0.16; 'registers.': 0.16; 'regression': 0.16; 'segment': 0.16; 'template,': 0.16; 'index': 0.16; 'so.': 0.16; 'wrote:': 0.18; 'code.': 0.18; 'looked': 0.18; 'seems': 0.21; 'appears': 0.22; 'coding': 0.22; 'putting': 0.22; 'python?': 0.22; 'separate': 0.22; 'tests': 0.22; 'header:User- Agent:1': 0.23; "aren't": 0.24; 'byte': 0.24; 'comparing': 0.24; 'either.': 0.24; 'decide': 0.24; 'looks': 0.24; 'sort': 0.25; 'equivalent': 0.26; 'push': 0.26; 'switch': 0.26; 'post': 0.26; 'least': 0.26; 'subject:/': 0.26; 'values': 0.27; 'header:In- Reply-To:1': 0.27; 'am,': 0.29; 'operations,': 0.30; "i'm": 0.30; 'code': 0.31; '3.2': 0.31; 'coded': 0.31; 'comparison': 0.31; 'disabled': 0.31; 'gcc': 0.31; 'values.': 0.31; 'void': 0.31; 'probably': 0.32; 'checking': 0.33; 'raw': 0.33; 'skip:_ 10': 0.34; "i'd": 0.34; 'test': 0.35; 'but': 0.35; 'add': 0.35; 'there': 0.35; 'c++': 0.36; 'data,': 0.36; 'doing': 0.36; 'two': 0.37; 'being': 0.38; 'checks': 0.38; 'version,': 0.38; 'to:addr :python-list': 0.38; 'rather': 0.38; 'that,': 0.38; 'short': 0.38; 'to:addr:python.org': 0.39; 'changed': 0.39; 'either': 0.39; 'skip:p 20': 0.39; 'how': 0.40; 'even': 0.60; 'skip:u 10': 0.60; 'dave': 0.60; 'full': 0.61; 'skip:* 10': 0.61; 'simply': 0.61; 'first': 0.61; 'back': 0.62; 'times': 0.62; 'kind': 0.63; 'different': 0.65; 'here': 0.66; 'between': 0.67; 'received:74.208': 0.68; 'registers': 0.68; 'caused': 0.69; 'specialize': 0.74; 'hand': 0.80; 'skip:$ 10': 0.81; 'case?': 0.84; 'compiling': 0.84; "it'd": 0.84; 'preventing': 0.84; 'subject:long': 0.84 |
| Date | Wed, 03 Apr 2013 07:52:42 -0400 |
| From | Dave Angel <davea@davea.name> |
| User-Agent | Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130308 Thunderbird/17.0.4 |
| MIME-Version | 1.0 |
| To | python-list@python.org |
| Subject | Re: Performance of int/long in Python 3 |
| References | <mailman.3703.1364248275.2939.python-list@python.org> <d23a1931-7199-4550-9a87-697ee9413408@cd3g2000vbb.googlegroups.com> <mailman.30.1364889805.17481.python-list@python.org> <87dff083-14d8-4163-89f3-d78a9be6c802@c15g2000vbl.googlegroups.com> <mailman.21.1364931932.3114.python-list@python.org> <3qadncD4-6fcPsbMnZ2dnUVZ_rqdnZ2d@westnet.com.au> <515bbedb$0$29891$c3e8da3$5496439d@news.astraweb.com> <mailman.38.1364970346.3114.python-list@python.org> <iaadnbgQ-smCUMbMnZ2dnUVZ_qydnZ2d@westnet.com.au> <CAPTjJmr9v3gijxoFmhsFM1xw1h4VCaG4K88g03bftouxcG1Q0g@mail.gmail.com> <CALwzid=T6oLzSJ=05vdrQwdpKK8JRaqevOjQhDTojcBo_ynBRw@mail.gmail.com> <mailman.41.1364973874.3114.python-list@python.org> <Y9SdnZYmE9t4QcbMnZ2dnUVZ_gCdnZ2d@westnet.com.au> <a71c7d9b-c0c5-4c6f-ad4f-225ed7ca52aa@kw7g2000pbb.googlegroups.com> <vuOdnV0t7qAPesbMnZ2dnUVZ_rednZ2d@westnet.com.au> <mailman.45.1364984455.3114.python-list@python.org> <gcSdnY65iPFAkMHMnZ2dnUVZ_h2dnZ2d@westnet.com.au> |
| In-Reply-To | <gcSdnY65iPFAkMHMnZ2dnUVZ_h2dnZ2d@westnet.com.au> |
| Content-Type | text/plain; charset=ISO-8859-1; format=flowed |
| Content-Transfer-Encoding | 7bit |
| X-Provags-ID | V02:K0:2HZ/KdGk+xKEiHAV4GT8Gst1+iOKf0WeWsP4ZnD2kpB 1D8fDwSHt4cLtZzqBNxxYrqLfbAZ0g9bdcHbTXfa1xCULXgqQR wsLb5PSp3VPUWcfebXMRNFUj3Ke8lnNanpNdWKOyPtu3m5V/ib tk75NYsOUad2TFAKqaJtnMQnmDNBWsyMH0BrBe9xUS21KEM9jK MWqV3jNJavIDKsoV5MKZLuOtQGB/i++ZjHdakHaHB2F55FOiSw osANYVM5l9CPa6R8setQwL1cnjixlsnlkaflFMCLohO9nEg0XS a8icONqHnyQ5EsTGzKuJQioK6BKRds1kwPG/AIVIxqMZLTPqA= = |
| X-BeenThere | python-list@python.org |
| X-Mailman-Version | 2.1.15 |
| Precedence | list |
| List-Id | General discussion list for the Python programming language <python-list.python.org> |
| List-Unsubscribe | <http://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe> |
| List-Archive | <http://mail.python.org/pipermail/python-list/> |
| List-Post | <mailto:python-list@python.org> |
| List-Help | <mailto:python-list-request@python.org?subject=help> |
| List-Subscribe | <http://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.50.1364989980.3114.python-list@python.org> (permalink) |
| Lines | 319 |
| NNTP-Posting-Host | 2001:888:2000:d::a6 |
| X-Trace | 1364989980 news.xs4all.nl 6855 [2001:888:2000:d::a6]:39684 |
| X-Complaints-To | abuse@xs4all.nl |
| Xref | csiph.com comp.lang.python:42656 |
Show key headers only | View raw
On 04/03/2013 07:05 AM, Neil Hodgson wrote:
> Dave Angel:
>
>> That would seem to imply that the speed regression on your data is NOT
>> caused by the differing size encodings. Perhaps it is the difference in
>> MSC compiler version, or other changes made between 3.2 and 3.3
>
> Its not caused by there actually being different size encodings but
> that the code is checking encoding size 2-4 times for each character.
>
> Back in 3.2 the comparison loop looked like:
>
> while (len1 > 0 && len2 > 0) {
> Py_UNICODE c1, c2;
>
> c1 = *s1++;
> c2 = *s2++;
>
> if (c1 != c2)
> return (c1 < c2) ? -1 : 1;
>
> len1--; len2--;
> }
>
> For 3.3 this has changed to
>
> for (i = 0; i < len1 && i < len2; ++i) {
> Py_UCS4 c1, c2;
> c1 = PyUnicode_READ(kind1, data1, i);
> c2 = PyUnicode_READ(kind2, data2, i);
>
> if (c1 != c2)
> return (c1 < c2) ? -1 : 1;
> }
>
> with PyUnicode_READ being
>
> #define PyUnicode_READ(kind, data, index) \
> ((Py_UCS4) \
> ((kind) == PyUnicode_1BYTE_KIND ? \
> ((const Py_UCS1 *)(data))[(index)] : \
> ((kind) == PyUnicode_2BYTE_KIND ? \
> ((const Py_UCS2 *)(data))[(index)] : \
> ((const Py_UCS4 *)(data))[(index)] \
> ) \
> ))
>
> There are either 1 or 2 kind checks in each call to PyUnicode_READ
> and 2 calls to PyUnicode_READ inside the loop. A compiler may decide to
> move the kind checks out of the loop and specialize the loop but MSVC
> 2010 appears to not do so.
I don't know how good MSC's template logic is, but it seems this would
be a good case for an explicit template, typed on the 'kind's values.
Or are all C++ features disabled when compiling Python? Failing that,
just code up 9 cases, and do a switch on the kinds.
I'm also puzzled. I thought that the sort algorithm used a hash of all
the items to be sorted, and only reverted to a raw comparison of the
original values when the hash collided. Is that not the case? Or is
the code you post here only used when the hash collides?
The assembler (32-bit build) for each
> PyUnicode_READ looks like
>
> mov ecx, DWORD PTR _kind1$[ebp]
> cmp ecx, 1
> jne SHORT $LN17@unicode_co@2
> lea ecx, DWORD PTR [ebx+eax]
> movzx edx, BYTE PTR [ecx+edx]
> jmp SHORT $LN16@unicode_co@2
> $LN17@unicode_co@2:
> cmp ecx, 2
> jne SHORT $LN15@unicode_co@2
> movzx edx, WORD PTR [ebx+edi]
> jmp SHORT $LN16@unicode_co@2
> $LN15@unicode_co@2:
> mov edx, DWORD PTR [ebx+esi]
> $LN16@unicode_co@2:
It appears that the compiler is keeping the three pointers in three
separate registers (eax, esi and edi) even though those are 3 aliases
for the same pointer. This is preventing it from putting other values
in those registers.
It'd probably do better if the C code manipulated the pointers, rather
than using an index i each time. But if it did, perhaps gcc would
generate worse code.
If I were coding the assembler by hand (Intel only), I'd be able to
avoid the multiple cmp operations, simply by comparing first to 2, then
doing a jne and a ja. I dunno whether the compiler would notice if I
coded the equivalent in C. (make both comparisons to 2, one for less,
and one for more)
>
> The kind1/kind2 variables aren't even going into registers and at
> least one test+branch and a jump are executed for every character. Two
> tests for 2 and 4 byte kinds. len1 and len2 don't get to go into
> registers either.
>
> Here's the full assembler output for unicode_compare:
>
> ; COMDAT _unicode_compare
> _TEXT SEGMENT
> _kind2$ = -20 ; size = 4
> _kind1$ = -16 ; size = 4
> _len2$ = -12 ; size = 4
> _len1$ = -8 ; size = 4
> _data2$ = -4 ; size = 4
> _unicode_compare PROC ; COMDAT
> ; _str1$ = ecx
> ; _str2$ = eax
>
> ; 10417: {
>
> push ebp
> mov ebp, esp
> sub esp, 20 ; 00000014H
> push ebx
> push esi
> mov esi, eax
>
> ; 10418: int kind1, kind2;
> ; 10419: void *data1, *data2;
> ; 10420: Py_ssize_t len1, len2, i;
> ; 10421:
> ; 10422: kind1 = PyUnicode_KIND(str1);
>
> mov eax, DWORD PTR [ecx+16]
> mov edx, eax
> shr edx, 2
> and edx, 7
> push edi
> mov DWORD PTR _kind1$[ebp], edx
>
> ; 10423: kind2 = PyUnicode_KIND(str2);
>
> mov edx, DWORD PTR [esi+16]
> mov edi, edx
> shr edi, 2
> and edi, 7
> mov DWORD PTR _kind2$[ebp], edi
>
> ; 10424: data1 = PyUnicode_DATA(str1);
>
> test al, 32 ; 00000020H
> je SHORT $LN9@unicode_co@2
> test al, 64 ; 00000040H
> je SHORT $LN7@unicode_co@2
> lea ebx, DWORD PTR [ecx+24]
> jmp SHORT $LN10@unicode_co@2
> $LN7@unicode_co@2:
> lea ebx, DWORD PTR [ecx+36]
> jmp SHORT $LN10@unicode_co@2
> $LN9@unicode_co@2:
> mov ebx, DWORD PTR [ecx+36]
> $LN10@unicode_co@2:
>
> ; 10425: data2 = PyUnicode_DATA(str2);
>
> test dl, 32 ; 00000020H
> je SHORT $LN13@unicode_co@2
> test dl, 64 ; 00000040H
> je SHORT $LN11@unicode_co@2
> lea edx, DWORD PTR [esi+24]
> jmp SHORT $LN30@unicode_co@2
> $LN11@unicode_co@2:
> lea eax, DWORD PTR [esi+36]
> mov DWORD PTR _data2$[ebp], eax
> mov edx, eax
> jmp SHORT $LN14@unicode_co@2
> $LN13@unicode_co@2:
> mov edx, DWORD PTR [esi+36]
> $LN30@unicode_co@2:
> mov DWORD PTR _data2$[ebp], edx
> $LN14@unicode_co@2:
>
> ; 10426: len1 = PyUnicode_GET_LENGTH(str1);
>
> mov edi, DWORD PTR [ecx+8]
>
> ; 10427: len2 = PyUnicode_GET_LENGTH(str2);
>
> mov ecx, DWORD PTR [esi+8]
>
> ; 10428:
> ; 10429: for (i = 0; i < len1 && i < len2; ++i) {
>
> xor eax, eax
> mov DWORD PTR _len1$[ebp], edi
> mov DWORD PTR _len2$[ebp], ecx
> test edi, edi
> jle SHORT $LN2@unicode_co@2
>
> ; 10426: len1 = PyUnicode_GET_LENGTH(str1);
>
> mov esi, edx
> mov edi, edx
>
> ; 10428:
> ; 10429: for (i = 0; i < len1 && i < len2; ++i) {
>
> sub ebx, edx
> jmp SHORT $LN4@unicode_co@2
> $LL28@unicode_co@2:
> mov edx, DWORD PTR _data2$[ebp]
> $LN4@unicode_co@2:
> cmp eax, ecx
> jge SHORT $LN29@unicode_co@2
>
> ; 10430: Py_UCS4 c1, c2;
> ; 10431: c1 = PyUnicode_READ(kind1, data1, i);
>
> mov ecx, DWORD PTR _kind1$[ebp]
> cmp ecx, 1
> jne SHORT $LN17@unicode_co@2
> lea ecx, DWORD PTR [ebx+eax]
> movzx edx, BYTE PTR [ecx+edx]
> jmp SHORT $LN16@unicode_co@2
> $LN17@unicode_co@2:
> cmp ecx, 2
> jne SHORT $LN15@unicode_co@2
> movzx edx, WORD PTR [ebx+edi]
> jmp SHORT $LN16@unicode_co@2
> $LN15@unicode_co@2:
> mov edx, DWORD PTR [ebx+esi]
> $LN16@unicode_co@2:
>
> ; 10432: c2 = PyUnicode_READ(kind2, data2, i);
>
> mov ecx, DWORD PTR _kind2$[ebp]
> cmp ecx, 1
> jne SHORT $LN21@unicode_co@2
> mov ecx, DWORD PTR _data2$[ebp]
> movzx ecx, BYTE PTR [eax+ecx]
> jmp SHORT $LN20@unicode_co@2
> $LN21@unicode_co@2:
> cmp ecx, 2
> jne SHORT $LN19@unicode_co@2
> movzx ecx, WORD PTR [edi]
> jmp SHORT $LN20@unicode_co@2
> $LN19@unicode_co@2:
> mov ecx, DWORD PTR [esi]
> $LN20@unicode_co@2:
>
> ; 10433:
> ; 10434: if (c1 != c2)
>
> cmp edx, ecx
> jne SHORT $LN31@unicode_co@2
> mov ecx, DWORD PTR _len2$[ebp]
> inc eax
> add edi, 2
> add esi, 4
> cmp eax, DWORD PTR _len1$[ebp]
> jl SHORT $LL28@unicode_co@2
> $LN29@unicode_co@2:
> mov edi, DWORD PTR _len1$[ebp]
> $LN2@unicode_co@2:
>
> ; 10436: }
> ; 10437:
> ; 10438: return (len1 < len2) ? -1 : (len1 != len2);
>
> cmp edi, ecx
> jge SHORT $LN23@unicode_co@2
> pop edi
> pop esi
> or eax, -1
> pop ebx
>
> ; 10439: }
>
> mov esp, ebp
> pop ebp
> ret 0
> $LN31@unicode_co@2:
>
> ; 10435: return (c1 < c2) ? -1 : 1;
>
> sbb eax, eax
> pop edi
> and eax, -2 ; fffffffeH
> pop esi
> inc eax
> pop ebx
>
> ; 10439: }
>
> mov esp, ebp
> pop ebp
> ret 0
> $LN23@unicode_co@2:
>
> ; 10436: }
> ; 10437:
> ; 10438: return (len1 < len2) ? -1 : (len1 != len2);
>
> xor eax, eax
> cmp edi, ecx
> pop edi
> pop esi
> setne al
> pop ebx
>
> ; 10439: }
>
> mov esp, ebp
> pop ebp
> ret 0
> _unicode_compare ENDP
>
> Neil
--
DaveA
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-03-26 08:51 +1100
Re: Performance of int/long in Python 3 Cousin Stanley <cousinstanley@gmail.com> - 2013-03-25 23:35 +0000
Re: Performance of int/long in Python 3 Dan Stromberg <drsalists@gmail.com> - 2013-03-25 17:12 -0700
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-03-26 17:26 +1100
Re: Performance of int/long in Python 3 Cousin Stanley <cousinstanley@gmail.com> - 2013-03-26 13:38 +0000
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-03-27 01:08 +1100
Re: Performance of int/long in Python 3 Cousin Stanley <cousinstanley@gmail.com> - 2013-03-26 16:41 +0000
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-03-27 03:54 +1100
Re: Performance of int/long in Python 3 Terry Reedy <tjreedy@udel.edu> - 2013-03-26 14:24 -0400
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-03-26 11:50 -0700
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-03-27 06:03 +1100
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-03-26 13:44 -0700
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-26 20:50 +0000
Re: Performance of int/long in Python 3 Grant Edwards <invalid@invalid.invalid> - 2013-03-26 21:08 +0000
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-03-27 08:14 +1100
Re: Performance of int/long in Python 3 Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2013-03-27 12:10 +1300
Re: Performance of int/long in Python 3 Dave Angel <davea@davea.name> - 2013-03-26 19:19 -0400
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-26 21:26 +0000
Re: Performance of int/long in Python 3 Dave Angel <davea@davea.name> - 2013-03-26 17:28 -0400
Re: Performance of int/long in Python 3 Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-03-26 23:14 -0400
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-03-27 13:30 -0700
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-03-27 07:52 +1100
Re: Performance of int/long in Python 3 Ned Deily <nad@acm.org> - 2013-03-26 17:00 -0700
Re: Performance of int/long in Python 3 rurpy@yahoo.com - 2013-03-26 21:31 -0700
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-27 00:20 +0000
Re: Performance of int/long in Python 3 Ned Deily <nad@acm.org> - 2013-03-26 18:31 -0700
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-27 11:51 +0000
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-28 01:47 +0000
flaming vs accuracy [was Re: Performance of int/long in Python 3] Ethan Furman <ethan@stoneleaf.us> - 2013-03-27 20:18 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] rusi <rustompmody@gmail.com> - 2013-03-27 20:49 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-28 05:20 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] rusi <rustompmody@gmail.com> - 2013-03-27 22:42 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-28 07:48 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] rurpy@yahoo.com - 2013-03-28 12:54 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ethan Furman <ethan@stoneleaf.us> - 2013-03-28 13:31 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Grant Edwards <invalid@invalid.invalid> - 2013-03-29 14:52 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ethan Furman <ethan@stoneleaf.us> - 2013-03-29 08:51 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Grant Edwards <invalid@invalid.invalid> - 2013-03-29 16:50 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] rurpy@yahoo.com - 2013-03-29 14:26 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ethan Furman <ethan@stoneleaf.us> - 2013-03-29 16:07 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-31 00:35 -0700
ASCII versus non-ASCII [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-31 08:22 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-31 13:55 +0100
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-03-31 22:33 -0700
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-03-31 23:52 -0600
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-01 16:57 +1100
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-01 08:14 +0000
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-01 08:15 -0400
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-01 06:11 -0700
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-01 17:02 +0000
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-01 17:07 +0000
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-02 04:20 +1100
Re: Performance of int/long in Python 3 MRAB <python@mrabarnett.plus.com> - 2013-04-01 18:53 +0100
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-01 12:15 -0700
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-02 06:28 +1100
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-01 13:28 -0700
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-02 07:35 +1100
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-01 22:38 +0100
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-01 22:43 +0100
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-02 10:43 +1100
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-02 00:24 -0700
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-02 19:03 +1100
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-02 08:35 +0000
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-02 02:24 -0700
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-02 10:43 +0100
Re: Performance of int/long in Python 3 Steve Simmons <square.steve@gmail.com> - 2013-04-02 11:58 +0100
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-02 06:42 -0700
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-02 14:03 +0000
Re: Performance of int/long in Python 3 Steve Simmons <square.steve@gmail.com> - 2013-04-02 15:39 +0100
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-02 16:02 +0100
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-02 08:12 -0700
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-02 16:43 +0100
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-02 10:08 -0700
Re: Performance of int/long in Python 3 Terry Jan Reedy <tjreedy@udel.edu> - 2013-04-02 17:33 -0400
Re: Performance of int/long in Python 3 Joshua Landau <joshua.landau.ws@gmail.com> - 2013-04-02 23:40 +0100
Re: Performance of int/long in Python 3 Ethan Furman <ethan@stoneleaf.us> - 2013-04-02 08:09 -0700
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-02 15:12 +0100
Re: Performance of int/long in Python 3 Steve Simmons <square.steve@gmail.com> - 2013-04-02 16:03 +0100
Re: Performance of int/long in Python 3 Ethan Furman <ethan@stoneleaf.us> - 2013-04-02 08:17 -0700
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-02 09:57 -0700
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-02 11:22 -0700
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-02 11:50 -0700
Re: Performance of int/long in Python 3 Lele Gaifax <lele@metapensiero.it> - 2013-04-03 00:52 +0200
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-02 02:20 -0700
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-02 13:44 -0600
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 14:31 +1100
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-02 20:53 -0700
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 15:03 +1100
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-02 22:11 -0700
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-03 17:22 +1100
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-03 09:28 -0400
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-04 00:38 +1100
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-03 00:10 -0400
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 19:15 +1100
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-03 09:25 -0400
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-04 00:34 +1100
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-03 05:32 +0000
Re: Performance of int/long in Python 3 Terry Jan Reedy <tjreedy@udel.edu> - 2013-04-03 02:19 -0400
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 17:27 +1100
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-03 17:25 +1100
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 17:29 +1100
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-03 17:52 +1100
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-03 01:06 -0600
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-03 18:24 +1100
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 18:37 +1100
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-03 01:07 -0700
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 19:22 +1100
Re: Performance of int/long in Python 3 Dave Angel <davea@davea.name> - 2013-04-03 06:20 -0400
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-03 22:05 +1100
Re: Performance of int/long in Python 3 Dave Angel <davea@davea.name> - 2013-04-03 07:52 -0400
Sorting [was Re: Performance of int/long in Python 3] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-03 14:43 +0000
Re: Sorting [was Re: Performance of int/long in Python 3] Roy Smith <roy@panix.com> - 2013-04-03 11:00 -0400
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-03 10:30 -0600
Re: Performance of int/long in Python 3 Dave Angel <davea@davea.name> - 2013-04-03 13:51 -0400
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-04 09:58 +1100
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-03 07:53 +0000
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-03 19:02 +1100
Re: Performance of int/long in Python 3 jmfauth <wxjmfauth@gmail.com> - 2013-04-03 01:08 -0700
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-03 12:27 +0100
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-03 09:43 -0400
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-04 01:17 +1100
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-03 15:07 +0000
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-04 08:57 +1100
Re: Performance of int/long in Python 3 Serhiy Storchaka <storchaka@gmail.com> - 2013-04-06 12:09 +0300
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-07 07:24 +1000
Re: Performance of int/long in Python 3 Ethan Furman <ethan@stoneleaf.us> - 2013-04-06 14:58 -0700
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-07 01:29 +0000
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-06 19:58 -0600
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-06 22:18 -0400
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-06 23:22 -0600
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-07 08:29 +0000
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-06 20:00 -0600
Re: Performance of int/long in Python 3 Serhiy Storchaka <storchaka@gmail.com> - 2013-04-07 11:02 +0300
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-07 16:14 +0100
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-03 15:02 +0000
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-03 10:38 -0600
Re: Performance of int/long in Python 3 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-03 17:43 +0000
Re: Performance of int/long in Python 3 Chris Angelico <rosuav@gmail.com> - 2013-04-04 08:55 +1100
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-03 23:39 +0100
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-03 20:49 -0400
Re: Performance of int/long in Python 3 rusi <rustompmody@gmail.com> - 2013-04-03 09:10 -0700
Re: Performance of int/long in Python 3 Ethan Furman <ethan@stoneleaf.us> - 2013-04-03 10:09 -0700
Re: Performance of int/long in Python 3 Roy Smith <roy@panix.com> - 2013-04-03 20:46 -0400
Re: Performance of int/long in Python 3 Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-03 10:53 -0600
Re: Performance of int/long in Python 3 Neil Hodgson <nhodgson@iinet.net.au> - 2013-04-02 20:28 +1100
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-03 14:56 +0100
Re: Performance of int/long in Python 3 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-01 20:54 +0100
Re: Performance of int/long in Python 3 roy@panix.com (Roy Smith) - 2013-04-01 16:31 -0400
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-29 00:35 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-28 21:22 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ned Deily <nad@acm.org> - 2013-03-28 13:23 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ethan Furman <ethan@stoneleaf.us> - 2013-03-27 23:12 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 02:03 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ian Foote <ian@feete.org> - 2013-03-28 09:36 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Neil Hodgson <nhodgson@iinet.net.au> - 2013-03-28 23:11 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-28 13:01 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 07:12 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 01:38 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 08:14 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 02:21 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 08:45 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Terry Reedy <tjreedy@udel.edu> - 2013-03-28 12:01 -0400
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ian Kelly <ian.g.kelly@gmail.com> - 2013-03-28 10:11 -0600
Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-29 00:39 +0000
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Chris Angelico <rosuav@gmail.com> - 2013-03-29 11:54 +1100
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-29 02:37 +0000
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Chris Angelico <rosuav@gmail.com> - 2013-03-29 13:44 +1100
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Ian Kelly <ian.g.kelly@gmail.com> - 2013-03-29 00:11 -0600
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Ian Kelly <ian.g.kelly@gmail.com> - 2013-03-29 00:22 -0600
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Terry Reedy <tjreedy@udel.edu> - 2013-03-29 14:06 -0400
Re: Surrogate pairs in new flexible string representation Christian Heimes <christian@python.org> - 2013-03-29 23:05 +0100
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-29 01:03 +0000
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Chris Angelico <rosuav@gmail.com> - 2013-03-29 12:10 +1100
Re: Surrogate pairs in new flexible string representation [was Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] MRAB <python@mrabarnett.plus.com> - 2013-03-29 02:00 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 03:16 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ian Kelly <ian.g.kelly@gmail.com> - 2013-03-28 10:01 -0600
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Neil Hodgson <nhodgson@iinet.net.au> - 2013-03-29 14:34 +1100
unicode and the FSR [was: Re: flaming vs accuracy [was Re: Performance of int/long in Python 3]] Ethan Furman <ethan@stoneleaf.us> - 2013-03-28 21:56 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 16:33 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Neil Hodgson <nhodgson@iinet.net.au> - 2013-03-29 16:46 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] MRAB <python@mrabarnett.plus.com> - 2013-03-28 14:51 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Neil Hodgson <nhodgson@iinet.net.au> - 2013-03-29 14:57 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 02:07 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2013-03-28 09:47 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-28 21:30 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 06:34 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Ian Kelly <ian.g.kelly@gmail.com> - 2013-03-28 10:33 -0600
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 09:55 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 04:13 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 10:48 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 04:55 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 13:26 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 08:45 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Terry Reedy <tjreedy@udel.edu> - 2013-03-28 19:12 -0400
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Benjamin Kaplan <benjamin.kaplan@case.edu> - 2013-03-28 13:29 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 14:11 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] jmfauth <wxjmfauth@gmail.com> - 2013-03-28 14:33 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] MRAB <python@mrabarnett.plus.com> - 2013-03-28 21:50 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Benjamin Kaplan <benjamin.kaplan@case.edu> - 2013-03-28 14:52 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-03-28 19:53 -0400
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-29 11:03 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-29 00:15 +0000
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Chris Angelico <rosuav@gmail.com> - 2013-03-28 14:40 +1100
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] 88888 Dihedral <dihedral88888@googlemail.com> - 2013-03-28 16:04 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] 88888 Dihedral <dihedral88888@googlemail.com> - 2013-03-28 16:04 -0700
Re: flaming vs accuracy [was Re: Performance of int/long in Python 3] Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-28 12:39 +0000
csiph-web