Emu-mps is a backend for the Pulser low-level Quantum Programming toolkit that lets you run Quantum Algorithms on a simulated device, using GPU acceleration if available. More in depth, emu-mps is designed to emulate the dynamics of programmable arrays of neutral atoms, with matrix product states (mps). While benchmarking is incomplete as of this writing, early results suggest that this design makes emu-mps faster and more memory-efficient than previous generations of quantum emulators at running simulations with large numbers of qubits.
As of this writing, Emu-MPS is provided for Linux and macOS but will not work under Windows.
Warning: installing emu-mps will update pulser-core
To add emu-mps
to your project, edit your pyproject.toml
to add the line
"emu-mps"
to the list of dependencies
.
To install the pipy
package using pip
or pipx
- Create a
venv
if that's not done yet
$ python -m venv venv
- Enter the venv
If you're running Unix:
$ . venv/bin/activate
If you're running Windows:
C:\> /path/to/new/virtual/environment/Scripts/activate
- Install the package
$ pip install emu-mps
# or
$ pipx install emu-mps
Join us on Slack or by e-mail to give us feedback about how you plan to use Emu-MPS or if you require specific feature-upgrades.
For the time being, the easiest way to learn how to use this package is to look at the examples and notebooks.
See also the full documentation for the API, information about contributing, benchmarks, etc.
- Pasqal Community Portal (forums, chat, tutorials, examples, code library).
- GitHub Repository (source code, issue tracker).
- Professional Support (if you need tech support, custom licenses, a variant of this library optimized for your workload, your own QPU, remote access to a QPU, ...)