November 07, 2022 - by CSCS

Could you shortly introduce yourself?

I’m Sebin John, master’s student at USI Lugano, studying software and data engineering. My interests lie in creating scalable HPC codes and visualising them for efficient problem solving.

What fascinates you in the world of supercomputing?

Scientific visualizations in the world of supercomputing fascinates me deeply. The fact that a complex set of equations, problems, or algorithms can be simulated and broken down into simpler parts with the power of supercomputing helps a lot in finding solutions in a more efficient way.

How did you first hear about CSCS?

In 2021, I came to visit the Swiss supercomputing facility on a trip arranged by Prof. Dr. Olaf Schenk from USI Lugano. That was the first time I heard about and got to know more about CSCS.

Why did you want to intern at CSCS?

I come from the background of software development and software engineering; and during this time, I was always fascinated with optimizing software systems, either by making them faster, or larger, or by maintaining and improving their efficiency. This drive in me made me look for opportunities that would cater to it, and what better place than CSCS?

What project did you work on during your internship at CSCS?

During my internship, I worked on the project titled “Distributed visualization and checkpointing in Julia”. The project dealt with frame-by-frame visualization, which required splitting the task of computing the visualization data onto a group of processors. Later, we stored (or staged) the computational results into files that can be used to create the visualizations.

How would you describe a regular day as an intern at CSCS?

A regular day for me starts, by reaching CSCS at around 9 a.m., followed by greeting my colleagues and then having a discussion on Slack with my supervisor about what I did already and what needs to be done. He would give me points of reference that can help me to reach the final goal of the project. It was lucky for me that most of my end goal was well defined, and that made me look up for solutions that increase my problem-solving ability in the language of Julia. I would spend most of the day searching for solutions to a problem. Once I did reach that goal, I would confer with my supervisor and look for more efficient methods, both algorithmically and syntactically, to attain the desired output. On average, I used to take two breaks (one for lunch and one for evening tea) to talk with my colleagues about all the different research happening at CSCS. One of the interesting conversations I had was about scientific advancements in the field of fluid dynamics, as the solutions created out here were highly optimised and time saving. The rest of the day would be spent on my project, testing out different values to see if the day’s code is working well or not.

What will you take home from this experience?

One of the greatest lessons that I had from this experience is that one could learn a programming language in less than a week. In a nutshell, before coming over to CSCS, I was a bit too determined to stick to one language of my interest (namely, Python), but the experience out here gave me opportunities to try out the different languages and master them by applying them to many fields. It’s a well-known fact that, previously, I was reluctant to come out of my comfort zone. Plus, aside from languages, I also got a chance to experiment with the domain of data visualization and parallel processing.