Re:Progress on the Gilectomy
by srean on Friday June 02, 2017 @06:54AM
(#14468973)
The problem is the overhead of memory copy.
Linux is somewhat smart about it with its copy on write semantics (a double edged sword really). However, the moment you refer to an existing Python object the underlying data-structure gets mutated because of reference counting and boom now you have to copy the whole thing.
This can be worked around with creative stealing and by keeping a sharp lookout for references but it gets really painful and annoying.
Even if that were resolved its still not as flexible as one would want. One cant really go about spawning and terminating process too frequently. This forces one to move larger and larger parts of the logic into C.
Linux is somewhat smart about it with its copy on write semantics (a double edged sword really). However, the moment you refer to an existing Python object the underlying data-structure gets mutated because of reference counting and boom now you have to copy the whole thing.
This can be worked around with creative stealing and by keeping a sharp lookout for references but it gets really painful and annoying.
Even if that were resolved its still not as flexible as one would want. One cant really go about spawning and terminating process too frequently. This forces one to move larger and larger parts of the logic into C.