Marcin Copik

PhD student at the SPCL laboratory, working on high-performance serverless. HPC, FaaS, parallel computing, compilers, C++. Languages: EN, DE, PL. Polish and Silesian.

Marcin Copikmcopik
2024-11-15

Is a fad that will disappear in a few years, or will it accelerate - convergence and change the landscape?

Join us at the panel "Serverless HPC: Challenges, Opportunities, and Future Prospects for Accelerated Cloud Computing"!

The panel brings experts from academia and national labs: Kyle Chard, Ian Foster, Torsten Hoefler, Satoshi Matsuoka, and Devesh Tiwari.

📅 Thursday, 21st November
⏰ 10:30 AM EST
🏢 Room B313B-314

Marcin Copikmcopik
2024-11-13

Can high-performance containers offer performance portability and unified abstraction for the converged and ? Join us at the CANOPIE-HPC workshop for a panel on the potential of cloud technologies to change the HPC landscape. The panel includes authors of the XaaS vision: Dan Ernst, Ian Foster, Torsten Hoefler, and Thomas Schulthess!

📅 Sunday, 17th November
⏰ 11:40 AM EST
🏢 Room B313

XaaS paper 👉 spcl.inf.ethz.ch/Publications/

Event page 👉 sc24.conference-program.com/pr

Marcin Copikmcopik
2024-05-02

🎉 We are thrilled to share that we received four slots in the Google Summer of Code program - a 100% increase compared to last year! We received 16 high-quality proposals in and . We are glad that so many contributors found our projects interesting!

Two students will be working on the serverless benchmark suite SeBS, one on data-centric programming in DaCe, and one on FaaSKeeper, the serverless ZooKeeper.

See all projects 👉 summerofcode.withgoogle.com/pr

Marcin Copikmcopik
2024-03-14

Last week, I defended my PhD thesis on high-performance 🎉! Many thanks to my advisor Torsten Hoefler for his guidance and support throughout this journey.

Thanks to my colleagues from the SPCL Lab @ ETH Zurich, and my thesis committee📖: Ana Klimovic, Kyle Chard, and Devesh Tiwari.

If you want to learn more about projects developed in my thesis, you can find papers, open-source projects, and artifacts on my website:

👉 mcopik.github.io

Marcin Copikmcopik
2024-02-28

🎉 I'm very happy to share that our lab SPCL will be a mentoring org for Google Summer of Code 2024! Do you want to write open-source code? Do you want to work on research and cutting-edge projects in and computing? Check our ideas list and get in contact with mentors!

🚀 Project ideas: github.com/spcl/.github/blob/m

Marcin Copik boosted:
2024-02-21

Topologies of Reasoning: Demystifying Chains, Trees, and Graphs of Thoughts

Maciej Besta, Florim Memedi, Zhenyu Zhang, Robert Gerstenberger, Nils Blach, Piotr Nyczyk, Marcin Copik, Grzegorz Kwaśniewski, Jürgen Müller, Lukas Gianinazzi, Ales Kubicek, Hubert Niewiadomski, Onur Mutlu, Torsten Hoefler
arXiv.org/abs/2401.14295 arXiv.org/pdf/2401.14295

The field of natural language processing (NLP) has witnessed significant progress in recent years, with a notable focus on improving large language models' (LLM) performance through innovative prompting techniques. Among these, prompt engineering coupled with structures has emerged as a promising paradigm, with designs such as Chain-of-Thought, Tree of Thoughts, or Graph of Thoughts, in which the overall LLM reasoning is guided by a structure such as a graph. As illustrated with numerous examples, this paradigm significantly enhances the LLM's capability to solve numerous tasks, ranging from logical or mathematical reasoning to planning or creative writing. To facilitate the understanding of this growing field and pave the way for future developments, we devise a general blueprint for effective and efficient LLM reasoning schemes. For this, we conduct an in-depth analysis of the prompt execution pipeline, clarifying and clearly defining different concepts. We then build the first taxonomy of structure-enhanced LLM reasoning schemes. We focus on identifying fundamental classes of harnessed structures, and we analyze the representations of these structures, algorithms executed with these structures, and many others. We refer to these structures as reasoning topologies, because their representation becomes to a degree spatial, as they are contained within the LLM context. Our study compares existing prompting schemes using the proposed taxonomy, discussing how certain design choices lead to different patterns in performance and cost. We also outline theoretical underpinnings, relationships between prompting and others parts of the LLM ecosystem such as knowledge bases, and the associated research challenges. Our work will help to advance future prompt engineering techniques.

Marcin Copik boosted:
2024-02-21

Software Resource Disaggregation for HPC with Serverless Computing

Marcin Copik, Marcin Chrapek, Larissa Schmid, Alexandru Calotoiu, Torsten Hoefler
arXiv.org/abs/2401.10852 arXiv.org/pdf/2401.10852

Aggregated HPC resources have rigid allocation systems and programming models which struggle to adapt to diverse and changing workloads. Consequently, HPC systems fail to efficiently use the large pools of unused memory and increase the utilization of idle computing resources. Prior work attempted to increase the throughput and efficiency of supercomputing systems through workload co-location and resource disaggregation. However, these methods fall short of providing a solution that can be applied to existing systems without major hardware modifications and performance losses. In this paper, we improve the utilization of supercomputers by employing the new cloud paradigm of serverless computing. We show how serverless functions provide fine-grained access to the resources of batch-managed cluster nodes. We present an HPC-oriented Function-as-a-Service (FaaS) that satisfies the requirements of high-performance applications. We demonstrate a \emph{software resource disaggregation} approach where placing functions on unallocated and underutilized nodes allows idle cores and accelerators to be utilized while retaining near-native performance.

Marcin Copik boosted:
2024-02-21

Cppless: Productive and Performant Serverless Programming in C++

Lukas Möller, Marcin Copik, Alexandru Calotoiu, Torsten Hoefler
arXiv.org/abs/2401.10834 arXiv.org/pdf/2401.10834

The rise of serverless introduced a new class of scalable, elastic and highly available parallel workers in the cloud. Many systems and applications benefit from offloading computations and parallel tasks to dynamically allocated resources. However, the developers of C++ applications found it difficult to integrate functions due to complex deployment, lack of compatibility between client and cloud environments, and loosely typed input and output data. To enable single-source and efficient serverless acceleration in C++, we introduce Cppless, an end-to-end framework for implementing serverless functions which handles the creation, deployment, and invocation of functions. Cppless is built on top of LLVM and requires only two compiler extensions to automatically extract C++ function objects and deploy them to the cloud. We demonstrate that offloading parallel computations from a C++ application to serverless workers can provide up to 30x speedup, requiring only minor code modifications and costing less than one cent per computation.

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst