On devices where the L1 cache and shared memory use the same hardware resources, this sets through cacheConfig
the preferred cache configuration for the current host thread. This is only a preference. The runtime will use the requested configuration if possible, but it is free to choose a different configuration if required to execute the function. Any function preference set via cudaFuncSetCacheConfig (C API) or cudaFuncSetCacheConfig (C++ API) will be preferred over this thread-wide setting. Setting the thread-wide cache configuration to cudaFuncCachePreferNone will cause subsequent kernel launches to prefer to not change the cache configuration unless required to launch the kernel.
This setting does nothing on devices where the size of the L1 cache and shared memory are fixed.
Launching a kernel with a different preference than the most recent preference setting may insert a device-side synchronization point.
The supported cache configurations are:
- Parameters:
-
| cacheConfig | - Requested cache configuration |
- Returns:
- cudaSuccess, cudaErrorInitializationError
- Note:
- Note that this function may also return error codes from previous, asynchronous launches.
- See also:
- cudaThreadGetCacheConfig, cudaFuncSetCacheConfig (C API), cudaFuncSetCacheConfig (C++ API)