---
title: kernelStartTime
framework: metal
role: symbol
role_heading: Instance Property
path: metal/mtlcommandbuffer/kernelstarttime
---

# kernelStartTime

The host time, in seconds, when the CPU begins to schedule the command buffer.

## Declaration

```swift
var kernelStartTime: CFTimeInterval { get }
```

## Discussion

Discussion You can calculate how much time the kernel spends scheduling a command buffer by subtracting this value from kernelEndTime. The kernel start and end times remain 0.0 until the GPU driver (on the CPU) schedules the command buffer to run on the GPU. Apps typically use these values after the waitUntilScheduled() method returns, or within a completion handler (see addScheduledHandler(_:) and addCompletedHandler(_:)).

## See Also

### Checking scheduling times on the CPU

- [kernelEndTime](metal/mtlcommandbuffer/kernelendtime.md)
