{"id":18284010,"url":"https://github.com/steinwurf/cpuid","last_synced_at":"2025-04-05T06:09:55.705Z","repository":{"id":11838664,"uuid":"14395027","full_name":"steinwurf/cpuid","owner":"steinwurf","description":"C++ library for detecting CPU capabilities","archived":false,"fork":false,"pushed_at":"2025-02-11T00:11:29.000Z","size":2349,"stargazers_count":115,"open_issues_count":2,"forks_count":21,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-03-29T05:08:08.094Z","etag":null,"topics":["cpuid","cpuinfo"],"latest_commit_sha":null,"homepage":"https://cpuid.steinwurf.com","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/steinwurf.png","metadata":{"files":{"readme":"README.rst","changelog":"NEWS.rst","contributing":null,"funding":null,"license":"LICENSE.rst","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-11-14T13:01:23.000Z","updated_at":"2025-03-20T01:04:36.000Z","dependencies_parsed_at":"2025-03-14T06:11:09.888Z","dependency_job_id":"6b55161d-46dc-4456-9444-7b1eb23296f3","html_url":"https://github.com/steinwurf/cpuid","commit_stats":null,"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steinwurf%2Fcpuid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steinwurf%2Fcpuid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steinwurf%2Fcpuid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steinwurf%2Fcpuid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/steinwurf","download_url":"https://codeload.github.com/steinwurf/cpuid/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247294541,"owners_count":20915340,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpuid","cpuinfo"],"created_at":"2024-11-05T13:11:50.676Z","updated_at":"2025-04-05T06:09:55.678Z","avatar_url":"https://github.com/steinwurf.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\ncpuid\n*****\n\n|Linux make-specs| |Windows make-specs| |MacOS make-specs| |Linux CMake| |Windows CMake| |MacOS CMake| |Raspberry Pi| |Valgrind| |No Assertions| |Clang Format| |Cppcheck|\n\n.. |Linux make-specs| image:: https://github.com/steinwurf/cpuid/actions/workflows/linux_mkspecs.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/linux_mkspecs.yml\n   \n.. |Windows make-specs| image:: https://github.com/steinwurf/cpuid/actions/workflows/windows_mkspecs.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/windows_mkspecs.yml\n\n.. |MacOS make-specs| image:: https://github.com/steinwurf/cpuid/actions/workflows/macos_mkspecs.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/macos_mkspecs.yml\n   \n.. |Linux CMake| image:: https://github.com/steinwurf/cpuid/actions/workflows/linux_cmake.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/linux_cmake.yml\n\n.. |Windows CMake| image:: https://github.com/steinwurf/cpuid/actions/workflows/windows_cmake.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/windows_cmake.yml\n   \n.. |MacOS CMake| image:: https://github.com/steinwurf/cpuid/actions/workflows/macos_cmake.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/macos_cmake.yml\n   \n.. |Raspberry Pi| image:: https://github.com/steinwurf/cpuid/actions/workflows/raspberry_pi.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/raspberry_pi.yml\n\n.. |Clang Format| image:: https://github.com/steinwurf/cpuid/actions/workflows/clang-format.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/clang-format.yml\n\n.. |No Assertions| image:: https://github.com/steinwurf/cpuid/actions/workflows/nodebug.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/nodebug.yml\n\n.. |Valgrind| image:: https://github.com/steinwurf/cpuid/actions/workflows/valgrind.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/valgrind.yml\n\n.. |Cppcheck| image:: https://github.com/steinwurf/cpuid/actions/workflows/cppcheck.yml/badge.svg\n   :target: https://github.com/steinwurf/cpuid/actions/workflows/cppcheck.yml\n\ncpuid is a C++ library for CPU dispatching. Currently the project can\ndetect the following CPU capabilities:\n\n* Instruction sets detected on x86: FPU, MMX, SSE, SSE2, SSE3, SSSE3,\n   SSE 4.1, SSE 4.2, PCLMULQDQ, AVX, AVX2 and AVX-512 extensions.\n\n* Instruction sets detected on ARM: NEON\n\n\nLicense\n*******\n\ncpuid license is based on the BSD License. Please refer to the\nLICENSE.rst file for more details.\n\n\nPlatforms\n*********\n\nWe have tested cpuid on various versions of Windows, Linux and Mac. We\nrun automated tests with different compilers like g++, clang and msvc.\n\n\nBuild\n*****\n\nFetch the sources, and we also recommend that you switch to the last\nreleased version of the library:\n\n::\n\n   git clone https://github.com/steinwurf/cpuid\n   cd cpuid\n   git checkout 8.0.0\n\nWe use the ``waf`` build system to build the cpuid static library. We\nhave some additional waf tools which can be found at `waf\n\u003chttps://github.com/steinwurf/waf\u003e`_.\n\nTo configure and build cpuid, run the following commands:\n\n::\n\n   python waf configure\n   python waf build\n   python waf install --destdir cpuid_install\n\nThe final ``install`` step will create a folder containing all the\nnessecary files needed to use the library (e.g. static library,\nheaders etc.). You can change the output folder by passing a different\npath to ``--destdir``.\n\nWhen building the libraries, waf will also build the\n``print_cpuinfo_example`` executable which is useful to print the\navailable CPU instruction sets. The compiled binary is located in the\n``build/[platform]/examples/print_cpuinfo`` folder (where\n``[platform]`` denotes your current platform, e.g. ``linux``,\n``win32`` or ``darwin``).\n\nUse as Dependency in CMake\n**************************\n\nTo depend on this project when using the CMake build system, add the\nfollowing in your CMake build script:\n\n::\n\n   add_subdirectory(\"/path/to/cpuid\" cpuid)\n   target_link_libraries(\u003cmy_target\u003e steinwurf::cpuid)\n\nWhere ``\u003cmy_target\u003e`` is replaced by your target.\n\n\nCredits\n*******\n\nWe have created cpuid to fit our specific needs, however we hope that\nothers may also find it useful. When designing cpuid we found\ninspiration in these other nice projects:\n\n* CPUID article on Wikipedia: http://en.wikipedia.org/wiki/CPUID\n\n* zchotia's gist: https://gist.github.com/zchothia/3078968\n\n* Facebook CPU ID implementation:\n   https://github.com/facebook/folly/blob/master/folly/CpuId.h\n\n* ARM Cortex-A Programmer's guide:\n   http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.den0013d/index.html\n\n* Intel® Architecture Instruction Set Extensions Programming Reference:\n   https://software.intel.com/content/dam/develop/public/us/en/documents/architecture-instruction-set-extensions-programming-reference.pdf","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsteinwurf%2Fcpuid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsteinwurf%2Fcpuid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsteinwurf%2Fcpuid/lists"}