- Created crash analysis for 2026-03-17 OOM event. - Documented stability test results and memory tuning effects. - Added PARA-structured workflows for EOD protocol. - Updated workstation health report for current 16GB swap status.
51 lines
2.2 KiB
Markdown
51 lines
2.2 KiB
Markdown
---
|
|
description: >-
|
|
Detailed performance optimization strategies, kernel parameter tuning, and
|
|
system maintenance routines for the mw-pfeddersheim-workstation.
|
|
tags:
|
|
- performance
|
|
- optimization
|
|
- kernel-tuning
|
|
- maintenance
|
|
last_updated: '2026-03-17'
|
|
---
|
|
|
|
# mw-pfeddersheim-workstation Performance Tuning
|
|
|
|
## Overview
|
|
This document tracks optimization decisions, system tuning parameters, and cleanup routines implemented for the workstation to ensure maximum resource efficiency and stability.
|
|
|
|
## Current System State (2026-02-27)
|
|
- **CPU**: AMD/Intel (High core count assumed from load distribution)
|
|
- **RAM**: 64GB
|
|
- **Storage**: NVMe (77% usage detected)
|
|
- **OS**: Manjaro/Arch Linux
|
|
|
|
## Optimization Strategies
|
|
|
|
### 1. Kernel Parameter Tuning (Ansible)
|
|
- **vm.swappiness**: Set to `10` to prefer RAM over swap on the 64GB machine.
|
|
- **fs.inotify.max_user_watches**: Increase to `524288` for IDEs and build tools.
|
|
- **vm.vfs_cache_pressure**: Set to `50` to improve filesystem cache retention.
|
|
- **systemd-oomd**: Enabled to prevent system-wide hangs during severe memory pressure (User-space OOM killer).
|
|
- **zswap**: Enabled via GRUB to provide compressed swap cache, improving performance when swapping is necessary.
|
|
|
|
### 2. Docker Resource Management
|
|
- **Memory Limits**: Implemented `mem_limit` on critical containers (Firebird: 4G, Mailpit: 512M) to prevent runaway processes from consuming entire system memory.
|
|
|
|
### 2. Storage & Filesystem Cleanup
|
|
- **Docker**: Automated pruning of unused images and volumes via `scripts/maintenance.sh`.
|
|
- **Journald**: Vacuuming logs older than 7 days or exceeding 500MB.
|
|
- **Package Manager**: Maintaining only the last 2 versions of packages in the cache.
|
|
|
|
### 3. Service Optimization
|
|
- **Ananicy**: (Optional) Use Ananicy-cpp for automatic process prioritizing.
|
|
|
|
## Implementation Log
|
|
|
|
| Date | Type | Description |
|
|
|------|------|-------------|
|
|
| 2026-02-27 | Initial | Initial tuning document and strategy established. |
|
|
| 2026-02-27 | Audit | Performed system inspection: Boot time 33.8s, RAM usage 6.5GB/62GB, identified KVM and UVC errors. |
|
|
| 2026-03-17 | Stability | Enabled `systemd-oomd` and `zswap`, added Docker memory limits following system hang analysis. |
|