# Cross-platform Burst intrinsics


The [`Unity.Burst.Intrinsics.Common`](/engine/6000.7/script-reference/unity/burst/intrinsics/common.md) intrinsics are for functionality shared across the hardware targets that Burst supports.

## Pause

[`Unity.Burst.Intrinsics.Common.Pause`](/engine/6000.7/script-reference/unity/burst/intrinsics/common/pause.md) is an intrinsic that requests that the CPU pause the current thread. It maps to `pause` on x86, and `yield` on ARM.

Use it to stop spin locks over contending on an atomic access, which reduces contention and power on that section of code.

## Prefetch

The `Unity.Burst.Intrinsics.Common.Prefetch` is an intrinsic that provides a hint that Burst should prefetch the memory location into the cache.

## umul128

Use the [`Unity.Burst.Intrinsics.Common.umul128`](/engine/6000.7/script-reference/unity/burst/intrinsics/common/umul128.md) intrinsic to access 128-bit unsigned multiplication. These multiplies are useful for hashing functions. It maps 1:1 with hardware instructions on x86 and ARM targets.

## InterlockedAnd & InterlockedOr

The `Unity.Burst.Intrinsics.Common.InterlockedAnd` and `Unity.Burst.Intrinsics.Common.InterlockedOr` are intrinsics that provides atomic and/or operations on `int`, `uint`, `long`, and `ulong` types.

## Additional resources

* [`Unity.Burst.Intrinsics.Common` API reference](/engine/6000.7/script-reference/unity/burst/intrinsics/common.md)
* [Processor-specific SIMD extensions](/engine/6000.7/manual/programming-environment/script-compilation/burst/csharp-burst-intrinsics/processors.md)
* [Burst Arm Neon intrinsics reference](/engine/6000.7/manual/programming-environment/script-compilation/burst/csharp-burst-intrinsics/neon.md)
