# Compose Hackathon: Piece Table Benchmarking and Snapshot State

DevFeed: [Compose Hackathon: Piece Table Benchmarking and Snapshot State](<https://devfeed.tech/articles/compose-hackathon-day-the-rest-30526.md>)

Original publisher: [Read original article](<https://blog.zachklipp.com/compose-hackathon-day-the-rest/>)

Author: Zach Klippenstein

Published: 2022-05-09T21:11:00Z

Content type: article

Language: en

Sources: [Zach Klippenstein's Blog](<https://devfeed.tech/sources/zach-klippenstein-s-blog.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [AdventureX 2025](<https://devfeed.tech/topics/adventurex2025.md>), [Benchmark](<https://devfeed.tech/topics/benchmark.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [benchmarks](<https://devfeed.tech/tags/benchmarks.md>), [compose](<https://devfeed.tech/tags/compose.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [hackathon](<https://devfeed.tech/tags/hackathon.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [spring-2022-compose-hackathon](<https://devfeed.tech/tags/spring-2022-compose-hackathon.md>)

## AI overview

This post documents continued work on a piece table during a Compose hackathon. Attempts to optimize piece management and replace a persistent list with a linked list remained slower than the original gap buffer, while profiling highlighted substantial snapshot-related overhead and the need to address parallel snapshot writes.

## Source excerpt

I meant to write this on Friday, but got caught up trying to gather some last bits of data after my dev environment fell over and decided to stop running benchmarks altogether. Since Wednesday... In the last post, I left off having built the piece table I initially meant