# Performance Analyzer

![](/files/5JX7x1oifZIQEiFI9Jbx)

Create the best experiences by understanding which Visual Assets are contributing to load times.

### Platform

Performance settings are now their own page in the Settings section.

<figure><img src="/files/0Hu9H8vIfdU0ihLSPbGC" alt="" width="563"><figcaption></figcaption></figure>

A Size column has been added to Catalog Items and Assets.

<figure><img src="/files/9xlMCGb3g8Troj0MwNno" alt=""><figcaption></figcaption></figure>

The platform calculates the file size and displays the sizes when they are ready.

<figure><img src="/files/spMLo9c5XrdhVx4f3ASE" alt=""><figcaption></figcaption></figure>

The Size column can be sorted ascending and descending to address Assets that contribute toward long loading times for WebGL and AR experiences.

***Note: Threekit will calculate the sizes when Items and Assets are created, viewed, or updated.***

<figure><img src="/files/amUEATjgwdKk56XCbcbu" alt="" width="329"><figcaption></figcaption></figure>

For Catalog Items, a new Performance component will display the file sizes of the assets that contribute to that Item’s size, including Part Reference Attribute Option sizes and Stage assets sizes.

&#x20;

<figure><img src="/files/xKHKm4vXBBINTyqfdci1" alt=""><figcaption></figcaption></figure>

To help you identify Items and Assets that are large, you can set the Maximum File Size toggle and the size for the Platform to use to Flag Items and Assets that exceed the set size. A warning icon will be displayed in the Size column. As a starting point, we recommend 1.5MBs (to flag Items and Assets). Note that the best practice for Texture files size is between 50-400kb (which the Max Files Size setting of 1.5MB, for example, will not flag).

&#x20;

![](/files/w9vaYeq5ouoTSo9acX8v)

### Client-side Debug Mode

The player now has a "debug" mode to help you see exactly what assets are loading and the events that lead to them.

Turn on debug mode by adding the following player embed option:

```
_mode: "debug"
```

With that enabled, you can fetch a list of all the assets loaded in the scene:

![](/files/y7lZfjGyrFFxbHBq08eO)

Using the command:

```
api.enableApi('store').getIn(['sceneGraph','files'])
```

You can fetch a list of the events that lead to those assets loading:

![](/files/a83XJMk2pEab0t0mPkwD)

Using the command:

```
api.enableApi('store').getIn(['sceneGraph','events'])
```

### Pre-fetch Assets

To enhance the experience of realtime 3D (WebGL) experiences, you can pre-fetch the assets for popular configurations so that the end user doesn't have to wait for them to download.

You can specify specific attributes and their values using the following command:

```
playerApi.getConfigurator().then(config=>config.prefetchAttributes(['Color']))
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://community.threekit.com/releases/2022/spring-22-release/performance-analyzer.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
