- О полигоне для квантовых вычислений
- Работа на полигоне для квантовых вычислений
- Тестовая задача
- Пример пользовательской задачи
О полигоне для квантовых вычислений
На ресурсах экосистемы ML/DL/HPC гетерогенной платформы HybriLIT развернут полигон для квантовых вычислений. Характеристики сервера позволяют проводить расчеты с использованием библиотек, поддерживающих параллельные вычисления как на центральных процессорах, так и на графических ускорителях.
Характеристика сервера [https://ampere05.jinr.ru]:
- 2x AMD EPYC 7763 (64 Cores @ 2.45 GHz),
- 1.94 TB RAM,
- 8x NVIDIA Tesla A100 SXM4 80 GB HBM2
В качестве основы вычислительной среды выбран JupyterLab, что предоставляет возможность пользователям наглядно работать с квантовыми схемами и проводить расчеты в веб-браузере.
В настоящее время на полигоне установлены следующие симуляторы квантовых вычислений:
- Cirq, примеры по использованию: github.com/quantumlib/Cirq/
- Qiskit, примеры по использованию: github.com/Qiskit/
- PennyLane, примеры по использованию: pennylane.ai, github.com/MonitSharma
- QuTiP, примеры по использованию: qutip.org/qutip-tutorials, github.com/qutip
Работа на полигоне для квантовых вычислений
Доступ к серверу предоставляется только из внутренней сети ОИЯИ.
Для получения доступа к ресурсам квантового полигона пришлите письмо с вашими данными (логин) на электронную почту zuevmax@jinr.ru.
Для работы на полигоне для квантовых вычислений доступны следующие варианты.
- Работа через batch-систему (Рис. 1, слева).
Симуляторы квантовых вычислений и все необходимые библиотеки установлены в сетевую файловую систему CVMFS, для определения необходимых переменных окружения в рабочей сессии пользователя используется утилита Modules. Запуск задач осуществляется через планировщик SLURM. Из преимуществ этой реализации можно отметить возможность проведения многоузловых расчетов с применением технологии MPI и использования ресурсов всей гетерогенной платформы, в том числе суперкомпьютера «Говорун». Для доступа к полигону через batch-систему следуйте инструкции. - Работа через веб-интерфейс (Рис. 1, справа).
В последнее время все больше квантовых симуляторов получает реализацию на языке Python. Для упрощения работы с ними реализовано расширение полигона для квантовых вычислений, позволяющее проводить исследования с использованием квантовых симуляторов в среде Jupyter. Это предоставило пользователям возможность наглядно работать в браузере с квантовыми схемами и проводить расчеты. Полигон для квантовых вычислений развернут на базе сервера, позволяющего проводить расчеты как на центральных процессорах, так и графических ускорителях. Веб-интерфейсом выбран JupyterLab – многопользовательская версия Jupyter, на котором установлены в виде отдельных модулей симуляторы квантовых вычислений. При выборе квантового симулятора открывается Jupyter Notebook с библиотеками и настроенными переменными окружения. Значимым преимуществом работы в Jupyter Notebook является возможность наглядно вести разработку алгоритмов, визуализировать квантовые схемы, а обширные материалы в открытом доступе на Python позволяют существенно ускорить исследования.
Для доступа к полигону через веб-интерфейс необходимо выполнить следующие шаги:
- В браузере перейти по ссылке ampere05.jinr.ru и войти с логином и паролем платформы HybriLIT;
- В правой части окна Вы увидите «плитки» с соответствующими названиями симуляторов:
- Выбирая соответствующую плитку и нажав на нее левой кнопкой мыши, откроется JupyterNotebook для работы с соответствующим квантовым симулятором.
Тестовая задача
Для тестирования был выбран квантовый симулятор QuEST. С его помощью проверялась эффективность проведения расчетов как на системах с общей и распределенной памятью, так и на графических ускорителях с использованием технологии CUDA. Результаты тестирования представлены на Рис. 3 и Рис. 4. На Рис. 3 представлен график зависимости времени работы квантового симулятора от числа потоков для разного числа кубитов. Из графика видно, что удалось достичь размеров квантовой системы в 33 кубита. На Рис. 4 представлен график времени работы квантового симулятора с различным числом кубитов на различных графических ускорителях.
Пример пользовательской задачи
В пользовательской задаче рассмотрено использование симулятора Cirq, представляющего собой среду для квантовых вычислений – в задаче поиска состояния с наименьшей энергией в модели Изинга в продольном магнитном поле с использованием квантового аппроксимационного оптимизационного алгоритма (QAOA).
Подробно постановка задачи представлена в работе Yu. Palii, A. Bogolubskaya, D. Yanovich. Quantum approximation optimization algorithm for the Ising model in an external magnetic field [PDF] опубликованной в Physics of Particles and Nuclei, Vol. 55, No. 3, pp. 600–602. ISSN 1063-7796, 2024.
На одном из серверов квантового полигона с двумя процессорами AMD EPYC 7763 (64 ядра @ 2.45 ГГц) на 128 потоках было достигнуто время работы в 3 часа 20 минут, на графическом ускорителе NVIDIA A100 с подключением библиотеки cuStateVec удалось сократить время до 14.5 минут.
Запуск тестовой задачи показал возможность моделирования систем до 33 кубитов. На реальной задаче было получено ускорение работы в более, чем 200 раз.