Skip to content

Releases: sequence-toolbox/SeQUeNCe

Component Updates

28 Jun 21:18
Compare
Choose a tag to compare

This is a minor update, adding an externally developed mirror component. Additionally, an acknowledgement of the Quantum++ package has been added to the README. This package is used for the parallel quantum manager server implemented in C++.

Parallel Simulation

03 Feb 16:32
410ad26
Compare
Choose a tag to compare

After a long development, this release provides full support for parallel simulation. This involves heavily modifying the kernel to include the ParallelTimeline class, which may operate on separate processes and communicate via regular synchronization. The interface provided to other modules remains the same, so the parallel kernel may be easily integrated with sequential simulations.

This release also includes some tweaks and optimizations to other simulator code; a more complete list of changes is provided in CHANGELOG.md. The documentation has also been updated with detailed information on the operation of parallel simulations.

Parallel Simulation Preparations

14 Dec 21:29
79d2f0b
Compare
Choose a tag to compare

This version changes many of the back-end working of SeQUeNCe in preparation for parallel execution support. This includes moving all random number generation to nodes, reworking events to support entity names as arguments, tweaking the behavior of entanglement and reservation protocols, and more (please see CHANGELOG.md for more details).

This version of the simulator still runs as a sequential program; the parallelized simulator will be released soon, but may be previewed on the parallel branch.

Parallel Paper

12 May 15:32
Compare
Choose a tag to compare
Parallel Paper Pre-release
Pre-release

This is the SeQUeNCe release code used in preparation of our parallel simulation publication. The corresponding preprint may be found on arXiv.

Parallel Paper: Optimize Messaging

15 Nov 22:37
Compare
Choose a tag to compare
Pre-release

This is the code used for testing the performance of our parallel version for our parallel paper. Specifically, this version optimizes bunching of global QSM requests. The corresponding preprint may be found on arXiv.

Parallel Paper: Optimize Offloading

15 Nov 22:33
Compare
Choose a tag to compare
Pre-release

This is the code used for testing the performance of our parallel version for our parallel paper. Specifically, this version only optimizes traffic offloading to the local processes. The corresponding preprint may be found on arXiv.

Parallel Paper: No Optimization

15 Nov 22:31
Compare
Choose a tag to compare
Pre-release

This is the code used for testing the performance of our parallel version for our parallel paper. Specifically, this version has no optimization. The corresponding preprint may be found on arXiv.

Quantum Manager and One-Way Channels

01 Dec 03:43
e2effbc
Compare
Choose a tag to compare

This version includes the addition of a quantum manager for tracking memory states, as well as changing all optical channels to operate in one direction only. Addition of the quantum manager also allowed for the creation of a circuit class to apply quantum circuit operations. Protocols have been modified for these changes, and the entanglement generation protocol has also been substantially rewritten.

Logging and Caching

02 Sep 20:13
447f344
Compare
Choose a tag to compare

Add logging system using python default logging library (see log module), modify qubit measurement method to utilize caching

Entity Observers

19 Aug 20:31
7b1fbfb
Compare
Choose a tag to compare

Add observer functionality to entities, replacing the old push/pop method.