Cache for nvrtc modules
This type is used internally by the module and is not exposed to the user It maintains a list of compiled nvrtc modules and provides methods to add new modules and retrieve existing ones
The cache automatically grows as needed
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| logical, | private | :: | is_created | = | .false. |
Flag that indicates if cache is created |
|
| type(nvrtc_module), | private, | allocatable | :: | cache(:) |
Array of cached modules |
||
| integer(kind=int32), | private | :: | size |
Number of entries in cache |
Creates cache
Creates cache
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(nvrtc_module_cache), | intent(inout) | :: | self |
Cache instance |
Adds new entry to cache
Adds new entry to cache
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(nvrtc_module_cache), | intent(inout) | :: | self |
Cache instance |
||
| type(nvrtc_module), | intent(in) | :: | m |
Module to add |