{ "info": { "author": "Aleksandr Drozd, Mateusz Bysiek", "author_email": "mateusz.bysiek@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", "Topic :: Education", "Topic :: Scientific/Engineering", "Topic :: Utilities" ], "description": ".. role:: bash(code)\n :language: bash\n\n.. role:: python(code)\n :language: python\n\n\n============\nsystem_query\n============\n\n.. image:: https://img.shields.io/pypi/v/system-query.svg\n :target: https://pypi.org/project/system-query\n :alt: package version from PyPI\n\n.. image:: https://travis-ci.org/mbdevpl/system-query.svg?branch=master\n :target: https://travis-ci.org/mbdevpl/system-query\n :alt: build status from Travis CI\n\n.. image:: https://ci.appveyor.com/api/projects/status/github/mbdevpl/system-query?branch=master&svg=true\n :target: https://ci.appveyor.com/project/mbdevpl/system-query\n :alt: build status from AppVeyor\n\n.. image:: https://api.codacy.com/project/badge/Grade/b44e2fc42fcd4301bcd0fb11938a89da\n :target: https://www.codacy.com/app/mbdevpl/system-query\n :alt: grade from Codacy\n\n.. image:: https://codecov.io/gh/mbdevpl/system-query/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/mbdevpl/system-query\n :alt: test coverage from Codecov\n\n.. image:: https://img.shields.io/github/license/mbdevpl/system-query.svg\n :target: https://github.com/mbdevpl/system-query/blob/master/NOTICE\n :alt: license\n\nComprehensive and concise system information tool.\n\nThe goal is to gather all relevant:\n\n* hardware information (processors, accelerators, memory, networks, drives)\n* static operating system information (name, version, hostname)\n* runtime information (environment, libraries, system load, etc.)\n\nand provide them in a concise form that's both machine- and human-readable.\n\nAnother important goal is to also be fail-safe, even with unexpected hardware configurations,\nlow-level tool errors and deal with incomplete information.\n\nYou can use *system-query* as a library and as a command-line tool.\n\n.. contents::\n :backlinks: none\n\n\nMotiviation\n===========\n\nWhere am I running?\n-------------------\n\nOne of the main motivations for creating *system-query* is to assist with answering the question\n\"what is the actual hardware and software configuration of the system I'm using?\"\nregardless of the official specification.\n\n\nHow to rerun this experiment?\n-----------------------------\n\nThe *system-query* was also created to assist with the computational experiment reproducibility\nand verification of results. Only if you know exactly where you ran your experiment,\nyou can reason about its results and be able to reproduce them.\n\n\nUsing\n=====\n\nInstalling *system-query* doesn't enable all the features by default. Some of the query functions\nwill work only on **some** systems. To attempt installation with all features enables,\nrun :bash:`pip3 install system-query[all]`. If something brakes, you can narrow down the features\nby typing a feature scope instead of :bash:`all`.\nYou can choose from :bash:`cpu`, :bash:`gpu`, :bash:`hdd`, :bash:`ram` and :bash:`swap`.\nE.g. :bash:`pip3 install system-query[gpu]`.\n\n\nAs library\n----------\n\n.. code:: python\n\n In [1]: from system_query import query_cpu\n query_cpu()\n\n Out[1]: {'brand': 'Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz',\n 'clock': 1771.0370000000003,\n 'clock_max': 3900.0,\n 'clock_min': 1600.0,\n 'logical_cores': 8,\n 'physical_cores': 4}\n\nMore examples in `examples.ipynb `_.\n\n\nsystem_query.query_all()\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nThis will launch all below functions and assemble results into a dictionary.\n\n\nsystem_query.query_cpu()\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nTo be able to see details like clock speed and core counts, install Python package :bash:`psutil`.\n\n\nsystem_query.query_gpu()\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nTo be able to see GPUs in the system, make sure you have CUDA installed\nand install Python package :bash:`pycuda`.\n\n\nsystem_query.query_hdd()\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nTo be able to see HDDs in the system, make sure you have libudev installed\nand install Python package :bash:`pyudev`.\n\n\nsystem_query.query_ram()\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nTo be able to see amount of memory, install Python package :bash:`psutil`.\n\n\nsystem_query.query_software()\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nThis will attempt to gather version information of various common programs,\nassuming their executables are in system path.\n\n\nsystem_query.query_swap()\n~~~~~~~~~~~~~~~~~~~~~~~~~\n\nTo be able to see amount of swap space, install Python package :bash:`psutil`.\n\n\nAs command-line tool\n--------------------\n\nFor example:\n\n.. code:: bash\n\n $ python3 -m system_query\n {'cpu': {'brand': 'Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz',\n 'clock': 1725.031125,\n 'clock_max': 3900.0,\n 'clock_min': 1600.0,\n 'logical_cores': 8,\n 'physical_cores': 4},\n 'gpus': [],\n 'host': 'TestMachine',\n 'os': 'Linux-4.4.0-109-generic-x86_64-with-debian-stretch-sid',\n 'ram': {'total': 33701269504},\n 'swap': 0}\n\nUsage information:\n\n.. code::\n\n $ python3 -m system_query -h\n usage: system_query [-h] [-s {all,cpu,gpu,ram}] [-f {raw,json}] [-t TARGET]\n [--version]\n\n Comprehensive and concise system information tool. Query a given hardware\n and/or softawre scope of your system and get results in human- and machine-\n readable formats.\n\n optional arguments:\n -h, --help show this help message and exit\n -s {all,cpu,gpu,ram}, --scope {all,cpu,gpu,ram}\n Scope of the query (default: all)\n -f {raw,json}, --format {raw,json}\n Format of the results of the query. (default: raw)\n -t TARGET, --target TARGET\n File path where to write the results of the query.\n Special values: \"stdout\" and \"stderr\" to write to\n stdout and stderr, respectively. (default: stdout)\n --version show program's version number and exit\n\n Copyright 2017-2019 by the contributors, Apache License 2.0,\n https://github.com/mbdevpl/system-query\n\n\nRequirements\n============\n\nPython version 3.5 or later.\n\nPython libraries as specified in `requirements.txt `_.\nRecommended (but optional) packages are listed in `optional_requirements.txt `_.\n\nBuilding and running tests additionally requires packages listed in `test_requirements.txt `_.\n\nTested on Linux, OS X and Windows.\n\nAdditionally, for all features to work you should have the following libraries\ninstalled in your system:\n\n* CUDA\n* libudev\n\n\nContributors\n============\n\nAleksandr Drozd\n\nMateusz Bysiek\n\nFor licensing information, please see `LICENSE `_ and `NOTICE `_.\n\n\n", "description_content_type": "text/x-rst; charset=UTF-8", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mbdevpl/system-query", "keywords": "system,software,hardware", "license": "Apache License 2.0", "maintainer": "Mateusz Bysiek", "maintainer_email": "mateusz.bysiek@gmail.com", "name": "system-query", "package_url": "https://pypi.org/project/system-query/", "platform": "", "project_url": "https://pypi.org/project/system-query/", "project_urls": { "Homepage": "https://github.com/mbdevpl/system-query" }, "release_url": "https://pypi.org/project/system-query/0.2.6/", "requires_dist": [ "version-query", "psutil ; extra == 'all'", "py-cpuinfo ; extra == 'all'", "pycuda ; extra == 'all'", "pyudev ; extra == 'all'", "psutil ; extra == 'cpu'", "py-cpuinfo ; extra == 'cpu'", "pycuda ; extra == 'gpu'", "pyudev ; extra == 'hdd'", "psutil ; extra == 'ram'", "psutil ; extra == 'swap'" ], "requires_python": ">=3.5", "summary": "comprehensive and concise system information querying tool", "version": "0.2.6" }, "last_serial": 5394521, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "1ae230f81c76a9dde14a93f33270cb4d", "sha256": "d53d5a66ec5e82f7763a9084cc8e2c5e1284a130f3755b6c4630fd3e82bb72c3" }, "downloads": -1, "filename": "system_query-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "1ae230f81c76a9dde14a93f33270cb4d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12600, "upload_time": "2018-02-03T08:08:35", "url": "https://files.pythonhosted.org/packages/c1/74/dfc7cc4da5820b18a74ea6c9e7b981c3f9c81a1a42ab35fae5de998b23eb/system_query-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "128dee35bc0a466204e0b62740ea5b8c", "sha256": "e80e0c8611f6710118c08f8b423935ef7e1003270370d8583c2733ecc06fd78a" }, "downloads": -1, "filename": "system-query-0.1.0.tar.gz", "has_sig": false, "md5_digest": "128dee35bc0a466204e0b62740ea5b8c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 16848, "upload_time": "2018-02-03T08:08:36", "url": "https://files.pythonhosted.org/packages/5e/93/d41f3e99313e1b70f0e6c65e27144737027a8698d0684970430d473ed234/system-query-0.1.0.tar.gz" } ], "0.1.0.dev0": [ { "comment_text": "", "digests": { "md5": "4449789a2dfa3fadcae1fe00cd126432", "sha256": "64c5c753b570667e45a85442ae8b771b3e154374c44600dca2f31e8a4dac7b22" }, "downloads": -1, "filename": "system_query-0.1.0.dev0-py3-none-any.whl", "has_sig": false, "md5_digest": "4449789a2dfa3fadcae1fe00cd126432", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10526, "upload_time": "2017-05-25T03:42:59", "url": "https://files.pythonhosted.org/packages/75/c6/fbf684d0f7953430a3075f8a2928527148c20ac9fba6e3ec1df758412388/system_query-0.1.0.dev0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "31bbe7daa49ad1400a738e68b422ed69", "sha256": "f100b2a800db6896651adbb0fefb809afe69d216d563a53e0930db84e110f98a" }, "downloads": -1, "filename": "system-query-0.1.0.dev0.tar.gz", "has_sig": false, "md5_digest": "31bbe7daa49ad1400a738e68b422ed69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7293, "upload_time": "2017-05-25T03:43:58", "url": "https://files.pythonhosted.org/packages/08/29/697f84d85fc5454b98bf2d05d6132d56cb76b971e7fbd8f96bd124eb555d/system-query-0.1.0.dev0.tar.gz" } ], "0.1.0.dev1": [ { "comment_text": "", "digests": { "md5": "bce61319c88105b2e373884708454b9a", "sha256": "d8d446d5fa44a00c6deecb137d6b51c0b321eb64d8db9f625a163741a05f2265" }, "downloads": -1, "filename": "system_query-0.1.0.dev1-py3-none-any.whl", "has_sig": false, "md5_digest": "bce61319c88105b2e373884708454b9a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11899, "upload_time": "2017-08-08T02:20:40", "url": "https://files.pythonhosted.org/packages/f4/2e/6236d6c60045d24de1fa3a573b4c48da1e72b3bc9eeb29486cc271f6d453/system_query-0.1.0.dev1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "688847385b0b930a55d10dd08c09f763", "sha256": "c8f6f529abb1c120c051571e983975cff19d923ee5daf8dbab8bcec407f5d451" }, "downloads": -1, "filename": "system-query-0.1.0.dev1.tar.gz", "has_sig": false, "md5_digest": "688847385b0b930a55d10dd08c09f763", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8577, "upload_time": "2017-08-08T02:20:17", "url": "https://files.pythonhosted.org/packages/94/b6/c8f685a8752621aff06010fe22f83d9f62fd76989f1195052b3e60eed29f/system-query-0.1.0.dev1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "f77476c8720eaada3f6e66ea964d02ab", "sha256": "4e7ee8bd14af2037f1921bf7cda4458b214685be843cfa77e114a3deb13c7cc1" }, "downloads": -1, "filename": "system_query-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "f77476c8720eaada3f6e66ea964d02ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 10711, "upload_time": "2018-07-20T08:47:19", "url": "https://files.pythonhosted.org/packages/f1/f2/a11775b0ae6257a6d0c6699cfa340d7621f75f62bbede919c83ec871cea5/system_query-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1ad1688e60249a69b61917a427ef6667", "sha256": "a13a22598a9eedf71adfe08389c9f244146c33ea8c9bde5691f9bc6d3e9bd1fc" }, "downloads": -1, "filename": "system-query-0.2.0.tar.gz", "has_sig": false, "md5_digest": "1ad1688e60249a69b61917a427ef6667", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 19167, "upload_time": "2018-07-20T08:47:20", "url": "https://files.pythonhosted.org/packages/d8/06/f08de04b7deadeac1797bf4a96fa0ae5fb6f57ead7bd5dea0bcaf438778d/system-query-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "a126e5591d4f373b4e46a410cfa8ee18", "sha256": "dc3261149cf6e7279b77a2c20051e1ad53d23d692a2ae174f6e9689756971d2c" }, "downloads": -1, "filename": "system_query-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a126e5591d4f373b4e46a410cfa8ee18", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 16696, "upload_time": "2019-02-12T03:24:03", "url": "https://files.pythonhosted.org/packages/1c/f9/05d0b3b4bb20dc0707970b5cdba107fa8092667fcc0e1a9f570e8477f094/system_query-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ae5959db77b4855777093f8ea7b563f7", "sha256": "4c1ddab58cc03d94a4115ba604f724304ea57e8f939cb7168f186520722f7d32" }, "downloads": -1, "filename": "system-query-0.2.1.tar.gz", "has_sig": false, "md5_digest": "ae5959db77b4855777093f8ea7b563f7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 22194, "upload_time": "2019-02-12T03:24:05", "url": "https://files.pythonhosted.org/packages/3f/9c/679e6234efd04225b21661b82dfb065fa57b7ac6652cc737b2a4abbd2f93/system-query-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "701b4256aca089110d86d13324216ed7", "sha256": "34ec67c324db50d32fad01f2c1bacaf8fddbcd7ef49c7700e06a7f7c10d48d37" }, "downloads": -1, "filename": "system_query-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "701b4256aca089110d86d13324216ed7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 17184, "upload_time": "2019-05-18T10:18:44", "url": "https://files.pythonhosted.org/packages/fb/41/740c889928d17efa5048b8f85bc7c5b0184a3921345d284422f6bf54cff2/system_query-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b45cf3eb24e0a7e4b549a0adb91f7c0a", "sha256": "b9b39a55eb67e56dbb9ca2d154bd9fb6a78525e164d5fde08a629a020da0bfea" }, "downloads": -1, "filename": "system-query-0.2.2.tar.gz", "has_sig": false, "md5_digest": "b45cf3eb24e0a7e4b549a0adb91f7c0a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 20704, "upload_time": "2019-05-18T10:18:46", "url": "https://files.pythonhosted.org/packages/59/99/295da6d9c55a8abd590225e2be0d1f50e148a1468a9ac78cb872395babd0/system-query-0.2.2.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "e910e61e951ac6fba1cfb18f2b0eaa7b", "sha256": "8d7efdff1410d420b35b1ce68f5bacb420888d97a3e81940bd9db4a82f2c398a" }, "downloads": -1, "filename": "system_query-0.2.4-py3-none-any.whl", "has_sig": false, "md5_digest": "e910e61e951ac6fba1cfb18f2b0eaa7b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 18138, "upload_time": "2019-05-28T15:09:55", "url": "https://files.pythonhosted.org/packages/2a/cd/566ed1560efbca0b3350eb41fe9ed33b11c963d76683cafdc32dd1ab179c/system_query-0.2.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8919666e0f8ca6bbb763242eaf766ac", "sha256": "994ceb09408bf9eb1a4a8b0c4a007146499638437fc6fa735026811a9a2f606d" }, "downloads": -1, "filename": "system-query-0.2.4.tar.gz", "has_sig": false, "md5_digest": "e8919666e0f8ca6bbb763242eaf766ac", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 21631, "upload_time": "2019-05-28T15:09:57", "url": "https://files.pythonhosted.org/packages/04/98/946af955e5b63830c25014604b63ccd78355ce3bdc54635f96e63f67373b/system-query-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "a455fc98fe332bc14a20d0e3de9d3b36", "sha256": "339f2f6f1600acf24c4958b4b771356845f5192dd8e62401e459036111664f76" }, "downloads": -1, "filename": "system_query-0.2.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a455fc98fe332bc14a20d0e3de9d3b36", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 18169, "upload_time": "2019-06-13T02:15:29", "url": "https://files.pythonhosted.org/packages/b2/d1/e15ec8e2bb47ae391b34aee66b381f48ee79f080fd3a1bc773bfd3e767a8/system_query-0.2.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "38342895ec51595670e4dd2297eedec6", "sha256": "081d711314130a08b1436fcdadcea0b4b033fcd3d1bf452cc9d6c41599d5a9ab" }, "downloads": -1, "filename": "system-query-0.2.5.tar.gz", "has_sig": false, "md5_digest": "38342895ec51595670e4dd2297eedec6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 23478, "upload_time": "2019-06-13T02:15:31", "url": "https://files.pythonhosted.org/packages/10/f2/f76426a6ddfa226b794b71540c053f16fd1d8b76885b515025f3047c6695/system-query-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "f63fb43fa77a4f1afb8912e85a393348", "sha256": "ee6090d14c469fffd7baaa90874497a8c985b3364634486a29bb4ba108809ce8" }, "downloads": -1, "filename": "system_query-0.2.6-py3-none-any.whl", "has_sig": false, "md5_digest": "f63fb43fa77a4f1afb8912e85a393348", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 18349, "upload_time": "2019-06-13T06:48:19", "url": "https://files.pythonhosted.org/packages/c7/7e/f8bc2c0567e350a51d270153a6b30e876f2e6d09361ad7f01be5564b29c4/system_query-0.2.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b7ae660f7e025d322c5e0cfedbe206a7", "sha256": "3cbdad7bfc8a843e63eba19b5307c33d4efcd7c9a29fe33ce170185a76f1788d" }, "downloads": -1, "filename": "system-query-0.2.6.tar.gz", "has_sig": false, "md5_digest": "b7ae660f7e025d322c5e0cfedbe206a7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 23851, "upload_time": "2019-06-13T06:48:20", "url": "https://files.pythonhosted.org/packages/d6/3a/ef1e18d56c63c6f113ee36f64ac84836e6b42fc994beca059fe0b114cde6/system-query-0.2.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f63fb43fa77a4f1afb8912e85a393348", "sha256": "ee6090d14c469fffd7baaa90874497a8c985b3364634486a29bb4ba108809ce8" }, "downloads": -1, "filename": "system_query-0.2.6-py3-none-any.whl", "has_sig": false, "md5_digest": "f63fb43fa77a4f1afb8912e85a393348", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 18349, "upload_time": "2019-06-13T06:48:19", "url": "https://files.pythonhosted.org/packages/c7/7e/f8bc2c0567e350a51d270153a6b30e876f2e6d09361ad7f01be5564b29c4/system_query-0.2.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b7ae660f7e025d322c5e0cfedbe206a7", "sha256": "3cbdad7bfc8a843e63eba19b5307c33d4efcd7c9a29fe33ce170185a76f1788d" }, "downloads": -1, "filename": "system-query-0.2.6.tar.gz", "has_sig": false, "md5_digest": "b7ae660f7e025d322c5e0cfedbe206a7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 23851, "upload_time": "2019-06-13T06:48:20", "url": "https://files.pythonhosted.org/packages/d6/3a/ef1e18d56c63c6f113ee36f64ac84836e6b42fc994beca059fe0b114cde6/system-query-0.2.6.tar.gz" } ] }