[Python-Dev] SIGCHECK() in longobject.c (original) (raw)
Mark Dickinson dickinsm at gmail.com
Mon Oct 19 11:28:34 CEST 2009
- Previous message: [Python-Dev] SIGCHECK() in longobject.c
- Next message: [Python-Dev] SIGCHECK() in longobject.c
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Sun, Oct 18, 2009 at 11:46 PM, Antoine Pitrou <solipsis at pitrou.net> wrote:
Sure, but it's no different than doing, e.g.: list(range(100000000)).sort()
(don't try this, it just made by computer slow down to a crawl and I had to kill -9 the Python interpreter)
Maybe you were running out of RAM? On a 64-bit machine, list(range(10**8)) takes over 3 Gb.
For me, x = list(range(10**8)) takes around 6 seconds, and then x.sort() takes around 2 seconds. This is on a machine with 16 Gb of RAM. (Though I do seem to recall that timsort is extra fast for already sorted lists: O(n) rather than O(n log n)?)
So I'd say that it is different. A million digit integer takes less than half a megabyte of RAM, so a single operation can be horribly slow long before memory limitations are reached.
I'd prefer to keep the SIGCHECK unless there's a really compelling advantage to getting rid of it.
Mark
- Previous message: [Python-Dev] SIGCHECK() in longobject.c
- Next message: [Python-Dev] SIGCHECK() in longobject.c
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]