Nathaniel Smith added the comment:

High-level questions:

- How do you anticipate the integers naming domains will be allocated? Is it 
like port numbers, and you'll maintain a registry somewhere ("domains 0-100 are 
reserved for the interpreter, pycuda has reserved 100-110, ...")?

- You have it configurable at run-time whether the domain gets included in the 
trace key, and if this is set to false (the default) then all the different 
domains just get collapsed together. How is some downstream user like pycuda 
expected to get sensible behavior out of this? Is the idea that pycuda should 
be guarding all trace/untrace calls with if (use_domain) { ... }, or...?

(I guess it could be sensible to support disabling domain stuff -- though if I 
were writing it I probably wouldn't bother just because it increases the number 
of configurations that need to be tested etc. -- but if you're doing this then 
IMO it should discard all trace/untrace calls that refer to non-default 
domains, i.e. domain=False shouldn't mean "discard domain information", it 
should mean "trace only the heap domain".)

- Is all this messing about with possibly-unaligned pointers etc. really easier 
than having one-hashtable-per-domain? You could easily get away with a linearly 
scanned array, even...

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue26588>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to