# The GPU and the Neural Engine, with the apps using each.

Canonical page: https://vitalsmac.com/features/gpu-and-neural-engine

A tab for the GPU and a tab for the Neural Engine: how hard each is working, which apps are using it, and a chart of the last minutes, in the window, the menu bar and on the Overview. On Apple silicon the Neural Engine has always been a mystery. Here it is a number.

## GPU: How busy the GPU is, and which app is keeping it busy.

The GPU tab shows how hard the GPU is working, its memory, the average and the peak, a chart of the last minutes, and the apps using it with the heaviest first, so a render or a game or a browser tab shows up as what it is.

- Use, memory, average and peak
- The apps using it, heaviest first
- A chart of the last 5, 15 or 30 minutes
- GPU temperature with the other sensors

## Neural Engine: Finally a number for the Neural Engine.

On Apple silicon, Vitals works out how hard the Neural Engine is working from the memory it moves against the most this Mac has moved, and names the apps that hold it open, so Photos indexing your library overnight is no longer invisible.

- How hard it is working
- The apps that hold it open
- A chart of the last minutes
- A notice when an app has kept it busy for twenty minutes

## Local models: Your local model runs on the GPU, not the Neural Engine.

Models run with PyTorch or MLX use the GPU, so an Ollama session shows up as a busy GPU and a quiet Neural Engine. That is correct, and surprising the first time. Ollama's memory shows under Ollama, where you would look for it.

- PyTorch and MLX run on the GPU
- Ollama's memory under Ollama
- The GPU turns red at 90% in the menu bar
- The GPU is in the history, so a render from an hour ago is still there

## Menu bar: An item for each, and a card on the Overview.

Both can be menu bar items, as a number, a graph or both, in your order, and both get a card on the Overview, so you can keep an eye on a long render without opening anything.

- A GPU item and a Neural Engine item
- A number, a graph or both
- Cards on the Overview
- In the dropdown with the rest

## Why it matters: gpu and neural engine on a Mac

Activity Monitor gives the GPU a column, % GPU, and a GPU History window, and gives the Neural Engine nothing. On Apple silicon the Neural Engine does real work, for Photos, Spotlight, dictation and on-device models, and there has been no way to see when, or for which app.

Meanwhile the GPU is where local models actually run. PyTorch and MLX use the GPU, not the Neural Engine, so an Ollama session shows up as a busy GPU and a quiet Neural Engine, which is correct and surprising.

Vitals gives each its own tab: how busy it is, the GPU's memory, the average and the peak, the apps using it heaviest first, and a chart of the last 5, 15 or 30 minutes. The Neural Engine's number is worked out from the memory it moves against the most this Mac has moved, and the apps that hold it open are named. Both can be menu bar items and Overview cards, and Vitals tells you when an app has kept the Neural Engine busy for twenty minutes.

## How to use it

1. **Open the GPU tab.** How busy the GPU is, its memory, the average and the peak, a chart of the last minutes, and the apps using it, heaviest first.
2. **Open the Neural Engine tab.** On a Mac with Apple silicon: how hard the Neural Engine is working, the apps that hold it open, and a chart of the last minutes.
3. **Put them in the menu bar.** Settings → Layout → Menu Bar: a GPU item, a Neural Engine item, as a number or a graph. Both have a card on the Overview.
4. **Let Vitals watch them.** The GPU reading turns red at 90%, and a notice comes when an app has kept the Neural Engine busy for twenty minutes. The GPU is in the history too, so a render from an hour ago is still there to see.

## Compared with Activity Monitor

| | Activity Monitor | Vitals |
| --- | --- | --- |
| The GPU | A column and a History window | A tab with the apps using it, memory, average and peak |
| The Neural Engine | Nothing | A tab: how hard, and which apps |
| Charts | A minute or two | The last 5, 15 or 30 minutes, and the history |
| Menu bar | None | An item for each |
| Notices | None | GPU red at 90%; the Neural Engine busy for twenty minutes |

## The words behind it

- [% GPU](https://vitalsmac.com/glossary/gpu-percent): % GPU is the share of the graphics processor's capacity that a process is using.
- [Unified memory](https://vitalsmac.com/glossary/unified-memory): Unified memory is the single pool of RAM in an Apple silicon Mac, shared by the CPU, the GPU and the Neural Engine.
- [MTLCompilerService](https://vitalsmac.com/glossary/mtlcompilerservice): MTLCompilerService is the macOS process that prepares graphics code for the GPU on behalf of apps that use Metal, Apple's graphics framework.
- [Performance and efficiency cores](https://vitalsmac.com/glossary/performance-efficiency-cores): Performance and efficiency cores are the two kinds of CPU core in Apple silicon Macs.

## Questions

### Does Vitals show Neural Engine usage?

Yes, on Macs with Apple silicon: how hard it is working, which apps are using it, and a chart of the last minutes, in the window, the menu bar and on the Overview.

### Why does my local model not show on the Neural Engine?

Models run with PyTorch or MLX use the GPU, not the Neural Engine. They show on the GPU tab.

### Does it show GPU memory?

Yes, with the GPU's use, average and peak, and the apps using it.

### Does Activity Monitor show this?

Activity Monitor has a GPU column and a GPU History window, and nothing for the Neural Engine.

### How does Vitals measure the Neural Engine?

From the memory it moves, against the most this Mac has ever moved. macOS does not say which app is working it, only which apps hold it open, and those are what Vitals names.

### Which Macs have the Neural Engine tab?

Macs with Apple silicon. On an Intel Mac there is no Neural Engine, and no tab.

### Why is the GPU busy when I run Ollama?

Because models run with PyTorch or MLX use the GPU, not the Neural Engine. They show on the GPU tab, and Ollama's memory shows under Ollama.

### Does it show the GPU's temperature?

Yes, with the other sensors, and the fans if the GPU is what is driving them.

## Read on

- [Ollama using too much memory on a Mac? How to see what is loaded, and unload it](https://vitalsmac.com/ollama-memory-usage-mac)
- [How to check CPU and memory usage on a Mac, app by app](https://vitalsmac.com/check-cpu-memory-usage-mac)
- [The 10 best system monitors for Mac](https://vitalsmac.com/best-system-monitor-for-mac)
- [Vitals vs Activity Monitor](https://vitalsmac.com/vs/activity-monitor)
- [Vitals vs iStat Menus](https://vitalsmac.com/vs/istat-menus)

## More of Vitals

Every feature is at [vitalsmac.com/features](https://vitalsmac.com/features). Vitals is one payment, with every update for life: [pricing](https://vitalsmac.com/pricing).
