Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-07-26 08:22:17

0001 # SPDX-PackageName = "traccc, a part of the ACTS project"
0002 # SPDX-FileCopyrightText: CERN
0003 # SPDX-License-Identifier: MPL-2.0
0004 
0005 
0006 def simplify_name(name):
0007     """
0008     Simplify a kernel name in a NCU profile, stripping the return type,
0009     arguments, and templates.
0010     """
0011     if name[:5] == "void ":
0012         name = name[5:]
0013 
0014     val = ""
0015 
0016     while name:
0017         if name[:2] == "::":
0018             val = ""
0019             name = name[2:]
0020         elif name[0] == "(" or name[0] == "<":
0021             return val
0022         else:
0023             val = val + name[0]
0024             name = name[1:]
0025 
0026     raise RuntimeError("An error occured in name simpliciation")
0027 
0028 
0029 def map_name(name):
0030     """
0031     Map some non-traccc kernel names to human-readable versions.
0032     """
0033     if name in [
0034         "DeviceRadixSortUpsweepKernel",
0035         "RadixSortScanBinsKernel",
0036         "DeviceRadixSortDownsweepKernel",
0037         "DeviceRadixSortSingleTileKernel",
0038         "DeviceMergeSortBlockSortKernel",
0039         "DeviceMergeSortMergeKernel",
0040         "DeviceMergeSortPartitionKernel",
0041         "DeviceRadixSortHistogramKernel",
0042         "DeviceRadixSortOnesweepKernel",
0043         "DeviceRadixSortExclusiveSumKernel",
0044     ]:
0045         return "Thrust::sort"
0046     elif name in ["_kernel_agent", "static_kernel"]:
0047         return "unknown"
0048     else:
0049         return name