# GetTotalAllocatedMemoryLong()

> The total memory allocated by the internal allocators in Unity. Unity reserves large pools of memory from the system; this includes double the required memory for textures because Unity keeps a copy of each texture on both the CPU and GPU. This function returns the amount of used memory in those pools.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.Profiling](/engine/6000.5/script-reference/unityengine/profiling.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
public static long GetTotalAllocatedMemoryLong()
```

### Returns

| Type                                                        | Description                                                                               |
| ----------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| [long](https://learn.microsoft.com/dotnet/api/system.int64) | The amount of memory allocated by Unity. This returns 0 if the Profiler is not available. |

### Examples

```csharp
using UnityEngine;
using UnityEngine.Profiling;

public class Example : MonoBehaviour
{
    void Update()
    {
        Debug.Log("Total Reserved memory by Unity: " + Profiler.GetTotalReservedMemoryLong() + "Bytes");
        Debug.Log("- Allocated memory by Unity: " + Profiler.GetTotalAllocatedMemoryLong() + "Bytes");
        Debug.Log("- Reserved but not allocated: " + Profiler.GetTotalUnusedReservedMemoryLong() + "Bytes");
    }
}
```
