[{"data":1,"prerenderedAt":509},["ShallowReactive",2],{"docs-navigation":3,"\u002Fdocs\u002Fapp\u002Fperformance-monitor":231,"\u002Fdocs\u002Fapp\u002Fperformance-monitor-surround":504},[4],{"title":5,"path":6,"stem":7,"children":8,"page":-1},"Docs","\u002Fdocs","docs",[9,12,16,20,69,90,123,144,165,190],{"title":10,"path":6,"stem":11},"Gerbtrace Documentation","docs\u002Findex",{"title":13,"path":14,"stem":15},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",{"title":17,"path":18,"stem":19},"Licensing","\u002Fdocs\u002Flicensing","docs\u002F2.licensing",{"title":21,"path":22,"stem":23,"children":24,"page":68},"Viewer","\u002Fdocs\u002Fviewer","docs\u002F3.viewer",[25,29,33,37,41,45,49,53,56,60,64],{"title":26,"path":27,"stem":28},"Files","\u002Fdocs\u002Fviewer\u002Ffiles","docs\u002F3.viewer\u002F01.files",{"title":30,"path":31,"stem":32},"PCB","\u002Fdocs\u002Fviewer\u002Fpcb","docs\u002F3.viewer\u002F02.pcb",{"title":34,"path":35,"stem":36},"Panel","\u002Fdocs\u002Fviewer\u002Fpanel","docs\u002F3.viewer\u002F03.panel",{"title":38,"path":39,"stem":40},"Paste","\u002Fdocs\u002Fviewer\u002Fpaste","docs\u002F3.viewer\u002F04.paste",{"title":42,"path":43,"stem":44},"SMD","\u002Fdocs\u002Fviewer\u002Fsmd","docs\u002F3.viewer\u002F05.smd",{"title":46,"path":47,"stem":48},"THT","\u002Fdocs\u002Fviewer\u002Ftht","docs\u002F3.viewer\u002F06.tht",{"title":50,"path":51,"stem":52},"BOM","\u002Fdocs\u002Fviewer\u002Fbom","docs\u002F3.viewer\u002F07.bom",{"title":5,"path":54,"stem":55},"\u002Fdocs\u002Fviewer\u002Fdocs","docs\u002F3.viewer\u002F08.docs",{"title":57,"path":58,"stem":59},"Conversation","\u002Fdocs\u002Fviewer\u002Fconversation","docs\u002F3.viewer\u002F09.conversation",{"title":61,"path":62,"stem":63},"Summary","\u002Fdocs\u002Fviewer\u002Fsummary","docs\u002F3.viewer\u002F10.summary",{"title":65,"path":66,"stem":67},"Pricing","\u002Fdocs\u002Fviewer\u002Fpricing","docs\u002F3.viewer\u002F11.pricing",false,{"title":70,"path":71,"stem":72,"children":73,"page":68},"Tools","\u002Fdocs\u002Ftools","docs\u002F4.tools",[74,78,82,86],{"title":75,"path":76,"stem":77},"Exports","\u002Fdocs\u002Ftools\u002Fexports","docs\u002F4.tools\u002F1.exports",{"title":79,"path":80,"stem":81},"Compare","\u002Fdocs\u002Ftools\u002Fcompare","docs\u002F4.tools\u002F2.compare",{"title":83,"path":84,"stem":85},"Package Manager","\u002Fdocs\u002Ftools\u002Fpackage-manager","docs\u002F4.tools\u002F3.package-manager",{"title":87,"path":88,"stem":89},"Draw Tool","\u002Fdocs\u002Ftools\u002Fdraw-tool","docs\u002F4.tools\u002F4.draw-tool",{"title":91,"path":92,"stem":93,"children":94,"page":68},"Collaboration","\u002Fdocs\u002Fcollaboration","docs\u002F5.collaboration",[95,99,103,107,111,115,119],{"title":96,"path":97,"stem":98},"Team Settings","\u002Fdocs\u002Fcollaboration\u002Fteam-settings","docs\u002F5.collaboration\u002F1.team-settings",{"title":100,"path":101,"stem":102},"Team Members","\u002Fdocs\u002Fcollaboration\u002Fteam-members","docs\u002F5.collaboration\u002F2.team-members",{"title":104,"path":105,"stem":106},"User Profile","\u002Fdocs\u002Fcollaboration\u002Fuser-profile","docs\u002F5.collaboration\u002F3.user-profile",{"title":108,"path":109,"stem":110},"Spaces","\u002Fdocs\u002Fcollaboration\u002Fspaces","docs\u002F5.collaboration\u002F4.spaces",{"title":112,"path":113,"stem":114},"Notifications","\u002Fdocs\u002Fcollaboration\u002Fnotifications","docs\u002F5.collaboration\u002F6.notifications",{"title":116,"path":117,"stem":118},"Plans & Billing","\u002Fdocs\u002Fcollaboration\u002Fplans-and-billing","docs\u002F5.collaboration\u002F7.plans-and-billing",{"title":120,"path":121,"stem":122},"Connected Apps & MCP","\u002Fdocs\u002Fcollaboration\u002Fconnected-apps","docs\u002F5.collaboration\u002F8.connected-apps",{"title":124,"path":125,"stem":126,"children":127,"page":68},"App","\u002Fdocs\u002Fapp","docs\u002F6.app",[128,132,136,140],{"title":129,"path":130,"stem":131},"Desktop App","\u002Fdocs\u002Fapp\u002Fdesktop","docs\u002F6.app\u002F1.desktop",{"title":133,"path":134,"stem":135},"Light & Dark Mode","\u002Fdocs\u002Fapp\u002Flight-dark-mode","docs\u002F6.app\u002F2.light-dark-mode",{"title":137,"path":138,"stem":139},"Performance Monitor","\u002Fdocs\u002Fapp\u002Fperformance-monitor","docs\u002F6.app\u002F3.performance-monitor",{"title":141,"path":142,"stem":143},"Report a Bug","\u002Fdocs\u002Fapp\u002Freport-a-bug","docs\u002F6.app\u002F4.report-a-bug",{"title":145,"path":146,"stem":147,"children":148,"page":68},"Guides","\u002Fdocs\u002Fguides","docs\u002F7.guides",[149,153,157,161],{"title":150,"path":151,"stem":152},"Importing Files","\u002Fdocs\u002Fguides\u002Fimporting-files","docs\u002F7.guides\u002F1.importing-files",{"title":154,"path":155,"stem":156},"Supported Formats","\u002Fdocs\u002Fguides\u002Fsupported-formats","docs\u002F7.guides\u002F2.supported-formats",{"title":158,"path":159,"stem":160},"Package Library","\u002Fdocs\u002Fguides\u002Fpackage-library","docs\u002F7.guides\u002F3.package-library",{"title":162,"path":163,"stem":164},"Panel Checks","\u002Fdocs\u002Fguides\u002Fpanel-checks","docs\u002F7.guides\u002F4.panel-checks",{"title":166,"path":167,"stem":168,"children":169,"page":68},"Reference","\u002Fdocs\u002Freference","docs\u002F8.reference",[170,174,178,182,186],{"title":171,"path":172,"stem":173},"BOM File Format","\u002Fdocs\u002Freference\u002Fbom-format","docs\u002F8.reference\u002F1.bom-format",{"title":175,"path":176,"stem":177},"Package Definitions","\u002Fdocs\u002Freference\u002Fpackage-definitions","docs\u002F8.reference\u002F2.package-definitions",{"title":179,"path":180,"stem":181},"Package Naming","\u002Fdocs\u002Freference\u002Fpackage-naming","docs\u002F8.reference\u002F3.package-naming",{"title":183,"path":184,"stem":185},"TPSys Format","\u002Fdocs\u002Freference\u002Ftpsys-format","docs\u002F8.reference\u002F4.tpsys-format",{"title":187,"path":188,"stem":189},"Jet Printing","\u002Fdocs\u002Freference\u002Fjet-printing","docs\u002F8.reference\u002F5.jet-printing",{"title":191,"path":192,"stem":193,"children":194,"page":68},"Development","\u002Fdocs\u002Fdevelopment","docs\u002F9.development",[195,199,203,207,211,215,219,223,227],{"title":196,"path":197,"stem":198},"Development Setup","\u002Fdocs\u002Fdevelopment\u002Fsetup","docs\u002F9.development\u002F1.setup",{"title":200,"path":201,"stem":202},"Architecture","\u002Fdocs\u002Fdevelopment\u002Farchitecture","docs\u002F9.development\u002F2.architecture",{"title":204,"path":205,"stem":206},"CAD Libraries","\u002Fdocs\u002Fdevelopment\u002Fcad-libraries","docs\u002F9.development\u002F3.cad-libraries",{"title":208,"path":209,"stem":210},"Release Process","\u002Fdocs\u002Fdevelopment\u002Frelease-process","docs\u002F9.development\u002F4.release-process",{"title":212,"path":213,"stem":214},"Error Monitoring","\u002Fdocs\u002Fdevelopment\u002Ferror-monitoring","docs\u002F9.development\u002F5.error-monitoring",{"title":216,"path":217,"stem":218},"Contributing","\u002Fdocs\u002Fdevelopment\u002Fcontributing","docs\u002F9.development\u002F6.contributing",{"title":220,"path":221,"stem":222},"Commit Conventions","\u002Fdocs\u002Fdevelopment\u002Fcommit-conventions","docs\u002F9.development\u002F7.commit-conventions",{"title":224,"path":225,"stem":226},"Sidebar Design","\u002Fdocs\u002Fdevelopment\u002Fsidebar-design","docs\u002F9.development\u002F8.sidebar-design",{"title":228,"path":229,"stem":230},"Operational Runbooks","\u002Fdocs\u002Fdevelopment\u002Frunbooks","docs\u002F9.development\u002F9.runbooks",{"id":232,"title":137,"body":233,"description":497,"extension":498,"links":499,"meta":500,"navigation":501,"path":138,"seo":502,"stem":139,"__hash__":503},"docs\u002Fdocs\u002F6.app\u002F3.performance-monitor.md",{"type":234,"value":235,"toc":483},"minimark",[236,240,248,256,261,264,268,271,323,327,347,351,359,379,383,397,401,404,430,434,441,444,448,459,463,466,480],[237,238,137],"h1",{"id":239},"performance-monitor",[241,242,243],"p",{},[244,245],"img",{"alt":246,"src":247},"Performance Monitor showing system info, frame timing, and memory metrics","\u002Fimages\u002Fdocs\u002Fperformance-monitor.png",[241,249,250,251,255],{},"The Performance Monitor is accessible from the ",[252,253,254],"strong",{},"Settings"," menu (gear icon). It displays comprehensive real-time metrics to help diagnose performance issues and collect diagnostic data for support.",[257,258,260],"h2",{"id":259},"project-context","Project context",[241,262,263],{},"The header shows the current project name, team name, your user name, and the project ID. This context is included when copying stats.",[257,265,267],{"id":266},"system-information","System information",[241,269,270],{},"A summary of the current environment:",[272,273,274,281,287,293,299,305,311,317],"ul",{},[275,276,277,280],"li",{},[252,278,279],{},"App version"," – the running Gerbtrace version",[275,282,283,286],{},[252,284,285],{},"Platform"," – detected OS and whether you are using the web or desktop app",[275,288,289,292],{},[252,290,291],{},"Browser"," – browser name and version",[275,294,295,298],{},[252,296,297],{},"Window \u002F Screen"," – window dimensions, screen resolution, and device pixel ratio",[275,300,301,304],{},[252,302,303],{},"CPU"," – number of logical cores",[275,306,307,310],{},[252,308,309],{},"RAM"," – estimated device memory (when available)",[275,312,313,316],{},[252,314,315],{},"GPU"," – WebGL renderer string",[275,318,319,322],{},[252,320,321],{},"Network"," – connection type and effective bandwidth (when available)",[257,324,326],{"id":325},"frame-timing","Frame timing",[272,328,329,335,341],{},[275,330,331,334],{},[252,332,333],{},"FPS"," – approximate frames per second for canvas rendering",[275,336,337,340],{},[252,338,339],{},"Frame time"," – milliseconds per frame",[275,342,343,346],{},[252,344,345],{},"Long tasks"," – count of frames exceeding 50 ms in a rolling 30-second window",[257,348,350],{"id":349},"memory","Memory",[241,352,353,354,358],{},"When the browser supports the ",[355,356,357],"code",{},"performance.memory"," API:",[272,360,361,367,373],{},[275,362,363,366],{},[252,364,365],{},"JS Heap Used"," – current JavaScript heap usage",[275,368,369,372],{},[252,370,371],{},"JS Heap Allocated"," – total allocated heap",[275,374,375,378],{},[252,376,377],{},"JS Heap Limit"," – maximum heap size",[257,380,382],{"id":381},"storage","Storage",[272,384,385,391],{},[275,386,387,390],{},[252,388,389],{},"Browser storage"," – usage and quota from the Storage Manager API",[275,392,393,396],{},[252,394,395],{},"Project size estimate"," – approximate storage footprint of the current project",[257,398,400],{"id":399},"render-cache","Render cache",[241,402,403],{},"Internal rendering statistics:",[272,405,406,412,418,424],{},[275,407,408,411],{},[252,409,410],{},"Board scene cache"," – cached canvas size",[275,413,414,417],{},[252,415,416],{},"Panel tile cache"," – number of cached panel tiles",[275,419,420,423],{},[252,421,422],{},"Canvas pool"," – active and idle canvas elements",[275,425,426,429],{},[252,427,428],{},"Draw counts"," – number of draw calls per frame",[257,431,433],{"id":432},"mini-overlay","Mini overlay",[241,435,436,437,440],{},"Toggle ",[252,438,439],{},"Show mini overlay"," to display a compact FPS \u002F frame time \u002F heap usage bar at the bottom of the canvas. The mini overlay stays visible while you work. Double-click it to open the full Performance Monitor.",[241,442,443],{},"FPS values are color-coded: green (55+ FPS), amber (30–54 FPS), red (below 30 FPS).",[257,445,447],{"id":446},"copy-to-clipboard","Copy to clipboard",[241,449,450,451,454,455,458],{},"Click ",[252,452,453],{},"Copy"," to copy all performance stats as formatted text. This is useful for pasting into support tickets or bug reports alongside a ",[456,457,141],"a",{"href":142}," submission.",[257,460,462],{"id":461},"when-to-use","When to use",[241,464,465],{},"The Performance Monitor is useful when:",[272,467,468,471,474,477],{},[275,469,470],{},"The canvas feels slow or laggy with a complex board",[275,472,473],{},"You want to verify that rendering is performing efficiently",[275,475,476],{},"You need to report performance data alongside a bug report",[275,478,479],{},"You want to identify whether the bottleneck is GPU, memory, or network related",[241,481,482],{},"Close the monitor when not needed, as the overlay itself has a small performance cost.",{"title":484,"searchDepth":485,"depth":486,"links":487},"",3,2,[488,489,490,491,492,493,494,495,496],{"id":259,"depth":486,"text":260},{"id":266,"depth":486,"text":267},{"id":325,"depth":486,"text":326},{"id":349,"depth":486,"text":350},{"id":381,"depth":486,"text":382},{"id":399,"depth":486,"text":400},{"id":432,"depth":486,"text":433},{"id":446,"depth":486,"text":447},{"id":461,"depth":486,"text":462},"Real-time rendering, system, and memory metrics for diagnosing canvas and performance issues.","md",null,{},true,{"title":137,"description":497},"xtgNFS4gOrE2U1OmMDAH9M4A3_2ioG_o-n-zv6Cqtc4",[505,507],{"title":133,"path":134,"stem":135,"description":506,"children":-1},"Switch between light and dark interface themes.",{"title":141,"path":142,"stem":143,"description":508,"children":-1},"Submit bug reports with optional email and description directly from within Gerbtrace.",1790998745127]