Development Reference Guides

Contents

fsycl-esimd-force-stateless-mem

Determines whether the compiler enforces stateless memory accesses within ESIMD kernels on the target device.
This is an experimental feature.

Syntax

Linux:
-fsycl-esimd-force-stateless-mem
-fno-sycl-esimd-force-stateless-mem
Windows:
-fsycl-esimd-force-stateless-mem
-fno-sycl-esimd-force-stateless-mem
Arguments
None
Default
OFF
Memory accesses that are stateful are not converted to stateless.
Description
This option determines whether the compiler enforces stateless memory accesses within ESIMD kernels on the target device.
This is an experimental feature.
Option
-fsycl-esimd-force-stateless-mem
uses SYCL* accessors to convert stateful memory to stateless memory. SIMD intrinsics that cannot be automatically converted are disabled and reported during the compilation phase.
In cases where a target does not support stateful accesses, option
-fsycl-esimd-force-stateless-mem
may be helpful to avoid issues caused by the 4Gb-per-surface limitation in programs written with SYCL accessors.
If you specify
-fno-sycl-esimd-force-stateless-mem
, the compiler does not enforce stateless memory accesses.
When using the icx/icpx compiler driver for option
-fsycl-esimd-force-stateless-mem
, you must also specify option
-fsycl
.
When using the dpcpp compiler driver, option
-fsycl
is implied by default.
When SYCL offloading is enabled, this option only applies to device-specific compilation.
IDE Equivalent
None
Alternate Options
None

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.