Hi all,

As a result of some limitations with the Python WMI module,
specifically performance and lack of support for Nano Server, here’s an
alternative replacement that uses the newer Windows Management
Infrastructure (MI) API in place of the slower COM interface
used by WMI.py (https://pypi.python.org/pypi/WMI):

https://github.com/cloudbase/PyMI/tree/master/PyMI

Pre-compiled wheels are available on Pypi:
https://pypi.python.org/pypi/PyMI

The package includes a native "mi" extension, providing a wrapper over the
MI API and a "wmi" module which in turn wraps the lower level interface with an
interface meant to be compatible with https://pypi.python.org/pypi/WMI.

Benchmarks show rough execution speed improvements ranging from 50% on method
calls to 500% and more on loops over query results.

Early tests by just swapping the old WMI module with PyMI (without changes in
the code) on the OpenStack Hyper-V Nova driver show a 50% performance 
improvement
under heavy load.

Supports Python 2.7 and 3.x on any x86 or x64 Windows version with the MI API,
starting with Windows 7 (SP1) and Windows Server 2008 (SP2), including
also Nano Server 2016.

It does not use or require pywin32, making it much very easy to
distribute.

All basic features are already available on the current pre release, with
events and async API support on the roadmap.

WMI.py compatibility is currently limited to the features required by our
target projects (e.g. OpenStack). A full test suite is planned to ensure
increased compatibily and check for regressions.


Thanks!

Alessandro Pilotti
Cloudbase Solutions
_______________________________________________
python-win32 mailing list
python-win32@python.org
https://mail.python.org/mailman/listinfo/python-win32

Reply via email to