<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>reproducibility | UCSC OSPO</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/category/reproducibility/</link><atom:link href="https://deploy-preview-1007--ucsc-ospo.netlify.app/category/reproducibility/index.xml" rel="self" type="application/rss+xml"/><description>reproducibility</description><generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><lastBuildDate>Mon, 01 Sep 2025 00:00:00 +0000</lastBuildDate><image><url>https://deploy-preview-1007--ucsc-ospo.netlify.app/media/logo_hub6795c39d7c5d58c9535d13299c9651f_74810_300x300_fit_lanczos_3.png</url><title>reproducibility</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/category/reproducibility/</link></image><item><title>Final Report: MPI Appliance for HPC Research on Chameleon</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250901-rohan-babbar/</link><pubDate>Mon, 01 Sep 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250901-rohan-babbar/</guid><description>&lt;p>Hi Everyone, This is my final report for the project I completed during my summer as a &lt;a href="https://ucsc-ospo.github.io/sor/" target="_blank" rel="noopener">Summer of Reproducibility (SOR)&lt;/a> student.
The project, titled &amp;ldquo;&lt;a href="https://ucsc-ospo.github.io/project/osre25/uchicago/mpi/" target="_blank" rel="noopener">MPI Appliance for HPC Research in Chameleon&lt;/a>,&amp;rdquo; was undertaken in collaboration with Argonne National Laboratory
and the Chameleon Cloud community. The project was mentored by &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/ken-raffenetti/">Ken Raffenetti&lt;/a> and was completed over the summer.
This blog details the work and outcomes of the project.&lt;/p>
&lt;h2 id="background">Background&lt;/h2>
&lt;p>Message Passing Interface (MPI) is the backbone of high-performance computing (HPC), enabling efficient scaling across thousands of
processing cores. However, reproducing MPI-based experiments remains challenging due to dependencies on specific library versions,
network configurations, and multi-node setups.&lt;/p>
&lt;p>To address this, we introduce a reproducibility initiative that provides standardized MPI environments on the Chameleon testbed.
This is set up as a master–worker MPI cluster. The master node manages tasks and communication, while the worker nodes do the computations.
All nodes have the same MPI libraries, software, and network settings, making experiments easier to scale and reproduce.&lt;/p>
&lt;h2 id="objectives">Objectives&lt;/h2>
&lt;p>The aim of this project is to create an MPI cluster that is reproducible, easily deployable, and efficiently configurable.&lt;/p>
&lt;p>The key objectives of this project were:&lt;/p>
&lt;ol>
&lt;li>
&lt;p>Pre-built MPI Images: Create ready-to-use images with MPI and all dependencies installed.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Automated Cluster Configuration: Develop Ansible playbooks to configure master–worker communication, including host setup, SSH key distribution, and MPI configuration across nodes.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Cluster Orchestration: Develop orchestration template to provision resources and invoke Ansible playbooks for automated cluster setup.&lt;/p>
&lt;/li>
&lt;/ol>
&lt;h2 id="implementation-strategy-and-deliverables">Implementation Strategy and Deliverables&lt;/h2>
&lt;h3 id="openstack-image-creation">Openstack Image Creation&lt;/h3>
&lt;p>The first step was to create a standardized pre-built image, which serves as the base image for all nodes in the cluster.&lt;/p>
&lt;p>Some important features of the image include:&lt;/p>
&lt;ol>
&lt;li>Built on Ubuntu 22.04 for a stable base environment.&lt;/li>
&lt;li>&lt;a href="https://spack.io/" target="_blank" rel="noopener">Spack&lt;/a> + Lmod integration:
&lt;ul>
&lt;li>Spack handles reproducible, version-controlled installations of software packages.&lt;/li>
&lt;li>Lmod (Lua Modules) provides a user-friendly way to load/unload software environments dynamically.&lt;/li>
&lt;li>Together, they allow users to easily switch between MPI versions, libraries, and GPU toolkits&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>&lt;a href="https://github.com/pmodels/mpich" target="_blank" rel="noopener">MPICH&lt;/a> and &lt;a href="https://github.com/open-mpi/ompi" target="_blank" rel="noopener">OpenMPI&lt;/a> pre-installed for standard MPI support and can be loaded/unloaded.&lt;/li>
&lt;li>Three image variants for various HPC workloads: CPU-only, NVIDIA GPU (CUDA 12.8), and AMD GPU (ROCm 6.4.2).&lt;/li>
&lt;/ol>
&lt;p>These images have been published and are available in the Chameleon Cloud Appliance Catalog:&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://chameleoncloud.org/appliances/127/" target="_blank" rel="noopener">MPI and Spack for HPC (Ubuntu 22.04)&lt;/a> - CPU Only&lt;/li>
&lt;li>&lt;a href="https://chameleoncloud.org/appliances/130/" target="_blank" rel="noopener">MPI and Spack for HPC (Ubuntu 22.04 - CUDA)&lt;/a> - NVIDIA GPU (CUDA 12.8)&lt;/li>
&lt;li>&lt;a href="https://chameleoncloud.org/appliances/131/" target="_blank" rel="noopener">MPI and Spack for HPC (Ubuntu 22.04 - ROCm)&lt;/a> - AMD GPU (ROCm 6.4.2)&lt;/li>
&lt;/ul>
&lt;h3 id="cluster-configuration-using-ansible">Cluster Configuration using Ansible&lt;/h3>
&lt;p>The next step is to create scripts/playbooks to configure these nodes and set up an HPC cluster.
We assigned specific roles to different nodes in the cluster and combined them into a single playbook to configure the entire cluster automatically.&lt;/p>
&lt;p>Some key steps the playbook performs:&lt;/p>
&lt;ol>
&lt;li>Configure /etc/hosts entries for all nodes.&lt;/li>
&lt;li>Mount Manila NFS shares on each node.&lt;/li>
&lt;li>Generate an SSH key pair on the master node and add the master’s public key to the workers’ authorized_keys.&lt;/li>
&lt;li>Scan worker node keys and update known_hosts on the master.&lt;/li>
&lt;li>(Optional) Manage software:
&lt;ul>
&lt;li>Install new compilers with Spack&lt;/li>
&lt;li>Add new Spack packages&lt;/li>
&lt;li>Update environment modules to recognize them&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>Create a hostfile at /etc/mpi/hostfile.&lt;/li>
&lt;/ol>
&lt;p>The code is publicly available and can be found on the GitHub repository: &lt;a href="https://github.com/rohanbabbar04/MPI-Spack-Experiment-Artifact" target="_blank" rel="noopener">https://github.com/rohanbabbar04/MPI-Spack-Experiment-Artifact&lt;/a>&lt;/p>
&lt;h3 id="orchestration">Orchestration&lt;/h3>
&lt;p>With the image now created and deployed, and the Ansible scripts ready for cluster configuration, we put everything
together to orchestrate the cluster deployment.&lt;/p>
&lt;p>This can be done in two primary ways:&lt;/p>
&lt;h4 id="python-chijupyter--ansible">Python CHI(Jupyter) + Ansible&lt;/h4>
&lt;p>&lt;a href="https://github.com/ChameleonCloud/python-chi" target="_blank" rel="noopener">Python-CHI&lt;/a> is a python library designed to facilitate interaction with the Chameleon testbed. Often used within environments like Jupyter notebooks.&lt;/p>
&lt;p>This setup can be put up as:&lt;/p>
&lt;ol>
&lt;li>Create leases, launch instances, and set up shared storage using python-chi commands.&lt;/li>
&lt;li>Automatically generate inventory.ini for Ansible based on launched instances.&lt;/li>
&lt;li>Run Ansible playbook programmatically using &lt;code>ansible_runner&lt;/code>.&lt;/li>
&lt;li>Outcome: fully configured, ready-to-use HPC cluster; SSH into master to run examples.&lt;/li>
&lt;/ol>
&lt;p>If you would like to see a working example, you can view it in the &lt;a href="https://chameleoncloud.org/experiment/share/7424a8dc-0688-4383-9d67-1e40ff37de17" target="_blank" rel="noopener">Trovi example&lt;/a>&lt;/p>
&lt;h4 id="heat-orchestration-template">Heat Orchestration Template&lt;/h4>
&lt;p>Heat Orchestration Template(HOT) is a YAML based configuration file. Its purpose is to define/create a stack to automate
the deployment and configuration of OpenStack cloud resources.&lt;/p>
&lt;p>&lt;strong>Challenges&lt;/strong>&lt;/p>
&lt;p>We faced some challenges while working with Heat templates and stacks in particular in Chameleon Cloud&lt;/p>
&lt;ol>
&lt;li>&lt;code>OS::Nova::Keypair&lt;/code>(new version): In the latest OpenStack version, the stack fails to launch if the &lt;code>public_key&lt;/code> parameter is not provided for the keypair,
as auto-generation is no longer supported.&lt;/li>
&lt;li>&lt;code>OS::Heat::SoftwareConfig&lt;/code>: Deployment scripts often fail, hang, or time out, preventing proper configuration of nodes and causing unreliable deployments.&lt;/li>
&lt;/ol>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Heat Approach" srcset="
/report/osre25/uchicago/mpi/20250901-rohan-babbar/heatapproach_hua2bf48ad20dec386c348c909fcaf7111_39548_05fca9fb65271d31e3fd79f2e7b58a53.webp 400w,
/report/osre25/uchicago/mpi/20250901-rohan-babbar/heatapproach_hua2bf48ad20dec386c348c909fcaf7111_39548_19399eb0dbf598de84852723f8d60783.webp 760w,
/report/osre25/uchicago/mpi/20250901-rohan-babbar/heatapproach_hua2bf48ad20dec386c348c909fcaf7111_39548_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250901-rohan-babbar/heatapproach_hua2bf48ad20dec386c348c909fcaf7111_39548_05fca9fb65271d31e3fd79f2e7b58a53.webp"
width="760"
height="235"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>To tackle these challenges, we designed an approach that is both easy to implement and reproducible. First, we launch instances
by provisioning master and worker nodes using the HOT template in OpenStack. Next, we set up a bootstrap node, install Git and Ansible,
and run an Ansible playbook from the bootstrap node to configure the master and worker nodes, including SSH, host communication, and
MPI setup. The outcome is a fully configured, ready-to-use HPC cluster, where users can simply SSH into the master node to run examples.&lt;/p>
&lt;p>Users can view/use the template published in the Appliance Catalog: &lt;a href="https://chameleoncloud.org/appliances/132/" target="_blank" rel="noopener">MPI+Spack Bare Metal Cluster&lt;/a>.
For example, a demonstration of how to pass parameters is available on &lt;a href="https://chameleoncloud.org/experiment/share/7424a8dc-0688-4383-9d67-1e40ff37de17" target="_blank" rel="noopener">Trovi&lt;/a>.&lt;/p>
&lt;h2 id="conclusion">Conclusion&lt;/h2>
&lt;p>In conclusion, this work demonstrates a reproducible approach to building and configuring MPI clusters on the Chameleon testbed. By using standardized images,
Ansible automation, and Orchestration Templates, we ensure that every node is consistently set up, reducing manual effort and errors. The artifact, published on Trovi,
makes the entire process transparent, reusable, and easy to implement, enabling users/researchers to reliably recreate and extend the cluster environment for their own
experiments.&lt;/p>
&lt;h2 id="future-work">Future Work&lt;/h2>
&lt;p>Maintaining these images and possibly creating a script to reproduce MPI and Spack on a different image base environment.&lt;/p></description></item><item><title>Final Update(Mid-Term -> Final): MPI Appliance for HPC Research on Chameleon</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250831-rohan-babbar/</link><pubDate>Sun, 31 Aug 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250831-rohan-babbar/</guid><description>&lt;p>Hi everyone! This is my final update, covering the progress made every two weeks from the midterm to the end of the
project &lt;a href="https://ucsc-ospo.github.io/project/osre25/uchicago/mpi/" target="_blank" rel="noopener">MPI Appliance for HPC Research on Chameleon&lt;/a>, developed
in collaboration with Argonne National Laboratory and the Chameleon Cloud community.
This blog follows up on my earlier post, which you can find &lt;a href="https://ucsc-ospo.github.io/report/osre25/uchicago/mpi/20250803-rohan-babbar/" target="_blank" rel="noopener">here&lt;/a>.&lt;/p>
&lt;h3 id="-july-29--august-11-2025">🔧 July 29 – August 11, 2025&lt;/h3>
&lt;p>With the CUDA- and MPI-Spack–based appliances published, we considered releasing another image variant (ROCm-based) for AMD GPUs.
This will be primarily used in CHI@TACC, which provides AMD GPUs. We have successfully published a new image on Chameleon titled &lt;a href="https://chameleoncloud.org/appliances/131/" target="_blank" rel="noopener">MPI and Spack for HPC (Ubuntu 22.04 - ROCm)&lt;/a>,
and we also added an example to demonstrate its usage.&lt;/p>
&lt;h3 id="-august-12--august-25-2025">🔧 August 12 – August 25, 2025&lt;/h3>
&lt;p>With the examples now available on Trovi for creating an MPI cluster using Ansible and Python-CHI, my next step was to experiment with stack orchestration using Heat Orchestration Templates (HOT) on OpenStack Chameleon Cloud.
This turned out to be more challenging due to a few restrictions:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>OS::Nova::Keypair (new version)&lt;/strong>: In the latest OpenStack version, the stack fails to launch if the public_key parameter is not provided for the keypair, as auto-generation is no longer supported.&lt;/li>
&lt;li>&lt;strong>OS::Heat::SoftwareConfig&lt;/strong>: Deployment scripts often fail, hang, or time out, preventing proper configuration of nodes and causing unreliable deployments.&lt;/li>
&lt;/ol>
&lt;p>To address these issues, we adopted a new strategy for configuring and creating the MPI cluster: using a temporary bootstrap node.&lt;/p>
&lt;p>In simple terms, the workflow of the Heat template is:&lt;/p>
&lt;ol>
&lt;li>Provision master and worker nodes via the HOT template on OpenStack.&lt;/li>
&lt;li>Launch a bootstrap node, install Git and Ansible on it, and then run an Ansible playbook from the bootstrap node to configure the master and worker nodes. This includes setting up SSH, host communication, and the MPI environment.&lt;/li>
&lt;/ol>
&lt;p>This provides an alternative method for creating an MPI cluster.&lt;/p>
&lt;p>We presented this work on August 26, 2025, to the Chameleon Team and the Argonne MPICH Team. The project was very well received.&lt;/p>
&lt;p>Stay tuned for my final report on this work, which I’ll be sharing in my next blog post.&lt;/p></description></item><item><title>Mid-Term Update: MPI Appliance for HPC Research on Chameleon</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250803-rohan-babbar/</link><pubDate>Sun, 03 Aug 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250803-rohan-babbar/</guid><description>&lt;p>Hi everyone! This is my mid-term blog update for the project &lt;a href="https://ucsc-ospo.github.io/project/osre25/uchicago/mpi/" target="_blank" rel="noopener">MPI Appliance for HPC Research on Chameleon&lt;/a>, developed in collaboration with Argonne National Laboratory and the Chameleon Cloud community.
This blog follows up on my earlier post, which you can find &lt;a href="https://ucsc-ospo.github.io/report/osre25/uchicago/mpi/20250614-rohan-babbar/" target="_blank" rel="noopener">here&lt;/a>.&lt;/p>
&lt;h3 id="-june-15--june-29-2025">🔧 June 15 – June 29, 2025&lt;/h3>
&lt;p>Worked on creating and configuring images on Chameleon Cloud for the following three sites:
CHI@UC, CHI@TACC, and KVM@TACC.&lt;/p>
&lt;p>Key features of the images:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Spack&lt;/strong>: Pre-installed and configured for easy package management of HPC software.&lt;/li>
&lt;li>&lt;strong>Lua Modules (LMod)&lt;/strong>: Installed and configured for environment module management.&lt;/li>
&lt;li>&lt;strong>MPI Support&lt;/strong>: Both MPICH and Open MPI are pre-installed, enabling users to run distributed applications out-of-the-box.&lt;/li>
&lt;/ul>
&lt;p>These images are now publicly available and can be seen directly on the Chameleon Appliance Catalog, titled &lt;a href="https://chameleoncloud.org/appliances/127/" target="_blank" rel="noopener">MPI and Spack for HPC (Ubuntu 22.04)&lt;/a>.&lt;/p>
&lt;p>I also worked on some example Jupyter notebooks on how to get started using these images.&lt;/p>
&lt;h3 id="-june-30--july-13-2025">🔧 June 30 – July 13, 2025&lt;/h3>
&lt;p>With the MPI Appliance now published on Chameleon Cloud, the next step was to automate the setup of an MPI-Spack cluster.&lt;/p>
&lt;p>To achieve this, I developed a set of Ansible playbooks that:&lt;/p>
&lt;ol>
&lt;li>Configure both master and worker nodes with site-specific settings&lt;/li>
&lt;li>Set up seamless access to Chameleon NFS shares&lt;/li>
&lt;li>Allow users to easily install Spack packages, compilers, and dependencies across all nodes&lt;/li>
&lt;/ol>
&lt;p>These playbooks aim to simplify the deployment of reproducible HPC environments and reduce the time required to get a working cluster up and running.&lt;/p>
&lt;h3 id="-july-14--july-28-2025">🔧 July 14 – July 28, 2025&lt;/h3>
&lt;p>This week began with me fixing some issues in python-chi, the official Python client for the Chameleon testbed.
We also discussed adding support for CUDA-based packages, which would make it easier to work with NVIDIA GPUs.
We successfully published a new image on Chameleon, titled &lt;a href="https://chameleoncloud.org/appliances/130/" target="_blank" rel="noopener">MPI and Spack for HPC (Ubuntu 22.04 - CUDA)&lt;/a>, and added an example to demonstrate its usage.&lt;/p>
&lt;p>We compiled the artifact containing the Jupyter notebooks and Ansible playbooks and published it on Chameleon Trovi.
Feel free to check it out &lt;a href="https://chameleoncloud.org/experiment/share/7424a8dc-0688-4383-9d67-1e40ff37de17" target="_blank" rel="noopener">here&lt;/a>. The documentation still needs some work.&lt;/p>
&lt;p>📌 That’s it for now! I’m currently working on the documentation, a ROCm-based image for AMD GPUs, and some container-based examples.
Stay tuned for more updates in the next blog.&lt;/p></description></item><item><title>From Friction to Flow: Why I'm Building Widgets for Reproducible Research</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/jupyter-widgets/20250624-nbrewer/</link><pubDate>Tue, 24 Jun 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/jupyter-widgets/20250624-nbrewer/</guid><description>&lt;blockquote>
&lt;p>This summer, I’m building Jupyter Widgets to reduce friction in reproducible workflows on Chameleon. Along the way, I’m reflecting on what usability teaches us about the real meaning of reproducibility.&lt;/p>
&lt;/blockquote>
&lt;h2 id="supercomputing-competition-reproducibility-reality-check">Supercomputing Competition: Reproducibility Reality Check&lt;/h2>
&lt;p>My first reproducibility experience threw me into the deep end—trying to recreate a tsunami simulation with a GitHub repository, a scientific paper, and a lot of assumptions. I was part of a student cluster competition at the Supercomputing Conference, where one of our challenges was to reproduce the results of a prior-year paper. I assumed “reproduce” meant something like “re-run the code and get the same numbers.” But what we actually had to do was rebuild the entire computing environment from scratch—on different hardware, with different software versions, and vague documentation. I remember thinking: &lt;em>If all these conditions are so different, what are we really trying to learn by conducting reproducibility experiments?&lt;/em> That experience left me with more questions than answers, and those questions have stayed with me. In fact, they’ve become central to my PhD research.&lt;/p>
&lt;h2 id="summer-of-reproducibility-lessons-from-100-experiments-on-chameleon">Summer of Reproducibility: Lessons from 100+ Experiments on Chameleon&lt;/h2>
&lt;p>I’m currently a PhD student and research software engineer exploring questions around what computational reproducibility really means, and when and why it matters. I also participated in the &lt;strong>&lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre24/depaul/repronb/">Summer of Reproducibility 2024&lt;/a>&lt;/strong>, where I helped assess over 100 public experiments on the Chameleon platform. &lt;a href="https://doi.org/10.1109/e-Science62913.2024.10678673" target="_blank" rel="noopener">Our analysis&lt;/a> revealed key friction points—especially around usability—that don’t necessarily prevent reproducibility in the strictest sense, but introduce barriers in terms of time, effort, and clarity. These issues may not stop an expert from reproducing an experiment, but they can easily deter others from even trying. This summer’s project is about reducing that friction—some of which I experienced firsthand—by improving the interface between researchers and the infrastructure they rely on.&lt;/p>
&lt;h2 id="from-psychology-labs-to-jupyter-notebooks-usability-is-central-to-reproducibility">From Psychology Labs to Jupyter Notebooks: Usability is Central to Reproducibility&lt;/h2>
&lt;p>My thinking shifted further when I was working as a research software engineer at Purdue, supporting a psychology lab that relied on a complex statistical package. For most researchers in the lab, using the tool meant wrestling with cryptic scripts and opaque parameters. So I built a simple Jupyter-based interface to help them visualize input matrices, validate settings, and run analyses without writing code. The difference was immediate: suddenly, people could actually use the tool. It wasn’t just more convenient—it made the research process more transparent and repeatable. That experience was a turning point for me. I realized that usability isn’t a nice-to-have; it’s critical for reproducibility.&lt;/p>
&lt;h2 id="teaching-jupyter-widget-tutorials-at-scipy">Teaching Jupyter Widget Tutorials at SciPy&lt;/h2>
&lt;p>Since that first experience, I’ve leaned into building better interfaces for research workflows—especially using Jupyter Widgets. Over the past few years, I’ve developed and taught tutorials on how to turn scientific notebooks into interactive web apps, including at the &lt;strong>SciPy conference&lt;/strong> in &lt;a href="https://github.com/Jupyter4Science/scipy23-jupyter-web-app-tutorial" target="_blank" rel="noopener">2023&lt;/a> and &lt;a href="https://github.com/Jupyter4Science/scipy2024-jupyter-widgets-tutorial" target="_blank" rel="noopener">2024&lt;/a>. These tutorials go beyond the basics: I focus on building real, multi-tab applications that reflect the complexity of actual research tools. Teaching others how to do this has deepened my own knowledge of the widget ecosystem and reinforced my belief that good interfaces can dramatically reduce the effort it takes to reproduce and reuse scientific code. That’s exactly the kind of usability work I’m continuing this summer—this time by improving the interface between researchers and the Chameleon platform itself.&lt;/p>
&lt;h2 id="making-chameleon-even-more-reproducible-with-widgets">Making Chameleon Even More Reproducible with Widgets&lt;/h2>
&lt;p>This summer, I’m returning to Chameleon with a more focused goal: reducing some of the friction I encountered during last year’s reproducibility project. One of Chameleon’s standout features is its Jupyter-based interface, which already goes a long way toward making reproducibility more achievable. My work builds on that strong foundation by improving and extending interactive widgets in the &lt;strong>Python-chi&lt;/strong> library — making tasks like provisioning resources, managing leases, and tracking experiment progress on Chameleon even more intuitive. For example, instead of manually digging through IDs to find an existing lease, a widget could present your current leases in a dropdown or table, making it easier to pick up where you left off and avoid unintentionally reserving unnecessary resources. It’s a small feature, but smoothing out this kind of interaction can make the difference between someone giving up or trying again. That’s what this project is about.&lt;/p>
&lt;h2 id="looking-ahead-building-for-people-not-just-platforms">Looking Ahead: Building for People, Not Just Platforms&lt;/h2>
&lt;p>I’m excited to spend the next few weeks digging into these questions—not just about what we can build, but how small improvements in usability can ripple outward to support more reproducible, maintainable, and accessible research. Reproducibility isn’t just about rerunning code; it’s about supporting the people who do the work. I’ll be sharing updates as the project progresses, and I’m looking forward to learning (and building) along the way. I’m incredibly grateful to once again take part in this paid experience, made possible by the 2025 Open Source Research Experience team and my mentors.&lt;/p></description></item><item><title>EnvGym – An AI System for Reproducible Custom Computing Environments</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/envgym/</link><pubDate>Mon, 16 Jun 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/envgym/</guid><description>&lt;p>Hello, My name is Yiming Cheng. I am a Pre-doc researcher in Computer Science at University of Chicago. I&amp;rsquo;m excited to be working with the Summer of Reproducibility and the Chameleon Cloud community as a project leader. My project is &lt;a href="https://github.com/eaminc/envgym" target="_blank" rel="noopener">EnvGym&lt;/a> that focuses on developing an AI-driven system to automatically generate and configure reproducible computing environments based on natural language descriptions from artifact descriptions, Trovi artifacts, and research papers.&lt;/p>
&lt;p>The complexity of environment setup often hinders reproducibility in scientific computing. My project aims to bridge the knowledge gap between experiment authors and reviewers by translating natural language requirements into actionable, reproducible configurations using AI and NLP techniques.&lt;/p>
&lt;h3 id="project-overview">Project Overview&lt;/h3>
&lt;p>EnvGym addresses fundamental reproducibility barriers by:&lt;/p>
&lt;ul>
&lt;li>Using AI to translate natural language environment requirements into actionable configurations&lt;/li>
&lt;li>Automatically generating machine images deployable on bare metal and VM instances&lt;/li>
&lt;li>Bridging the knowledge gap between experiment authors and reviewers&lt;/li>
&lt;li>Standardizing environment creation across different hardware platforms&lt;/li>
&lt;/ul>
&lt;h3 id="june-10--june-16-2025">June 10 – June 16, 2025&lt;/h3>
&lt;p>Getting started with the project setup and initial development:&lt;/p>
&lt;ul>
&lt;li>I began designing the NLP pipeline architecture to parse plain-English descriptions (e.g., &amp;ldquo;I need Python 3.9, CUDA 11, and scikit-learn&amp;rdquo;) into structured environment &amp;ldquo;recipes&amp;rdquo;&lt;/li>
&lt;li>I set up the initial project repository and development environment&lt;/li>
&lt;li>I met with my mentor Prof. Kexin Pei to discuss the project roadmap and technical approach&lt;/li>
&lt;li>I started researching existing artifact descriptions from conferences and Trovi to understand common patterns in environment requirements&lt;/li>
&lt;li>I began prototyping the backend environment builder logic that will convert parsed requirements into machine-image definitions&lt;/li>
&lt;li>I explored Chameleon&amp;rsquo;s APIs for provisioning servers and automated configuration&lt;/li>
&lt;/ul>
&lt;h3 id="next-steps">Next Steps&lt;/h3>
&lt;ul>
&lt;li>Continue developing the NLP component for requirement parsing&lt;/li>
&lt;li>Implement the core backend logic for environment generation&lt;/li>
&lt;li>Begin integration with Chameleon Cloud APIs&lt;/li>
&lt;li>Start building the user interface for environment specification&lt;/li>
&lt;/ul>
&lt;p>This is an exciting and challenging project that combines my interests in AI systems and reproducible research. I&amp;rsquo;m looking forward to building a system that will help researchers focus on their science rather than struggling with environment setup issues.&lt;/p>
&lt;p>Thanks for reading, I will keep you updated as I make progress on EnvGym!&lt;/p></description></item><item><title>Assessing and Enhancing CC-Snapshot for Reproducible Experiment Enviroments</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/cc-snapshot/20250616-zahratm/</link><pubDate>Sun, 15 Jun 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/cc-snapshot/20250616-zahratm/</guid><description>&lt;p>Hello, My name is Zahra Temori. I am a rising senior in Computer Science at University of Delaware. I’m excited to be working with the Summer of Reproduciblity and the Chameleon Cloud community. My project is &lt;a href="https://github.com/ChameleonCloud/cc-snapshot" target="_blank" rel="noopener">cc-snapshot&lt;/a> that focuses on enhancing features for helping researchers capture and share reproducible experimental environments within the Chameleon Cloud testbed.&lt;/p>
&lt;p>Here is a detailed information about my project and plans to work for summer &lt;a href="https://docs.google.com/document/d/1kFOFL-H4WrXF7EUuXzcHLZ2p5w_DxbbWOGi-IGx39LM/edit?tab=t.0" target="_blank" rel="noopener">proposal&lt;/a>.&lt;/p>
&lt;h3 id="june-10--june-14-2025">June 10 – June 14, 2025&lt;/h3>
&lt;p>Getting started with the first milestone and beginning to explore the Chameleon Cloud and the project:&lt;/p>
&lt;ul>
&lt;li>I began familiarizing myself with the Chameleon Cloud platform. I created an account and successfully accessed a project.&lt;/li>
&lt;li>I learned how to launch an instance and create a lease for using computing resources.&lt;/li>
&lt;li>I met with my mentor to discuss the project goals and outline the next steps.&lt;/li>
&lt;li>I experimented with the environment and captured a snapshot to understand the process.&lt;/li>
&lt;/ul>
&lt;p>It has been less than a week and I have learned a lot specially about the Chameleon Cloud and how it is different from other clouds like AWS. I am exited to learn more and make progress.&lt;/p>
&lt;p>Thanks for reading, I will keep ypu updated as I work :)&lt;/p></description></item><item><title>MPI Appliance for HPC Research on Chameleon</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250614-rohan-babbar/</link><pubDate>Sat, 14 Jun 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/uchicago/mpi/20250614-rohan-babbar/</guid><description>&lt;p>Hi Everyone,&lt;/p>
&lt;p>I’m Rohan Babbar from Delhi, India. This summer, I’m excited to be working with the Argonne National Laboratory and the Chameleon Cloud community. My &lt;a href="https://ucsc-ospo.github.io/project/osre25/uchicago/mpi/" target="_blank" rel="noopener">project&lt;/a> focuses on developing an MPI Appliance to support reproducible High-Performance Computing (HPC) research on the Chameleon testbed.&lt;/p>
&lt;p>For more details about the project and the planned work for the summer, you can read my proposal &lt;a href="https://docs.google.com/document/d/1iOx95-IcEOSVxpOkL20-jT5SSDOwBiP78ysSUNpRwXs/edit?usp=sharing" target="_blank" rel="noopener">here&lt;/a>.&lt;/p>
&lt;h3 id="-community-bonding-period">👥 Community Bonding Period&lt;/h3>
&lt;p>Although the project officially started on June 2, 2025, I made good use of the community bonding period beforehand.&lt;/p>
&lt;ul>
&lt;li>I began by getting access to the Chameleon testbed, familiarizing myself with its features and tools.&lt;/li>
&lt;li>I experimented with different configurations to understand the ecosystem.&lt;/li>
&lt;li>My mentor, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/ken-raffenetti/">Ken Raffenetti&lt;/a>, and I had regular check-ins to align our vision and finalize our milestones, many of which were laid out in my proposal.&lt;/li>
&lt;/ul>
&lt;h3 id="-june-2--june-14-2025">🔧 June 2 – June 14, 2025&lt;/h3>
&lt;p>Our first milestone was to build a base image with MPI pre-installed. For this:&lt;/p>
&lt;ul>
&lt;li>We decided to use &lt;a href="https://spack.io/" target="_blank" rel="noopener">Spack&lt;/a>, a flexible package manager tailored for HPC environments.&lt;/li>
&lt;li>The image includes multiple MPI implementations, allowing users to choose the one that best suits their needs and switch between them using simple &lt;a href="https://lmod.readthedocs.io/en/latest/" target="_blank" rel="noopener">Lua Module&lt;/a> commands.&lt;/li>
&lt;/ul>
&lt;p>📌 That’s all for now! Stay tuned for more updates in the next blog.&lt;/p>
&lt;p>Thanks for reading!&lt;/p></description></item><item><title>StatWrap: Cross-Project Searching and Classification using Local Indexing</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/northwestern/statwrap/20250614-debangi29/</link><pubDate>Sat, 14 Jun 2025 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre25/northwestern/statwrap/20250614-debangi29/</guid><description>&lt;p>Hello👋! I am &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/debangi-ghosh/">Debangi Ghosh&lt;/a>, currently pursuing a degree in Mathematics and Computing at IIT (BHU) Varanasi, India. This summer, I will be working on the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre25/northwestern/statwrap/">StatWrap: Cross-Project Searching and Classification using Local Indexing&lt;/a> project under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/luke-rasmussen/">Luke Rasmussen&lt;/a>. You can view my &lt;a href="https://drive.google.com/file/d/1dxyBP2oMJwYDCKyIWzr465zNmm6UWtnI/view?usp=sharing" target="_blank" rel="noopener">project proposal&lt;/a> for more details.&lt;/p>
&lt;p>My project aims to address the challenges in project navigation and discoverability by integrating a robust full-text search capability within the user interface. Instead of relying on basic keyword-based search—where remembering exact terms can be difficult—we plan to implement a natural language-based full-text search. This approach involves two main stages: indexing, which functions like creating a searchable map of the content, and searching, which retrieves relevant information from that map. We will evaluate and compare available open-source libraries to choose and implement the most effective one.
In addition, my project aims to enhance project organization by introducing a new classification system that clearly distinguishes between “Active” and “Past” projects in the user interface. This will improve clarity, reduce clutter, and provide a more streamlined experience as the number of projects grows.&lt;/p>
&lt;p>Stay tuned for updates on my progress in the coming weeks! 🚀&lt;/p></description></item><item><title>[Final Report] Automated Reproducibility Checklist support within StatWrap</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20241102-adi/</link><pubDate>Sat, 02 Nov 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20241102-adi/</guid><description>&lt;p>Namaste🙏🏻! I&amp;rsquo;m &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/adi-akhilesh-singh/">Adi Akhilesh Singh&lt;/a>, and I&amp;rsquo;m excited to share my final updates on the &lt;a href="https://drive.google.com/file/d/1xV7eHL9lIWGKueQJxBks6OB_rcXCr8JY/view?usp=sharing" target="_blank" rel="noopener">Reproducibility Checklists project&lt;/a> by StatWrap, under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/luke-rasmussen/">Luke Rasmussen&lt;/a>.&lt;/p>
&lt;h2 id="project-overview">Project Overview&lt;/h2>
&lt;p>This project introduces customizable reproducibility checklists in StatWrap, enabling metadata-driven and user-guided generation of checklists. The goal is to enhance the reproducibility of research projects by providing researchers with structured and comprehensive checklist to ensure their work is reproducible.&lt;/p>
&lt;h2 id="project-links">Project Links&lt;/h2>
&lt;p>Explore the StatWrap project repository and my contributions during GSoC &amp;lsquo;24:&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://github.com/StatTag/StatWrap" target="_blank" rel="noopener">StatWrap&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://github.com/StatTag/StatWrap/tree/gsoc24" target="_blank" rel="noopener">GSoC &amp;lsquo;24 Contributions&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="progress-and-achievements">Progress And Achievements&lt;/h2>
&lt;p>During the timeline of this project, I worked on designing the interface for the checklist page and the data structure to support the project needs.
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Checklist Interface" srcset="
/report/osre24/ucsc/statwrap/20241102-adi/interface_hu5405d4f4fe0fcc5c29037ce596b14456_175744_0e20d5ebd32af685d0d2ccea73085611.webp 400w,
/report/osre24/ucsc/statwrap/20241102-adi/interface_hu5405d4f4fe0fcc5c29037ce596b14456_175744_3b54d1a2b420d4de3f33b717849e243e.webp 760w,
/report/osre24/ucsc/statwrap/20241102-adi/interface_hu5405d4f4fe0fcc5c29037ce596b14456_175744_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20241102-adi/interface_hu5405d4f4fe0fcc5c29037ce596b14456_175744_0e20d5ebd32af685d0d2ccea73085611.webp"
width="760"
height="432"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
The interface was designed with user needs in mind, featuring components such as:&lt;/p>
&lt;ul>
&lt;li>URLs component to manage external links or file URIs, attached to the project.&lt;/li>
&lt;li>Images component to display project image files.&lt;/li>
&lt;li>Checklist Notes component to manage user-added notes.&lt;/li>
&lt;/ul>
&lt;p>All these assets (Files, URLs, Images) can be added to each checklist statement using the existing assets and external resources(urls) present in the project.
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Add Asset Dialog" srcset="
/report/osre24/ucsc/statwrap/20241102-adi/addasset_huf5f93b812eac7fe9e6235b66e18b25cf_152586_046cbc4227c33853dde195b066b2af19.webp 400w,
/report/osre24/ucsc/statwrap/20241102-adi/addasset_huf5f93b812eac7fe9e6235b66e18b25cf_152586_2076fca94822416fc8dfb0806ae54833.webp 760w,
/report/osre24/ucsc/statwrap/20241102-adi/addasset_huf5f93b812eac7fe9e6235b66e18b25cf_152586_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20241102-adi/addasset_huf5f93b812eac7fe9e6235b66e18b25cf_152586_046cbc4227c33853dde195b066b2af19.webp"
width="760"
height="432"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
Additionally, for each checklist item, StatWrap runs relevant scans to provide meaningful data based on its requirements. For example, for the item, “All the software dependencies for the project are documented,” StatWrap scans project files to list the languages and dependencies detected.
For each checklist statement supported in StatWrap, we implement methods to retrieve specific information by scanning project data. StatWrap currently supports six such checklist statements identified as foundational for ensuring research reproducibility.
Additionally, the checklist can be exported as a PDF summary, generated by StatWrap using the checklist data, with options to include notes.
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Checklist Report" srcset="
/report/osre24/ucsc/statwrap/20241102-adi/report_hu7a01407dc27c71052bc56e4eb6e3d4fb_270768_06eff861f558dd904b00349a9a2d2717.webp 400w,
/report/osre24/ucsc/statwrap/20241102-adi/report_hu7a01407dc27c71052bc56e4eb6e3d4fb_270768_70ef332c2c3871d3a097995a59a7dd65.webp 760w,
/report/osre24/ucsc/statwrap/20241102-adi/report_hu7a01407dc27c71052bc56e4eb6e3d4fb_270768_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20241102-adi/report_hu7a01407dc27c71052bc56e4eb6e3d4fb_270768_06eff861f558dd904b00349a9a2d2717.webp"
width="760"
height="432"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h2 id="future-prospects">Future Prospects&lt;/h2>
&lt;p>As the project concludes, several areas for growth have emerged:&lt;/p>
&lt;ul>
&lt;li>Expanding language support within StatWrap. While StatWrap already includes key languages used in research, there is always a scope to extend compatibility to cover even more technologies.&lt;/li>
&lt;li>Options to export a data-extensive report that includes checklist and their associated scan results.
These and other enhancements, like adding new checklist statements with their scanning methods, will extend StatWrap’s impact on reproducibility in research.&lt;/li>
&lt;/ul>
&lt;h2 id="earlier-blogs">Earlier Blogs&lt;/h2>
&lt;p>If you’re interested in seeing the project’s evolution, check out my earlier posts:&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240614-adi/">Intro Blog&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240916-adi/">MidTerm Blog&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>Thank you for reading!&lt;/p></description></item><item><title>[MidTerm] StatWrap: Automated Reproducibility Checklists Generation</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240916-adi/</link><pubDate>Mon, 16 Sep 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240916-adi/</guid><description>&lt;p>Namaste🙏🏻! I&amp;rsquo;m &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/adi-akhilesh-singh/">Adi Akhilesh Singh&lt;/a>, and I&amp;rsquo;m excited to share progress updates on the &lt;a href="https://drive.google.com/file/d/1xV7eHL9lIWGKueQJxBks6OB_rcXCr8JY/view?usp=sharing" target="_blank" rel="noopener">Reproducibility Checklists project&lt;/a> by StatWrap, under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/luke-rasmussen/">Luke Rasmussen&lt;/a>.&lt;/p>
&lt;h2 id="project-overview">Project Overview&lt;/h2>
&lt;p>The project aims to integrate customizable reproducibility checklists into StatWrap, using metadata and user input to automate their generation. The goal is to enhance the reproducibility of research projects by providing researchers with structured and comprehensive checklists to ensure their work is reproducible.&lt;/p>
&lt;h2 id="progress">Progress&lt;/h2>
&lt;p>Over the past few months, my mentors and I have worked on developing the interface for the checklists page and designed key components to support our project goals. We’ve implemented logic that iterates over each checklist item, displaying its statement along with Boolean controls (Yes/No buttons) for user interaction.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Checklists Page" srcset="
/report/osre24/ucsc/statwrap/20240916-adi/checklist1_hu49ca38eb7e3448bf4ed2dfab22f3668a_108784_5fcb2c29a07fa3c85a9668932f8201f8.webp 400w,
/report/osre24/ucsc/statwrap/20240916-adi/checklist1_hu49ca38eb7e3448bf4ed2dfab22f3668a_108784_0a0b05429d19c5fac3cf4bd2f233cd58.webp 760w,
/report/osre24/ucsc/statwrap/20240916-adi/checklist1_hu49ca38eb7e3448bf4ed2dfab22f3668a_108784_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240916-adi/checklist1_hu49ca38eb7e3448bf4ed2dfab22f3668a_108784_5fcb2c29a07fa3c85a9668932f8201f8.webp"
width="760"
height="416"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>We’ve also developed components to display attached images and URLs linked to each checklist item. Additionally, we’ve integrated a notes feature that allows users to add, edit, and view project-related notes. Currently, we are writing methods to integrate real-time project data into the checklists. For example, one method we’ve implemented scans project files (assets) to detect the languages used.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Checklists Details" srcset="
/report/osre24/ucsc/statwrap/20240916-adi/checklist2_hu44aad6e1d0078aeaafbbf946cadf1130_201385_ed67e0f337158d4ded72db604d4b14df.webp 400w,
/report/osre24/ucsc/statwrap/20240916-adi/checklist2_hu44aad6e1d0078aeaafbbf946cadf1130_201385_c2fdd3677c5b7099074f7846753c15ff.webp 760w,
/report/osre24/ucsc/statwrap/20240916-adi/checklist2_hu44aad6e1d0078aeaafbbf946cadf1130_201385_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240916-adi/checklist2_hu44aad6e1d0078aeaafbbf946cadf1130_201385_ed67e0f337158d4ded72db604d4b14df.webp"
width="760"
height="416"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h2 id="whats-next">What&amp;rsquo;s Next?&lt;/h2>
&lt;p>As we move closer to the final evaluation phase, our focus will be on the following objectives:&lt;/p>
&lt;ul>
&lt;li>Implement methods for each checklist item, integrating real-time data from the project data to auto-populate checklist answers.&lt;/li>
&lt;li>Enhance the &lt;code>Attached Images&lt;/code> component to allow users to select and attach existing image assets from the project.&lt;/li>
&lt;li>Display the results of the scans for each checklist item, providing users with detailed outputs based on the automated analysis.&lt;/li>
&lt;/ul>
&lt;p>Stay tuned for further updates as we continue developing this feature set! 🚀&lt;/p></description></item><item><title>Final Blog: BenchmarkST: Cross-Platform, Multi-Species Spatial Transcriptomics Gene Imputation Benchmarking</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/uci/benchmarkst/20240829-qianru/</link><pubDate>Thu, 29 Aug 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/uci/benchmarkst/20240829-qianru/</guid><description>&lt;p>Hello! I&amp;rsquo;m Qianru! I have been contributing to the BenchmarkST: Cross-Platform, Multi-Species Spatial Transcriptomics Gene Imputation Benchmarking project under the mentorship of Ziheng Duan. My project aims to provide a standardized, easily accessible evaluation framework for gene imputation in spatial transcriptomics.&lt;/p>
&lt;h1 id="motivation-and-overview">Motivation and Overview&lt;/h1>
&lt;p>The &amp;ldquo;BenchmarkST&amp;rdquo; project was driven by the need to address a critical challenge in spatial transcriptomics: the impact of sparse data on downstream tasks, such as spatial domain identification. Sparse data can significantly degrade the performance of these tasks. For example, in a 10X Visium dataset of human brain Dorsolateral Prefrontal Cortex (DLPFC), using the complete dataset with GraphST (a state-of-the-art clustering method) for clustering resulted in an ARI (Adjusted Rand Index) of 0.6347. However, when using only 20% of the data—a common scenario—the performance dropped dramatically to 0.1880. This stark difference highlights the importance of effective gene imputation, which can help restore the lost information and improve the accuracy of downstream analyses.
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="fig1" srcset="
/report/osre24/uci/benchmarkst/20240829-qianru/fig1_hu72c585df7604f28a748aa64a85602fac_159578_1bdac9436ddd84b83023a2cd20d76fb3.webp 400w,
/report/osre24/uci/benchmarkst/20240829-qianru/fig1_hu72c585df7604f28a748aa64a85602fac_159578_8a97a3a52a0fad3fb5d2dbf596e883a9.webp 760w,
/report/osre24/uci/benchmarkst/20240829-qianru/fig1_hu72c585df7604f28a748aa64a85602fac_159578_1200x1200_fit_q75_h2_lanczos.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/uci/benchmarkst/20240829-qianru/fig1_hu72c585df7604f28a748aa64a85602fac_159578_1bdac9436ddd84b83023a2cd20d76fb3.webp"
width="760"
height="496"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
To tackle this issue, the BenchmarkST project led to the creation of the Impeller package. This package provides a standardized, easily accessible evaluation framework for gene imputation in spatial transcriptomics, offering preprocessed datasets, reproducible evaluation methods, and flexible inference interfaces. It spans across different platforms, species, and organs, aiming to enhance the integrity and usability of spatial transcriptomics data.&lt;/p>
&lt;h1 id="what-was-accomplished">What Was Accomplished&lt;/h1>
&lt;h2 id="development-of-the-impeller-package">Development of the Impeller Package&lt;/h2>
&lt;h4 id="data-aggregation-and-preprocessing">Data Aggregation and Preprocessing:&lt;/h4>
&lt;p>We aggregated and preprocessed spatial transcriptomic datasets from multiple platforms (10X Visium, StereoSeq, SlideSeqV2), species (human, mouse), and organs (Dorsolateral Prefrontal Cortex, olfactory bulb). These datasets are readily available for download within the package.&lt;/p>
&lt;h4 id="unified-evaluation-framework">Unified Evaluation Framework:&lt;/h4>
&lt;p>A reproducible framework was developed, integrating methods such as K-Nearest Neighbors (KNN) and the deep learning-based Impeller method, enabling users to easily evaluate the performance of different gene imputation techniques.&lt;/p>
&lt;h4 id="inference-interfaces">Inference Interfaces:&lt;/h4>
&lt;p>We provided interfaces that allow users to apply gene imputation on custom datasets, offering the flexibility to predict any gene in any cell, maximizing the utility for diverse research needs.&lt;/p>
&lt;h2 id="code-contributions-and-documentation">Code Contributions and Documentation&lt;/h2>
&lt;h4 id="repository">Repository:&lt;/h4>
&lt;p>All code related to the Impeller package has been committed to the &lt;a href="https://pypi.org/project/impeller/0.1.2/#files" target="_blank" rel="noopener">Impeller&lt;/a> repository.&lt;/p>
&lt;h4 id="link-to-versions">Link to Versions:&lt;/h4>
&lt;p>&lt;a href="https://pypi.org/project/impeller/0.1.2/#history" target="_blank" rel="noopener">Here&lt;/a> you can find all the versions made during the project, with detailed descriptions of each change.&lt;/p>
&lt;h4 id="readmemdhttpspypiorgprojectimpeller012description">&lt;a href="https://pypi.org/project/impeller/0.1.2/#description" target="_blank" rel="noopener">README.md&lt;/a>:&lt;/h4>
&lt;p>Detailed documentation on how to use the Impeller package, including installation instructions, usage examples, and explanations of the key components.&lt;/p></description></item><item><title>Final Blog: ML in Detecting and Addressing System Drift</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240829-joanna/</link><pubDate>Thu, 29 Aug 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240829-joanna/</guid><description>&lt;p>Hello! I&amp;rsquo;m Joanna! I have been contributing to the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre24/anl/last">ML in Detecting and Addressing System Drift&lt;/a> project under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/ray-andrew-sinurat/">Ray Andrew Sinurat&lt;/a> and &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/sandeep-madireddy/">Sandeep Madireddy&lt;/a>. My project aims to design a pipeline to evaluate drift detection algorithms on system traces.&lt;/p>
&lt;h1 id="methodology">Methodology&lt;/h1>
&lt;p>Here is some background on my project: Model drift, or the degradation of model performance, is typically caused by data drift, which is a shift in the input distribution, and concept drift, which is a change in the relationship between input and output. This project focuses specifically on data drift, aiming to design a pipeline for evaluating drift detection algorithms on system traces. The goal is to benchmark different drift detection algorithms and have a better understanding of the features of system traces. The project is divided into two main parts: dataset construction and algorithm benchmarking.&lt;/p>
&lt;h3 id="part-1-dataset-construction">PART 1: Dataset Construction&lt;/h3>
&lt;p>To benchmark drift detection algorithms in system data, it&amp;rsquo;s important to recognize that system trace data is inherently different from other data types, often containing more noise, which can complicate detection efforts. Therefore, constructing a labeled dataset specific to system data is crucial. In our case, we utilize the Tencent I/O block trace data as the dataset. This raw data was processed to extract timestamps along with various features such as IOPS, write size ratio, read write ratio, and etc., which were then used to create a data drift dataset.&lt;/p>
&lt;p>I constructed this dataset by labeling segments of the trace data as either exhibiting drift or not. To identify where the drift occurs and to help construct the dataset, I employed several offline drift detection algorithms, including Kolmogorov-Smirnov, Cramer-von Mises, KL-Divergence, and Jensen-Shannon Distance.&lt;/p>
&lt;p>To enhance the accuracy of the drift detection, especially in the presence of noise common in trace data, I applied additional preprocessing steps such as Fourier transform and moving average. These techniques help to smooth the data, making it easier to detect true drift signals. Finally, a voting strategy was used in combination with post-processing methods to build and refine the final datasets.&lt;/p>
&lt;p>The first figure below illustrates the segments of IOPS where drift has been detected. The second figure shows the segments of data where no drift occurs.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Drift Data" srcset="
/report/osre24/anl/last/20240829-joanna/drift_hueed6613a6bb326df79ee6a6125caea30_218453_ed8c1284ad85bf6b4049e6c666e015b1.webp 400w,
/report/osre24/anl/last/20240829-joanna/drift_hueed6613a6bb326df79ee6a6125caea30_218453_8be8f041f7c86965792bf781e2489836.webp 760w,
/report/osre24/anl/last/20240829-joanna/drift_hueed6613a6bb326df79ee6a6125caea30_218453_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240829-joanna/drift_hueed6613a6bb326df79ee6a6125caea30_218453_ed8c1284ad85bf6b4049e6c666e015b1.webp"
width="715"
height="760"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Non-Drift Data" srcset="
/report/osre24/anl/last/20240829-joanna/nondrift_hu71453c92de8e4df0dd4aefaf6b160e99_327249_ac2898dbe6747b2a53de6ee136def2e4.webp 400w,
/report/osre24/anl/last/20240829-joanna/nondrift_hu71453c92de8e4df0dd4aefaf6b160e99_327249_046f624ccca1c3537b820060909a7bd2.webp 760w,
/report/osre24/anl/last/20240829-joanna/nondrift_hu71453c92de8e4df0dd4aefaf6b160e99_327249_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240829-joanna/nondrift_hu71453c92de8e4df0dd4aefaf6b160e99_327249_ac2898dbe6747b2a53de6ee136def2e4.webp"
width="734"
height="760"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h3 id="part-2-benchmark-drift-detection-algorithms">PART 2: Benchmark Drift Detection Algorithms&lt;/h3>
&lt;p>This part focuses on benchmarking the Jensen-Shannon and Wasserstein drift detection methods using system trace data. The evaluation metrics are categorized into three main areas:&lt;/p>
&lt;ol>
&lt;li>Detection Accuracy Metrics&lt;/li>
&lt;/ol>
&lt;ul>
&lt;li>True Positive Rate (Recall)&lt;/li>
&lt;li>True Negative Rate (Specificity)&lt;/li>
&lt;li>Precision&lt;/li>
&lt;li>F1-Score&lt;/li>
&lt;/ul>
&lt;ol start="2">
&lt;li>Detection Overhead Metrics&lt;/li>
&lt;/ol>
&lt;ul>
&lt;li>Time Taken: The computational time required to detect drifts, critical&lt;/li>
&lt;/ul>
&lt;ol start="3">
&lt;li>Stability Metrics&lt;/li>
&lt;/ol>
&lt;ul>
&lt;li>False Positive Rate&lt;/li>
&lt;li>False Negative Rate&lt;/li>
&lt;/ul>
&lt;p>(Additional) Comparative Analysis:&lt;/p>
&lt;ul>
&lt;li>Accuracy Across Different Features: How well the detection algorithms perform when applied to various features within the system trace data.&lt;/li>
&lt;/ul>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Jensen-Shannon Distance Results" srcset="
/report/osre24/anl/last/20240829-joanna/js-result_hufb49199342183a3232a30a04b1d40959_183762_a7d269c0f217c0b79c79d4f011f54fd9.webp 400w,
/report/osre24/anl/last/20240829-joanna/js-result_hufb49199342183a3232a30a04b1d40959_183762_06f6c204e8a4457868c4b2bc43fb7c28.webp 760w,
/report/osre24/anl/last/20240829-joanna/js-result_hufb49199342183a3232a30a04b1d40959_183762_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240829-joanna/js-result_hufb49199342183a3232a30a04b1d40959_183762_a7d269c0f217c0b79c79d4f011f54fd9.webp"
width="760"
height="607"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Wasserstein Distance Results" srcset="
/report/osre24/anl/last/20240829-joanna/wd-result_hufb49199342183a3232a30a04b1d40959_190137_36d4aa25ff595624ac289c635f82a085.webp 400w,
/report/osre24/anl/last/20240829-joanna/wd-result_hufb49199342183a3232a30a04b1d40959_190137_efd489c01a8f75e3d059b819fc51eb25.webp 760w,
/report/osre24/anl/last/20240829-joanna/wd-result_hufb49199342183a3232a30a04b1d40959_190137_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240829-joanna/wd-result_hufb49199342183a3232a30a04b1d40959_190137_36d4aa25ff595624ac289c635f82a085.webp"
width="760"
height="607"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h1 id="discussion">Discussion&lt;/h1>
&lt;p>The results clearly demonstrate that the Jensen-Shannon distance method outperforms the Wasserstein distance method in detecting drift. Additionally, the write size ratio proves to be a more effective feature for representing the variations in the data, offering a more nuanced understanding of the underlying changes.&lt;/p>
&lt;h1 id="conclusion-and-next-steps">Conclusion and Next Steps&lt;/h1>
&lt;p>In conclusion, this project establishes a pipeline that encompasses data labeling, data processing, and the benchmarking of drift detection algorithms. This just serves as the first step in detecting drift in system data.&lt;/p>
&lt;p>There is significant potential for further improvement. Future work should focus on enhancing dataset construction by incorporating large language models (LLMs) and other advanced techniques to further clean and refine the datasets. Additionally, the evaluation of drift detection methods should be expanded beyond the current benchmarks, which only include two statistical methods. Incorporating additional statistical methods, as well as machine learning (ML) and deep learning (DL) approaches, could provide a more comprehensive analysis. Furthermore, exploring a broader range of evaluation metrics will ensure a more robust and accurate assessment of drift detection performance. These steps will help to advance the accuracy and reliability of drift detection in system trace data.&lt;/p>
&lt;h1 id="deliverables">Deliverables&lt;/h1>
&lt;p>The following are the deliverables of this project:&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://www.chameleoncloud.org/experiment/share/384ee2bd-853c-427b-877b-3af2993fb502" target="_blank" rel="noopener">Trovi Artifact&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://github.com/JoannaCCJH/drift-detection-OSRE24" target="_blank" rel="noopener">Github Repository&lt;/a>: This repository contains the code for generating drift datasets with labels and notebooks with benchmarking results&lt;/li>
&lt;/ul></description></item><item><title>Midterm Blog: ML in Detecting and Addressing System Drift</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240721-joanna/</link><pubDate>Sun, 21 Jul 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240721-joanna/</guid><description>&lt;p>Hello! I&amp;rsquo;m Joanna! Over the past month, I have been contributing to the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre24/anl/last">ML in Detecting and Addressing System Drift&lt;/a> project under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/ray-andrew-sinurat/">Ray Andrew Sinurat&lt;/a> and &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/sandeep-madireddy/">Sandeep Madireddy&lt;/a>. My project aims to design a pipeline to evaluate drift detection algorithms on system traces. The goal is to characterize different drifts, understand how they affect model performance, and evaluate the performance of state-of-the-art (SOTA) drift detection algorithms.&lt;/p>
&lt;h1 id="progress">Progress&lt;/h1>
&lt;p>Here is some background on my project: Model drift, or the degradation of model performance, is typically caused by data drift, which is a shift in the input distribution, and concept drift, which is a change in the relationship between input and output. The project aims to detect both data drifts and concept drifts, analyze these drifts, and try to improve the model performance in computer system.&lt;/p>
&lt;p>Over the past month, I’ve primarily been constructing a data drift dataset from the Tencent I/O block trace, which includes both drift and non-drift data. By combining offline drift detection algorithms such as Maximum Mean Discrepancy, Cramér-von Mises, and Kolmogorov-Smirnov, I am developing a dataset that contains segments with and without drifts for features such as IOPS (Input/Output Operations Per Second), read/write size ratio, write size, and other relevant performance metrics. The diagrams below illustrate the data segments identified with and without drifts, respectively.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Drift Data" srcset="
/report/osre24/anl/last/20240721-joanna/drift_hucf4bc0bd843fb60be6a646f8116e435c_702790_3e192a352fe3c303df3195f4c92fe970.webp 400w,
/report/osre24/anl/last/20240721-joanna/drift_hucf4bc0bd843fb60be6a646f8116e435c_702790_174dedff6f5c0b72b3d10b82cb9d1a86.webp 760w,
/report/osre24/anl/last/20240721-joanna/drift_hucf4bc0bd843fb60be6a646f8116e435c_702790_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240721-joanna/drift_hucf4bc0bd843fb60be6a646f8116e435c_702790_3e192a352fe3c303df3195f4c92fe970.webp"
width="760"
height="752"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Non-Drift Data" srcset="
/report/osre24/anl/last/20240721-joanna/nondrift_hue8c599cc81a10cc02482d676af5d2cf8_455606_3d133279bb8e32779c8b94396ec0ef5d.webp 400w,
/report/osre24/anl/last/20240721-joanna/nondrift_hue8c599cc81a10cc02482d676af5d2cf8_455606_c450f1394af9661bb2d86f0232d340d1.webp 760w,
/report/osre24/anl/last/20240721-joanna/nondrift_hue8c599cc81a10cc02482d676af5d2cf8_455606_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240721-joanna/nondrift_hue8c599cc81a10cc02482d676af5d2cf8_455606_3d133279bb8e32779c8b94396ec0ef5d.webp"
width="760"
height="757"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>In addition to constructing the datasets, I have begun evaluating some online drift detection algorithms and designing metrics to assess their performance. I have tested the performance of online drift detection algorithms such as Online Maximum Mean Discrepancy and Online Cramér-von Mises under various settings, including different window lengths and sensitivity levels. The following diagrams illustrate the drift points detected for the IOPS feature under these different settings.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="Evaluation" srcset="
/report/osre24/anl/last/20240721-joanna/evaluation_hu21317d2d7888d01b0cbee9e7a13940af_724895_51a49130183b2dfa7ad977d297aa0f3b.webp 400w,
/report/osre24/anl/last/20240721-joanna/evaluation_hu21317d2d7888d01b0cbee9e7a13940af_724895_a3c8bf9bdc160fc4323a73bc0ac837b7.webp 760w,
/report/osre24/anl/last/20240721-joanna/evaluation_hu21317d2d7888d01b0cbee9e7a13940af_724895_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240721-joanna/evaluation_hu21317d2d7888d01b0cbee9e7a13940af_724895_51a49130183b2dfa7ad977d297aa0f3b.webp"
width="760"
height="584"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h1 id="next-steps">Next Steps&lt;/h1>
&lt;p>Here are my plans for the next month:&lt;/p>
&lt;ul>
&lt;li>Complete the experiments on data drift and generate improved visualizations to summarize the performance of these online drift detection algorithms, including their overhead and accuracy over time.&lt;/li>
&lt;li>Characterize drifts by identifying the types of drifts that lead to model performance degradation&lt;/li>
&lt;li>Evaluate drift detection algorithms in the context of concept drifts.&lt;/li>
&lt;/ul>
&lt;p>Stay tuned for my future updates on this project!&lt;/p></description></item><item><title>StatWrap: Automated Reproducibility Checklists Generation</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240614-adi/</link><pubDate>Fri, 14 Jun 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/ucsc/statwrap/20240614-adi/</guid><description>&lt;p>Namaste🙏🏻! I am &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/adi-akhilesh-singh/">Adi Akhilesh Singh&lt;/a>, currently pursuing a degree in Computer Science and Engineering at IIT(BHU). This summer, I will be working on the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre24/northwestern/statwrap/">StatWrap: Automated Reproducibility Checklists Generation&lt;/a> project under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/luke-rasmussen/">Luke Rasmussen&lt;/a>. You can view my &lt;a href="https://drive.google.com/file/d/1xV7eHL9lIWGKueQJxBks6OB_rcXCr8JY/view?usp=sharing" target="_blank" rel="noopener">project proposal&lt;/a> for more details.&lt;/p>
&lt;p>My project aims to integrate customizable reproducibility checklists into StatWrap, using metadata and user input to automate their generation. The goal is to enhance the reproducibility of research projects by providing researchers with structured and comprehensive checklists to ensure their work is reproducible.&lt;/p>
&lt;p>Stay tuned for updates on my progress in the coming weeks! 🚀&lt;/p></description></item><item><title>Optimizing Scientific Data Streaming: Developing Reproducible Benchmarks for High-Speed Memory-to-Memory Data Transfer over SciStream</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/scistream/20240613-kraislaik/</link><pubDate>Thu, 13 Jun 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/scistream/20240613-kraislaik/</guid><description>&lt;p>Hello, I am Acheme, currently a PhD student in Computer Engineering at Clemson University. I will be working on &lt;a href="https://github.com/ucsc-ospo/ucsc-ospo.github.io/blob/main/content/project/osre24/anl/scistream/index.md" target="_blank" rel="noopener">SciStream&lt;/a>, mentored by &lt;a href="https://github.com/ucsc-ospo/ucsc-ospo.github.io/blob/main/content/authors/chungmiranda/_index.md" target="_blank" rel="noopener">Joaquin Chung&lt;/a> and &lt;a href="https://github.com/ucsc-ospo/ucsc-ospo.github.io/blob/main/content/authors/fcastro/_index.md" target="_blank" rel="noopener">Flavio Castro&lt;/a> over this summer. Here is my &lt;a href="https://docs.google.com/document/d/1w78mE484kfDmWygPCausv6aZxUQwGeI07ohCjvE3TYk" target="_blank" rel="noopener">proposal&lt;/a> - for this project.&lt;/p>
&lt;p>This project aims to develop SciStream-bench, a set of benchmarks and artifacts designed to precisely evaluate the performance of scientific streaming applications across diverse traffic patterns when running over the SciStream framework.&lt;/p>
&lt;p>I am excited to meet everyone and contribute to this project!&lt;/p></description></item><item><title>LAST: ML in Detecting and Addressing System Drift</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240611-joanna/</link><pubDate>Tue, 11 Jun 2024 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre24/anl/last/20240611-joanna/</guid><description>&lt;p>Hello! I am Joanna, currently an undergraduate student studying Computer Science and Applied Mathematics and Statistics at Johns Hopkins University. I will be working on &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre24/anl/last">ML in Detecting and Addressing System Drift&lt;/a>, mentoring by &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/ray-andrew-sinurat/">Ray Andrew Sinurat&lt;/a> and &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/sandeep-madireddy/">Sandeep Madireddy&lt;/a> over this summer. Here is my &lt;a href="https://drive.google.com/file/d/10RJhuOBMjIKQSg1PklL3ukDlBHUjdt2i/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a> for this project.&lt;/p>
&lt;p>This project aims to build a data analysis pipeline to analyze various datasets, both system and non-system, that have shown notable changes over time. The goal is to understand the characteristics of these datasets(specifically drifts), evaluate the efficacy of Aging Detection Algorithms, and identify their limitations in computer system tasks.&lt;/p>
&lt;p>I am excited to meet everyone and contribute to this project!&lt;/p></description></item></channel></rss>