thatopen-errors-performance

Identify and remediate memory leaks and GPU usage in ThatOpen BIM viewers.

17|1|Updated Mar 20, 2026
One-click install
npx skills add https://github.com/OpenAEC-Foundation/ThatOpen-Claude-Skill-Package --skill thatopen-errors-performance
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: thatopen-errors-performance
Source: https://github.com/OpenAEC-Foundation/ThatOpen-Claude-Skill-Package/tree/main/skills/source/thatopen-errors/thatopen-errors-performance
Command: npx skills add https://github.com/OpenAEC-Foundation/ThatOpen-Claude-Skill-Package --skill thatopen-errors-performance

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

ThatOpen applications often suffer from memory leaks, slow rendering, and browser tab crashes when handling large BIM models. This skill codifies disposal patterns, worker offloading, and memory budgeting to prevent undisposed resources and UI freezes.

Core Features & Use Cases

  • Disposal discipline: enforce proper teardown order and per-model cleanup to avoid GPU memory retention.
  • Worker offloading: delegate heavy operations to Web Workers to keep the main thread responsive.
  • Memory budgeting and profiling: provide guidelines and patterns for monitoring memory usage during development and production.
  • Common scenarios: large models, repeated load/unload cycles, and long-running sessions where stability matters.

Quick Start

Configure your ThatOpen app to dispose resources properly, offload heavy work to a worker, and monitor memory to prevent leaks.

Frequently Asked Questions about thatopen-errors-performance

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Why does my ThatOpen BIM viewer leak memory and crash the browser tab with large models?

Memory leaks in ThatOpen BIM viewers occur when large models are loaded and unloaded repeatedly without proper disposal calls, causing GPU memory retention. Enforcing a strict disposal discipline and per-model cleanup order prevents undisposed resources and tab crashes.

How do I diagnose high GPU usage and slow rendering in ThatOpen applications?

Diagnose high GPU usage and slow rendering by applying memory monitoring patterns to identify undisposed resources and performance bottlenecks. Offloading heavy operations to Web Workers keeps the main thread responsive and stabilizes rendering.

What is the best way to handle repeated load and unload cycles in BIM viewers?

The best way to handle repeated load and unload cycles is by enforcing explicit disposal calls and per-model cleanup to avoid GPU memory retention. Memory budgeting and profiling guidelines ensure stable performance during long-running sessions.

Do I need Web Workers to keep the UI responsive when rendering large BIM models?

Yes, Web Workers are required to offload heavy operations from the main thread, keeping the UI responsive. A proper worker setup combined with memory monitoring patterns prevents UI freezes during large-model rendering.

How to fix undisposed resources causing performance bottlenecks in ThatOpen?

Fix undisposed resources by applying an explicit teardown order and per-model cleanup to prevent GPU memory retention. Combine disposal discipline with worker offloading and memory budgeting to eliminate performance bottlenecks.