Research

Serverless Rust Unikernel

Summer 2020, Winter 2021. Advised by Aaron Bauer, Department of Computer Science, Carleton College.

I wrote a unikernel in Rust, designed to carry out a single task in a serverless environment. Initially, I benchmarked a "hello world" task against Docker, a Linux VM, and a process, and the unikernel kernel scaled much better than either Docker or a VM, only falling short of the process at extremely high throughput.

The source code for the unikernel can be found at https://github.com/olivercalder/rust-kernel.

The scripts used in benchmarking the unikernel, as well as details on the methodology and results, can be found at https://github.com/olivercalder/kernel-benchmark.

Later, I implemented a standalone png thumbnail generator titled rusty-nail as a sample serverless workload for the unikernel, and then moved it into a standalone program which can be invoked directly or integrated into a VM, Docker/Podman, or other systems. The kernel benchmarks were adapted to use the thumbnail generator, and the results are available in that repository.

The standalone code for rusty-nail can be found at https://github.com/olivercalder/rusty-nail.

Character Text Pipeline:

Winter 2019. Advised by Eric Alexander, Department of Computer Science, Carleton College.

This is an extension of the work from the Sonic Signatures project, built to process texts from the EEBO-TCP project. This allows researchers to extract and clean the speech of individual characters from large xml files, and organize these characters' speech into a format which can be easily translated and analyzed, such as by the scripts from the Sonic Signatures project.

Source code and a more verbose (and up-to-date) description can be found at https://github.com/olivercalder/character-text-pipeline.

Sonic Signatures:

Summer 2019. Advised by Eric Alexander, Department of Computer Science, Carleton College.

A machine learning and data visualization toolkit written to analyze phonological patterns in the speech of characters from Shakespeare's plays. Source code and a more verbose description can be found at https://github.com/olivercalder/sonic-signatures.