On 23 Aug, 2013, at 5:17, Nick Coghlan <ncogh...@gmail.com> wrote: > > That said, I'm considering the idea of adding a "variant" field to the > compatibility tags for wheel 1.1, along the lines of what Oscar > Benjamin suggested earlier. By default, installers would only find > wheels without a variant defined, but users could opt in to looking > for particular variants. The meaning of the variants field would be > entirely distribution specific. Numpy, for example, could publish: > > numpy-1.7.1-cp27-cp22m-win32.whl > numpy-1.7.1-cp27-cp22m-win32-sse.whl > numpy-1.7.1-cp27-cp22m-win32-sse2.whl > numpy-1.7.1-cp27-cp22m-win32-sse3.whl > > The only restrictions on the variant tags would be: > 1. must be ASCII > 2. must not contain '.' or '-' characters > > You could even go to the extent of using hashes as variant tags.
Is adding variants necessary? Numpy use runtime selection for picking the most appropriate extension code (heck, AFAIK recent versions of GCC can even compile multiple variants of functions and pick the right one automaticly). A variant field like this introduces a new failure mode: uses that install packages on one machine and then copy the entire tree to another one where the software crashes hard because the other machine is older and doesn't support some CPU features. That said, I have no experience with directly using SSE as most of my code either doesn't vector calculations or isn't anywhere close to the performance limitations of using naive code (CPU's are too fast ;-) Regards, Ronald _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org http://mail.python.org/mailman/listinfo/distutils-sig