145 lines
4.4 KiB
Markdown
145 lines
4.4 KiB
Markdown
---
|
|
name: profiler-get-memory-stats
|
|
description: Return memory statistics snapshot from UnityEngine.Profiling.Profiler — reserved, allocated, mono heap, graphics, etc. (in MB).
|
|
---
|
|
|
|
# Profiler / Get Memory Stats
|
|
|
|
Reads UnityEngine.Profiling.Profiler scalar memory counters and converts each from bytes to megabytes (`/1048576f`).
|
|
|
|
## Fields
|
|
|
|
- `TotalReservedMemoryMB` — `GetTotalReservedMemoryLong()`.
|
|
- `TotalAllocatedMemoryMB` — `GetTotalAllocatedMemoryLong()`.
|
|
- `TotalUnusedReservedMemoryMB` — `GetTotalUnusedReservedMemoryLong()`.
|
|
- `MonoHeapSizeMB` — `GetMonoHeapSizeLong()`.
|
|
- `MonoUsedSizeMB` — `GetMonoUsedSizeLong()`.
|
|
- `TempAllocatorSizeMB` — `GetTempAllocatorSize()`.
|
|
- `GraphicsMemoryMB` — `GetAllocatedMemoryForGraphicsDriver()`.
|
|
- `MaxUsedMemoryMB` — `maxUsedMemory`.
|
|
- `UsedHeapSizeMB` — `usedHeapSizeLong`.
|
|
|
|
## Behavior
|
|
|
|
Uses only built-in Unity APIs (`UnityEngine.Profiling.Profiler`). No external Unity package is required.
|
|
|
|
## How to Call
|
|
|
|
```bash
|
|
unity-mcp-cli run-tool profiler-get-memory-stats --input '{
|
|
"nothing": "string_value"
|
|
}'
|
|
```
|
|
|
|
> For complex input (multi-line strings, code), save the JSON to a file and use:
|
|
> ```bash
|
|
> unity-mcp-cli run-tool profiler-get-memory-stats --input-file args.json
|
|
> ```
|
|
>
|
|
> Or pipe via stdin (recommended):
|
|
> ```bash
|
|
> unity-mcp-cli run-tool profiler-get-memory-stats --input-file - <<'EOF'
|
|
> {"param": "value"}
|
|
> EOF
|
|
> ```
|
|
|
|
|
|
### Troubleshooting
|
|
|
|
If `unity-mcp-cli` is not found, either install it globally (`npm install -g unity-mcp-cli`) or use `npx unity-mcp-cli` instead.
|
|
Read the /unity-initial-setup skill for detailed installation instructions.
|
|
|
|
## Input
|
|
|
|
| Name | Type | Required | Description |
|
|
|------|------|----------|-------------|
|
|
| `nothing` | `string` | No | |
|
|
|
|
### Input JSON Schema
|
|
|
|
```json
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"nothing": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Output
|
|
|
|
### Output JSON Schema
|
|
|
|
```json
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"result": {
|
|
"$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Editor.API.Tool_Profiler-MemoryStatsData",
|
|
"description": "Memory statistics from the Unity Profiler. All values in megabytes unless otherwise noted."
|
|
}
|
|
},
|
|
"$defs": {
|
|
"com.IvanMurzak.Unity.MCP.Editor.API.Tool_Profiler-MemoryStatsData": {
|
|
"type": "object",
|
|
"properties": {
|
|
"TotalReservedMemoryMB": {
|
|
"type": "number",
|
|
"description": "Total reserved memory (UnityEngine.Profiling.Profiler.GetTotalReservedMemoryLong / 1048576)."
|
|
},
|
|
"TotalAllocatedMemoryMB": {
|
|
"type": "number",
|
|
"description": "Total allocated memory (UnityEngine.Profiling.Profiler.GetTotalAllocatedMemoryLong / 1048576)."
|
|
},
|
|
"TotalUnusedReservedMemoryMB": {
|
|
"type": "number",
|
|
"description": "Total unused reserved memory (UnityEngine.Profiling.Profiler.GetTotalUnusedReservedMemoryLong / 1048576)."
|
|
},
|
|
"MonoHeapSizeMB": {
|
|
"type": "number",
|
|
"description": "Mono heap size (UnityEngine.Profiling.Profiler.GetMonoHeapSizeLong / 1048576)."
|
|
},
|
|
"MonoUsedSizeMB": {
|
|
"type": "number",
|
|
"description": "Mono used size (UnityEngine.Profiling.Profiler.GetMonoUsedSizeLong / 1048576)."
|
|
},
|
|
"TempAllocatorSizeMB": {
|
|
"type": "number",
|
|
"description": "Temp allocator size (UnityEngine.Profiling.Profiler.GetTempAllocatorSize / 1048576)."
|
|
},
|
|
"GraphicsMemoryMB": {
|
|
"type": "number",
|
|
"description": "Graphics memory reserved by the driver (UnityEngine.Profiling.Profiler.GetAllocatedMemoryForGraphicsDriver / 1048576)."
|
|
},
|
|
"MaxUsedMemoryMB": {
|
|
"type": "number",
|
|
"description": "Maximum used memory observed (UnityEngine.Profiling.Profiler.maxUsedMemory / 1048576)."
|
|
},
|
|
"UsedHeapSizeMB": {
|
|
"type": "number",
|
|
"description": "Used heap size (UnityEngine.Profiling.Profiler.usedHeapSizeLong / 1048576)."
|
|
}
|
|
},
|
|
"required": [
|
|
"TotalReservedMemoryMB",
|
|
"TotalAllocatedMemoryMB",
|
|
"TotalUnusedReservedMemoryMB",
|
|
"MonoHeapSizeMB",
|
|
"MonoUsedSizeMB",
|
|
"TempAllocatorSizeMB",
|
|
"GraphicsMemoryMB",
|
|
"MaxUsedMemoryMB",
|
|
"UsedHeapSizeMB"
|
|
],
|
|
"description": "Memory statistics from the Unity Profiler. All values in megabytes unless otherwise noted."
|
|
}
|
|
},
|
|
"required": [
|
|
"result"
|
|
]
|
|
}
|
|
```
|
|
|