{ "info": { "author": "Robert A. McLeod", "author_email": "robbmcleod@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication", "Operating System :: Microsoft :: Windows", "Operating System :: Unix", "Programming Language :: Python", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Hardware" ], "description": "cpufeature\n==========\n\nPrototype of replacement for `cpuinfo.py` for high-performance Python modules. \nDetects CPU features such as: \n\n* SIMD instruction support\n* Number of cores (both virtual and physical)\n* Cache sizes\n\nIt is fast, with an import+execution time of ~1 ms\n\nIt is written in C99. It supports Windows with MSVC and Linux with GCC/LLVM \ncompilers. MacOSX should also work with GCC/LLVM but has not been tested.\n\nIt is licensed under Creative Commons Zero, so it may be freely incorporated \nas a submodule into your own projects.\n\nIt needs to be tested on a variety of machines.\n\nExample\n-------\n\nThe module generates a `dict` called `CPUFeature` on import which contains \nuseful information regarding optimization and compilation for the host. \nFor my Intel i7-7820X Skylake CPU, it generates the following info:\n\n > python -c \"import cpufeature; cpufeature.print_features()\"\n === CPU FEATURES ===\n VendorId : GenuineIntel\n num_virtual_cores : 16\n num_physical_cores : 8\n num_threads_per_core : 2\n cache_line_size : 64\n cache_L1_size : 32768\n cache_L2_size : 1048576\n cache_L3_size : 11534336\n OS_x64 : True\n OS_AVX : True\n OS_AVX512 : False\n MMX : True\n x64 : True\n ABM : True\n RDRAND : True\n BMI1 : True\n BMI2 : True\n ADX : True\n PREFETCHWT1 : False\n MPX : True\n SSE : True\n SSE2 : True\n SSE3 : True\n SSSE3 : True\n SSE4.1 : True\n SSE4.2 : True\n SSE4.a : False\n AES : True\n SHA : False\n AVX : True\n XOP : False\n FMA3 : True\n FMA4 : False\n AVX2 : True\n AVX512f : True\n AVX512pf : False\n AVX512er : False\n AVX512cd : True\n AVX512vl : True\n AVX512bw : True\n AVX512dq : True\n AVX512ifma : False\n AVX512vbmi : False\n\n\nNotes on Fields\n---------------\n\n* If `num_threads_per_core > 1` likely Intel Hyperthreading (or equivalent \n architecture) is present. The physical core count may be unreliable in \n virtual environments.\n* Cache sizes are in bytes.\n* For AVX2, check `AVX2` and `OS_AVX2`.\n* For AVX512, check `AVX512f` and `OS_AVX512`. Python support for AVX512 \n instructions is highly limited outside of compilation with ICC. MSVC does not \n have AVX512 support until MSVC2017.\n\n\nAuthors\n-------\n\n* Based on FeatureDetector by Alexander Yee (https://github.com/Mysticial/FeatureDetector).\n* Ported to Python by Robert A. McLeod, who added detection of cores, and cache \n sizes.\n\nRelease Notes\n-------------\n\n**0.1.0**\n\n* Added detection of processors, cores, and cache sizes\n* Created Python wrapper around FeatureDetector\n* Reduced FeatureDetector to C99 for better cross-platform compatibility\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/robbmcleod/cpufeature", "keywords": "", "license": "https://creativecommons.org/publicdomain/zero/1.0/legalcode", "maintainer": "", "maintainer_email": "", "name": "cpufeature", "package_url": "https://pypi.org/project/cpufeature/", "platform": "any", "project_url": "https://pypi.org/project/cpufeature/", "project_urls": { "Homepage": "http://github.com/robbmcleod/cpufeature" }, "release_url": "https://pypi.org/project/cpufeature/0.1.0/", "requires_dist": null, "requires_python": "", "summary": "Python CPU Feature Detection", "version": "0.1.0" }, "last_serial": 3517852, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "278a89cfcaa8ef49bb6874f28755709c", "sha256": "d8eba4807020a81dadc89af87729dc594487714dffd2c9e94a474bcf05a2afbf" }, "downloads": -1, "filename": "cpufeature-0.1.0-cp36-cp36m-win_amd64.whl", "has_sig": false, "md5_digest": "278a89cfcaa8ef49bb6874f28755709c", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 14487, "upload_time": "2018-01-24T17:26:28", "url": "https://files.pythonhosted.org/packages/0f/85/3e37797661785e40daad73f2a2e0fa120413cc61725d7dcd44e857e47ecb/cpufeature-0.1.0-cp36-cp36m-win_amd64.whl" }, { "comment_text": "", "digests": { "md5": "cf13c306140e13468e7b6b3b97794eeb", "sha256": "27333d62d0b715130d1790828a4041ea1beba350839284b61c01eff73086b4a9" }, "downloads": -1, "filename": "cpufeature-0.1.0.tar.gz", "has_sig": false, "md5_digest": "cf13c306140e13468e7b6b3b97794eeb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11584, "upload_time": "2018-01-24T17:26:25", "url": "https://files.pythonhosted.org/packages/06/c8/fbd68f2a6dd70abad8e05fc5b0a062e3aaa9d00cc3d00b16818df0d5e087/cpufeature-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "278a89cfcaa8ef49bb6874f28755709c", "sha256": "d8eba4807020a81dadc89af87729dc594487714dffd2c9e94a474bcf05a2afbf" }, "downloads": -1, "filename": "cpufeature-0.1.0-cp36-cp36m-win_amd64.whl", "has_sig": false, "md5_digest": "278a89cfcaa8ef49bb6874f28755709c", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 14487, "upload_time": "2018-01-24T17:26:28", "url": "https://files.pythonhosted.org/packages/0f/85/3e37797661785e40daad73f2a2e0fa120413cc61725d7dcd44e857e47ecb/cpufeature-0.1.0-cp36-cp36m-win_amd64.whl" }, { "comment_text": "", "digests": { "md5": "cf13c306140e13468e7b6b3b97794eeb", "sha256": "27333d62d0b715130d1790828a4041ea1beba350839284b61c01eff73086b4a9" }, "downloads": -1, "filename": "cpufeature-0.1.0.tar.gz", "has_sig": false, "md5_digest": "cf13c306140e13468e7b6b3b97794eeb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11584, "upload_time": "2018-01-24T17:26:25", "url": "https://files.pythonhosted.org/packages/06/c8/fbd68f2a6dd70abad8e05fc5b0a062e3aaa9d00cc3d00b16818df0d5e087/cpufeature-0.1.0.tar.gz" } ] }