Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
66 lines
1.2 KiB
Nix
66 lines
1.2 KiB
Nix
{
|
|
lib,
|
|
bootstrapData,
|
|
db,
|
|
}:
|
|
|
|
bootstrapData
|
|
// {
|
|
/**
|
|
All CUDA capabilities, sorted by version.
|
|
|
|
NOTE: Since the capabilities are sorted by version and architecture/family-specific features are
|
|
appended to the minor version component, the sorted list groups capabilities by baseline feature
|
|
set.
|
|
|
|
# Type
|
|
|
|
```
|
|
allSortedCudaCapabilities :: [CudaCapability]
|
|
```
|
|
|
|
# Example
|
|
|
|
```
|
|
allSortedCudaCapabilities = [
|
|
"5.0"
|
|
"5.2"
|
|
"6.0"
|
|
"6.1"
|
|
"7.0"
|
|
"7.2"
|
|
"7.5"
|
|
"8.0"
|
|
"8.6"
|
|
"8.7"
|
|
"8.9"
|
|
"9.0"
|
|
"9.0a"
|
|
"10.0"
|
|
"10.0a"
|
|
"10.0f"
|
|
"10.1"
|
|
"10.1a"
|
|
"10.1f"
|
|
"10.3"
|
|
"10.3a"
|
|
"10.3f"
|
|
];
|
|
```
|
|
*/
|
|
allSortedCudaCapabilities = lib.sort lib.versionOlder (lib.attrNames db.cudaCapabilityToInfo);
|
|
|
|
/**
|
|
Mapping of CUDA micro-architecture name to capabilities belonging to that micro-architecture.
|
|
|
|
# Type
|
|
|
|
```
|
|
cudaArchNameToCapabilities :: AttrSet NonEmptyStr (NonEmptyListOf CudaCapability)
|
|
```
|
|
*/
|
|
cudaArchNameToCapabilities = lib.groupBy (
|
|
cudaCapability: db.cudaCapabilityToInfo.${cudaCapability}.archName
|
|
) db.allSortedCudaCapabilities;
|
|
}
|