¿Por qué el hilo de Python consume tanta memoria?

¿Por qué el hilo de Python consume tanta memoria?

Medí que generar un subproceso consume 8 megas de memoria, casi tan grande como un proceso de Python completamente nuevo!

OS: Ubuntu 10.10

Edit: debido a la demanda popular, daré algunos ejemplos extraños, aquí está:

from os import getpid
from time import sleep
from threading import Thread

def nap():
    print 'sleeping child'
    sleep(999999999)

print getpid()
child_thread = Thread(target=nap)
sleep(999999999)

En mi caja, pmap pid dará 9424K

Ahora, ejecutemos el hilo secundario:

from os import getpid
from time import sleep
from threading import Thread

def nap():
    print 'sleeping child'
    sleep(999999999)

print getpid()
child_thread = Thread(target=nap)
child_thread.start()             # <--- ADDED THIS LINE
sleep(999999999)

Ahora pmap pid dará 17620K

Entonces, el costo del hilo adicional es 17620K - 9424K = 8196K

es decir. ¡El 87% de ejecutar un proceso completamente nuevo por separado!

Ahora, ¿no es eso justo, equivocado?

Respuestas a la pregunta(1)

Su respuesta a la pregunta