{"id":13593218,"url":"https://github.com/shinmorino/qgate","last_synced_at":"2025-03-21T18:33:45.073Z","repository":{"id":201881892,"uuid":"147997640","full_name":"shinmorino/qgate","owner":"shinmorino","description":"Qgate, Quntum circuit simulator","archived":false,"fork":false,"pushed_at":"2020-10-08T15:11:46.000Z","size":46488,"stargazers_count":31,"open_issues_count":3,"forks_count":7,"subscribers_count":7,"default_branch":"0.2","last_synced_at":"2025-03-18T04:11:19.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://shinmorino.github.io/qgate/docs/0.2/index.html","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shinmorino.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-09-09T05:59:45.000Z","updated_at":"2024-09-29T02:16:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"480e2b2c-ca02-4e50-b742-7c3abec61cbc","html_url":"https://github.com/shinmorino/qgate","commit_stats":null,"previous_names":["shinmorino/qgate"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinmorino%2Fqgate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinmorino%2Fqgate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinmorino%2Fqgate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinmorino%2Fqgate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shinmorino","download_url":"https://codeload.github.com/shinmorino/qgate/tar.gz/refs/heads/0.2","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244849834,"owners_count":20520801,"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":[],"created_at":"2024-08-01T16:01:17.902Z","updated_at":"2025-03-21T18:33:44.341Z","avatar_url":"https://github.com/shinmorino.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"## Qgate\n\n### Announcement\n\n**Qgate has moved to NVIDIA AI Technology Center (NVAITC) in 11/2019.**\n\nDevelpoment is still ongoing as an NVAITC activity.\n\nDevelopment for version 0.3 has been already closed.  Please refer to the slides, [QGATE 0.3: QUANTUM CIRCUIT SIMULATOR](\u003chttps://www.slideshare.net/NVIDIAJapan/qgate-03-quantum-circuit-simulator-228305952\u003e).  The source code is planned to be open sourced from NVAITC repository.\n\nDevelpment of version 0.4 is in progress with enhanced optimizations and advanced multi GPU supports.\n\nIf you are intersted in Qgate, please contact smorino(at)nvidia.com\".  I can send packages for your evaluation.\n\nThis repository is kept for 0.2 release, but no further updates will be made.\n\n\n### Qgate 0.2\n\nQuantum circuit simulator\n\nVersion 0.2.2 has been released on 1/26/2020.\n\nQgate 0.2.2 is a bug-fix release.  Please see the version history in the bottom of this page.\n\nPlease visit [Qgate documentation](\u003chttps://shinmorino.github.io/qgate/docs/0.2/\u003e) ([Quick start guide](\u003chttps://shinmorino.github.io/qgate/docs/0.2/quick_start_guide.html\u003e)) for usages.\n\n### Prerequisite\n\n- Qgate depends on numpy(\u003e=1.14) and PLY(\u003e=3.10).  Please install them in advance.\n\n~~~\n\n# install numpy\n$ pip install numpy\n# install PLY\n$ pip install ply\n\nor\n\n# move to qgate directory\ncd qgate\n# install by using requirements.txt\npip install -r requirements.txt\n\n~~~\n\n### Build / Install\n\n- To build, CUDA toolkit is required.  Please install CUDA 9 or later.\n- setup.py assumes CUDA toolkit is under /usr/local/cuda\n- Please checkout the 0.2 branch which includes tha latest fixes for 0.2.x.\n\n~~~\n# checkout the 0.2 branch\ngit checkout 0.2\n# move to your source directory\ncd qgate\n# build\npython setup.py bdist_wheel --plat-name manylinux1_x86_64\n# install\npip install dist/qgate-*-*-manylinux1_x86_64.whl\n~~~\n\nWheels for Python 2.7, 3.5, 3.6, 3.7 and 3.8 are available from links below.  These packages have been built with CUDA 10 on Ubuntu 16.04 (2.7, 3.5) and on Ubuntu 18.04 (3.6, 3.7, 3.8), and are expected to work on other linux distros.\n\n- 2.7: [qgate-0.2.2-cp27-cp27mu-linux_x86_64.whl](\u003chttps://github.com/shinmorino/qgate/raw/gh-pages/packages/0.2/qgate-0.2.2-cp27-cp27mu-manylinux1_x86_64.whl\u003e)\n\n- 3.5: [qgate-0.2.2-cp35-cp35m-linux_x86_64.whl](\u003chttps://github.com/shinmorino/qgate/raw/gh-pages/packages/0.2/qgate-0.2.2-cp35-cp35m-manylinux1_x86_64.whl\u003e)\n\n- 3.6: [qgate-0.2.2-cp36-cp36m-linux_x86_64.whl](\u003chttps://github.com/shinmorino/qgate/raw/gh-pages/packages/0.2/qgate-0.2.2-cp36-cp36m-manylinux1_x86_64.whl\u003e)\n\n- 3.7: [qgate-0.2.2-cp37-cp37m-linux_x86_64.whl](\u003chttps://github.com/shinmorino/qgate/raw/gh-pages/packages/0.2/qgate-0.2.2-cp37-cp37m-manylinux1_x86_64.whl\u003e)\n\n- 3.8: [qgate-0.2.2-cp38-cp38-linux_x86_64.whl](\u003chttps://github.com/shinmorino/qgate/raw/gh-pages/packages/0.2/qgate-0.2.2-cp38-cp38-manylinux1_x86_64.whl\u003e)\n\n\n### NVIDIA driver requirement\n\nNVIDIA Driver 410.48 or later is required to use prebuilt wheels, \n\nIf CUDA 9 (R384) driver is installed and you want to stay at R384, please visit [4. CUDA Compatilbility platform](\u003chttps://docs.nvidia.com/deploy/cuda-compatibility/#cuda-compatibility-platform\u003e).  Drivers of 384.111 or later are able to run CUDA 10 applications.\n\n### Run\n\nPlease go to the example directory, and run scripts.\n~~~\n# move to examples\ncd examples\n# run example scripts\npython gate_tests.py\n~~~\n\n\n### Version history\n\n**0.2.2**(1/26/2020)\n\n- Fixes for memory allocation issues with multiple GPUs\n\n- Fix for wrong Rz gate definition in native runtimes.\n\n**0.2.1**(10/17/2019)\n\n- Fixes for Expi(theta)(paulis), measure(ref, paulis), prob(ref, paulis) operators.\n\n- Fixes for sampling pool on CUDA.\n\n- New script interface from 0.3 is added in qgate.script.script2.\n\n  Script updating tool is also added in qgate.tools.update_script.\n\n\n**0.2**\n\nNew\n\n- Dynamic Qubit Grouping\n\n  dynamically adding/removing qubits to/from state vectors\n\n- Multi-GPU\n\n  Using device memories in multiple GPUs to run bigger circuits.\n\n  Prerquisite is GPUDirectP2P.  To get performance, NVLink is required.\n\n- SamplingPool\n\n  Efficent and fast sampling by using pre-calculated probability vector.\n\n- Blueqat plugin (preliminary)\n\n- OpenQASM parser (preliminary)\n\n  Parsing OpenQASM to dynamically create circuits or generate python source code to define circuits.\n\n  (Currently macro and opaque are not implemented.)\n\nFixes/Changes\n\n- Global phases of U3 and U2 gates are adjusted for consistency with Qgate gate set.\n\n- The name of global phase gate is changed from Expia to Expii.\n\n- The matrix for U2 gate was numerically incrrect.  It was fixed and tested.\n\n**0.1**\n\n- The first release.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshinmorino%2Fqgate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshinmorino%2Fqgate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshinmorino%2Fqgate/lists"}