Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ENG-1756: (WIP!) Malloc Benchmark Testing #476

Draft
wants to merge 9 commits into
base: main
Choose a base branch
from

Conversation

besler613
Copy link
Contributor

Summary & Motivation (Problem vs. Solution)

This PR introduces minimalistic memory allocation benchmark testing for our base QOS images. The basic design ideas are:

  • The benchmarking container definition (src/images/benchmarking/Containerfile) requires a BASE_IMAGE argument to be provided, and uses that argument to essentially "inherit" from the base image. This guarantees that the benchmarking image is identical to the base image, with the only addition being the benchmarking binaries and the /benchmark entrypoing.
  • Similarly, the infra specifics have been abstracted from the Kubernetes component configurations (e.g. kustomize/components/qos_enclave_benchmarking) to a shared location kustomize/components/base, which is consumed by both the base component and the benchmarking version. Again, this guarantees that the benchmarking component uses identical infra as the base component, with the only difference being that the container definition references the benchmarking image (see above).

How I Tested These Changes

TBD

Pre merge check list

  • Update CHANGELOG.MD

@besler613 besler613 requested a review from lrvick July 20, 2024 01:29
Copy link

linear bot commented Jul 20, 2024

ENG-1756 QOS - Benchmark Testing for StageX Containers

Problem

One takeaway of this conversation, which describes the Mysten team's discovery of suboptimal memory allocation in our StageX kernels as well as their plans to address this by modularizing the allocators so they can be swapped, was that Turnkey would benefit from the incremental development of low-level benchmark testing for our base StageX images.

Solution

Develop a Suite of Benchmark Tests in our QOS library with testing patterns loosely based on the characteristic operations of Turnkey applications. This suite could be built out on an as-needed basis, with the first components focusing on Memory Allocation Performance.

Deliverables

  1. A minimalistic suite of benchmark tests which characterize memory allocation performance.
  2. The introduction of reusable and extensible components, patterns & documentation for benchmark test development.

@besler613 besler613 changed the title ENG-1756: Maloc Benchmark Testing ENG-1756: (WIP!) Maloc Benchmark Testing Jul 20, 2024
@cr-tk cr-tk changed the title ENG-1756: (WIP!) Maloc Benchmark Testing ENG-1756: (WIP!) Malloc Benchmark Testing Sep 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant