JAKUB ADAMSKI

HPC & Quantum Computing PhD Candidate

About me

Me

My name is Kuba, I am a 2nd year PhD candidate researching high-performance simulations of quantum computers. I have a joint degree in computer science and physics, which is where I discovered the enthusiasm for quantum physics and computer hardware. I have been eager to keep working on both disciplines combined, and this is why I went for quantum computing. It is exciting to be a part of such a promising field, and to witness its growth, just like the growth of digital computers over half a century ago.

In spare time, I enjoy playing the keys, or designing factories in video games like Factorio. I also love hiking when the Scottish weather allows, and occasionally trail running in the hills. When I still lived in Poland, I tried deep space astrophotography, which quickly became a big hobby of mine. I currently don't have access to a telescope, but I still enjoy taking pictures of the sky.


Find me

Email
GitHub
LinkedIn

Projects

QTNH – Distributed Quantum Tensor Network Simulator

Tensor networks are a generalised approach to quantum circuit emulation. They extend the statevector approach by allowing any two circuit elements (tensors) to be applied in any given order. It is therefore possible to optimise the order of tensor contraction so that the computations are performed more efficiently. Moreover, there are representations that allow tensor compression at the cost of limiting the entanglement (e.g. MPS – Matrix Product States).

Distributed tensor index swap
Figure: Distributed tensor index swap visualised.

In this project, I aim to create a library for CPU-distributed tensor networks contractions using MPI and OpenMP. This is achieved by distinguishing between two tensor types: shared and distributed, where the latter allows storing a tensor of any size that can fit in all available memory combined. The first goal of the project is to emulate QuEST with an appropriate contraction order, striving to achieve similar performance. If this succeeds, it may be possible to achieve better results by optimising the contraction order.

Project repository can be found here

Bechmarking Statevector Emulation with QuEST

Classical simulations are essential for the development of quantum computing, and their exponential scaling can easily fill any modern supercomputer. In the first part of my PhD, I focused on improving performance and energy consumption of statevector simulation. This involved large Quantum Fourier Transform (QFT) simulations run on ARCHER2, the UK's National Supercomputing Service, with QuEST toolkit.

Benchmarking results
Figure: QFT statevector simulation benchmarking for different memory/clock settings.

The main considerations were CPU clock frequency, node memory size, and cache-blocking to rearrange the circuit, which minimises communications. For instance, using 2.00 GHz instead of 2.25 GHz can save as much as 25% of energy at 5% increase in runtime. Higher node memory also has the potential to be more efficient, and cost the user fewer CUs, but at higher runtime penalty. Finally, I designed a cache-blocking QFT circuit, which halves the required communication. All the optimisations combined result in 40% faster simulations and 35% energy savings in 44 qubit simulations on 4,096 ARCHER2 nodes.

The project ended with publishing a paper to the SC23 sustainable supercomputing workshop, and a presentation in front of a large audience. The reference repository is available here

Super-resolution Neural Networks for Astrophotography

Research project for the Machine Learning Practical university course. In a team of two, we explored ML methods for super-resolution of astronomical photos, such as CNNs on artificially degraded photos, and GAN transformations. The academic report received an A grade.

CycleGAN examples
Figure: Examples of astronomical images corrected by a CycleGAN network.

Temporal data analysis in R

Summer internships and part-time work alongside the undergraduate degree. I participated in big EU projects, such as M2DC and RENergetic. I learnt and evaluated many temporal forecasting techniques in R, such as SARIMAX with multivariate regressors. The job also involved attending regular team meetings, writing reports and interactive presentations in Markdown.

Best SARIMAX models
Figure: Best 8 SARIMAX models for seasonal time series prediction.