Skip to content

pasqal-io/emulators

Repository files navigation

Emu-MPS

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.

Installation

Warning: installing emu-mps will update pulser-core

Using hatch, uv or any pyproject-compatible Python manager

To add emu-mps to your project, edit your pyproject.toml to add the line

  "emu-mps"

to the list of dependencies.

Using pip or pipx

To install the pipy package using pip or pipx

  1. Create a venv if that's not done yet
$ python -m venv venv
  1. Enter the venv

If you're running Unix:

$ . venv/bin/activate

If you're running Windows:

C:\> /path/to/new/virtual/environment/Scripts/activate
  1. 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.

Usage

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.

Getting in touch

About

monorepo for pasqal torch based pulser backends

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages