1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676
|
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
<meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>
<meta name="copyright" content="(C) Copyright 2005"></meta>
<meta name="DC.rights.owner" content="(C) Copyright 2005"></meta>
<meta name="DC.Type" content="concept"></meta>
<meta name="DC.Title" content="Nsight Compute"></meta>
<meta name="abstract" content="The user manual for NVIDIA Nsight Compute."></meta>
<meta name="description" content="The user manual for NVIDIA Nsight Compute."></meta>
<meta name="DC.Coverage" content="Nsight Compute"></meta>
<meta name="DC.subject" content="Nsight Compute"></meta>
<meta name="keywords" content="Nsight Compute"></meta>
<meta name="DC.Format" content="XHTML"></meta>
<meta name="DC.Identifier" content="abstract"></meta>
<link rel="stylesheet" type="text/css" href="../common/formatting/commonltr.css"></link>
<link rel="stylesheet" type="text/css" href="../common/formatting/site.css"></link>
<title>Nsight Compute :: Nsight Compute Documentation</title>
<!--[if lt IE 9]>
<script src="../common/formatting/html5shiv-printshiv.min.js"></script>
<![endif]-->
<script type="text/javascript" charset="utf-8" src="../common/scripts/tynt/tynt.js"></script>
-->
<script src="https://assets.adobedtm.com/5d4962a43b79/c1061d2c5e7b/launch-191c2462b890.min.js"></script>
<script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.min.js"></script>
<script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.ba-hashchange.min.js"></script>
<script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.scrollintoview.min.js"></script>
<script type="text/javascript" src="../search/htmlFileList.js"></script>
<script type="text/javascript" src="../search/htmlFileInfoList.js"></script>
<script type="text/javascript" src="../search/nwSearchFnt.min.js"></script>
<script type="text/javascript" src="../search/stemmers/en_stemmer.min.js"></script>
<script type="text/javascript" src="../search/index-1.js"></script>
<script type="text/javascript" src="../search/index-2.js"></script>
<script type="text/javascript" src="../search/index-3.js"></script>
<link rel="canonical" href="https://developer.nvidia.com/NsightCompute/index.html"></link>
<link rel="stylesheet" type="text/css" href="../common/formatting/qwcode.highlight.css"></link>
</head>
<body>
<header id="header"><span id="company">NVIDIA</span><span id="site-title">Nsight Compute Documentation</span><form id="search" method="get" action="search">
<input type="text" name="search-text"></input><fieldset id="search-location">
<legend>Search In:</legend>
<label><input type="radio" name="search-type" value="site"></input>Entire Site</label>
<label><input type="radio" name="search-type" value="document"></input>Just This Document</label></fieldset>
<button type="reset">clear search</button>
<button id="submit" type="submit">search</button></form>
</header>
<div id="site-content">
<nav id="site-nav">
<div class="category closed"><a href="../index.html" title="The root of the site.">Nsight Compute
v2022.3.0</a></div>
<div class="category"><a href="index.html" title="Nsight Compute">Nsight Compute</a></div>
<ul>
<li>
<div class="section-link"><a href="#introduction">1. Introduction</a></div>
<ul>
<li>
<div class="section-link"><a href="#about-nsight-compute">1.1. Overview</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#quick-start">2. Quickstart</a></div>
<ul>
<li>
<div class="section-link"><a href="#quick-start-interactive">2.1. Interactive Profile Activity</a></div>
</li>
<li>
<div class="section-link"><a href="#quick-start-non-interactive">2.2. Non-Interactive Profile Activity</a></div>
</li>
<li>
<div class="section-link"><a href="#quick-start-navigate-report">2.3. Navigate the Report</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#connection-dialog">3. Connection Dialog</a></div>
<ul>
<li>
<div class="section-link"><a href="#remote-connections">3.1. Remote Connections</a></div>
</li>
<li>
<div class="section-link"><a href="#connection-activity-interactive">3.2. Interactive Profile Activity</a></div>
</li>
<li>
<div class="section-link"><a href="#connection-activity-non-interactive">3.3. Profile Activity</a></div>
</li>
<li>
<div class="section-link"><a href="#connection-dialog-reset">3.4. Reset</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#menu-and-toolbar">4. Main Menu and Toolbar</a></div>
<ul>
<li>
<div class="section-link"><a href="#main-menu">4.1. Main Menu</a></div>
</li>
<li>
<div class="section-link"><a href="#main-toolbar">4.2. Main Toolbar</a></div>
</li>
<li>
<div class="section-link"><a href="#status-banner">4.3. Status Banners</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#tool-windows">5. Tool Windows</a></div>
<ul>
<li>
<div class="section-link"><a href="#tool-window-api-statistics">5.1. API Statistics</a></div>
</li>
<li>
<div class="section-link"><a href="#tool-window-api-stream">5.2. API Stream</a></div>
</li>
<li>
<div class="section-link"><a href="#tool-window-baselines">5.3. Baselines</a></div>
</li>
<li>
<div class="section-link"><a href="#tool-window-nvtx">5.4. NVTX</a></div>
</li>
<li>
<div class="section-link"><a href="#tool-window-resources">5.5. Resources</a></div>
</li>
<li>
<div class="section-link"><a href="#tool-window-sections-info">5.6. Sections/Rules Info</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#profiler-report">6. Profiler Report</a></div>
<ul>
<li>
<div class="section-link"><a href="#profiler-report-header">6.1. Header</a></div>
</li>
<li>
<div class="section-link"><a href="#profiler-report-pages">6.2. Report Pages</a></div>
<ul>
<li>
<div class="section-link"><a href="#profiler-report-session-page">6.2.1. Session Page</a></div>
</li>
<li>
<div class="section-link"><a href="#profiler-report-summary-page">6.2.2. Summary Page</a></div>
</li>
<li>
<div class="section-link"><a href="#profiler-report-details-page">6.2.3. Details Page</a></div>
</li>
<li>
<div class="section-link"><a href="#profiler-report-source-page">6.2.4. Source Page</a></div>
</li>
<li>
<div class="section-link"><a href="#profiler-report-comments-page">6.2.5. Comments Page</a></div>
</li>
<li>
<div class="section-link"><a href="#profiler-report-nvtx-page">6.2.6. Call Stack / NVTX Page</a></div>
</li>
<li>
<div class="section-link"><a href="#profiler-report-raw-page">6.2.7. Raw Page</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#profiler-report-metrics">6.3. Metrics and Units</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#baselines">7. Baselines</a></div>
</li>
<li>
<div class="section-link"><a href="#cubin-viewer">8. Standalone Source Viewer</a></div>
</li>
<li>
<div class="section-link"><a href="#occupancy-calculator">9. Occupancy Calculator</a></div>
<ul>
<li>
<div class="section-link"><a href="#occupancy-calculator-tables">9.1. Tables</a></div>
</li>
<li>
<div class="section-link"><a href="#occupancy-calculator-graphs">9.2. Graphs</a></div>
</li>
<li>
<div class="section-link"><a href="#occupancy-calculator-gpu-data">9.3. GPU Data</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#as-viewer">10. Acceleration Structure Viewer</a></div>
<ul>
<li>
<div class="section-link"><a href="#as-viewer-nav">10.1. Navigation</a></div>
</li>
<li>
<div class="section-link"><a href="#as-viewer-filtering">10.2. Filtering and Highlighting</a></div>
</li>
<li>
<div class="section-link"><a href="#as-viewer-rendering-options">10.3. Rendering Options</a></div>
</li>
<li>
<div class="section-link"><a href="#as-viewer-exporting">10.4. Exporting</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#options">11. Options</a></div>
<ul>
<li>
<div class="section-link"><a href="#options-profile">11.1. Profile</a></div>
</li>
<li>
<div class="section-link"><a href="#options-environment">11.2. Environment</a></div>
</li>
<li>
<div class="section-link"><a href="#options-connection">11.3. Connection</a></div>
</li>
<li>
<div class="section-link"><a href="#options-source-lookup">11.4. Source Lookup</a></div>
</li>
<li>
<div class="section-link"><a href="#options-send-feedback">11.5. Send Feedback</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#projects">12. Projects</a></div>
<ul>
<li>
<div class="section-link"><a href="#projects-dialogs">12.1. Project Dialogs</a></div>
</li>
<li>
<div class="section-link"><a href="#projects-explorer">12.2. Project Explorer</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#nvvp-guide">13. Visual Profiler Transition Guide</a></div>
<ul>
<li>
<div class="section-link"><a href="#nvvp-trace">13.1. Trace</a></div>
</li>
<li>
<div class="section-link"><a href="#nvvp-sessions">13.2. Sessions</a></div>
</li>
<li>
<div class="section-link"><a href="#nvvp-timeline">13.3. Timeline</a></div>
</li>
<li>
<div class="section-link"><a href="#nvvp-analysis">13.4. Analysis</a></div>
</li>
<li>
<div class="section-link"><a href="#nvvp-command-line">13.5. Command Line Arguments</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#ballista-guide">14. Visual Studio Integration Guide</a></div>
<ul>
<li>
<div class="section-link"><a href="#ballista-overview">14.1. Visual Studio Integration Overview</a></div>
</li>
</ul>
</li>
<li>
<div class="section-link"><a href="#library-support">15. Library Support</a></div>
<ul>
<li>
<div class="section-link"><a href="#library-support-optix">15.1. OptiX</a></div>
</li>
</ul>
</li>
</ul>
</nav>
<div id="resize-nav"></div>
<nav id="search-results">
<h2>Search Results</h2>
<ol></ol>
</nav>
<div id="contents-container">
<div id="breadcrumbs-container">
<div id="release-info">Nsight Compute
(<a href="../pdf/NsightCompute.pdf">PDF</a>)
-
v2022.3.0
(<a href="https://developer.nvidia.com">older</a>)
-
Last updated August 24, 2022
-
<a href="mailto:devtools@nvidia.com?subject=Nsight Compute Documentation Feedback: Nsight Compute">Send Feedback</a>
-
<span class="st_facebook"></span><span class="st_twitter"></span><span class="st_linkedin"></span><span class="st_reddit"></span><span class="st_slashdot"></span><span class="st_tumblr"></span><span class="st_sharethis"></span></div>
</div>
<article id="contents">
<div class="topic nested0" id="abstract"><a name="abstract" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#abstract" name="abstract" shape="rect">Nsight Compute</a></h2>
<div class="body conbody">
<p class="shortdesc">The user manual for NVIDIA Nsight Compute.</p>
<p class="p">
NVIDIA Nsight Compute User Interface (UI) manual.
Information on all views, controls and workflows within the tool UI.
Transitions guide for Visual Profiler.
</p>
</div>
</div>
<div class="topic concept nested0" id="introduction"><a name="introduction" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#introduction" name="introduction" shape="rect">1. Introduction</a></h2>
<div class="body conbody">
<p class="p">
For users migrating from Visual Profiler to <span class="keyword">NVIDIA Nsight Compute</span>, please see the
<a class="xref" href="index.html#nvvp-guide" shape="rect">Visual Profiler Transition Guide</a> for comparison of features and workflows.
</p>
</div>
<div class="topic concept nested1" id="about-nsight-compute"><a name="about-nsight-compute" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#about-nsight-compute" name="about-nsight-compute" shape="rect">1.1. Overview</a></h3>
<div class="body conbody">
<p class="p">
This document is a user guide to the next-generation <span class="keyword">NVIDIA Nsight Compute</span> profiling tools.
<span class="keyword">NVIDIA Nsight Compute</span> is an interactive kernel profiler for CUDA applications.
It provides detailed performance metrics and API debugging via a user interface and command line tool.
In addition, its baseline feature allows users to compare results within the tool.
<span class="keyword">NVIDIA Nsight Compute</span> provides a customizable and data-driven user interface and metric collection
and can be extended with analysis scripts for post-processing results.
</p>
<div class="p"><strong class="ph b">Important Features</strong><ul class="ul">
<li class="li">Interactive kernel profiler and API debugger</li>
<li class="li">Graphical profile report</li>
<li class="li">Result comparison across one or multiple reports within the tool</li>
<li class="li">Fast Data Collection</li>
<li class="li">UI and Command Line interface</li>
<li class="li">Fully customizable reports and analysis rules</li>
</ul>
</div>
</div>
</div>
</div>
<div class="topic concept nested0" id="quick-start"><a name="quick-start" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#quick-start" name="quick-start" shape="rect">2. Quickstart</a></h2>
<div class="body conbody">
<p class="p">
The following sections provide brief step-by-step guides of how to setup and run
<span class="keyword">NVIDIA Nsight Compute</span> to collect profile information.
All directories are relative to the base directory of <span class="keyword">NVIDIA Nsight Compute</span>,
unless specified otherwise.
</p>
<p class="p">
The UI executable is called <span class="keyword">ncu-ui</span>. A shortcut with this name is located in the base directory
of the <span class="keyword">NVIDIA Nsight Compute</span> installation. The actual executable is located in the folder
<samp class="ph codeph">host\windows-desktop-win7-x64</samp> on Windows or <samp class="ph codeph">host/linux-desktop-glibc_2_11_3-x64</samp> on Linux.
By default, when installing from a Linux <samp class="ph codeph">.run</samp> file, <span class="keyword">NVIDIA Nsight Compute</span> is located in
<samp class="ph codeph">/usr/local/cuda-<cuda-version>/nsight-compute-<version></samp>.
When installing from a <samp class="ph codeph">.deb</samp> or <samp class="ph codeph">.rpm</samp> package, it is located in <samp class="ph codeph">/opt/nvidia/nsight-compute/<version></samp>
to be consistent with <a class="xref" href="https://developer.nvidia.com/nsight-systems" target="_blank" shape="rect">Nsight Systems</a>.
In Windows, the default path is <samp class="ph codeph">C:\Program Files\NVIDIA Corporation\Nsight Compute <version></samp>.
</p>
<p class="p">
After starting <span class="keyword">NVIDIA Nsight Compute</span>, by default the <dfn class="term">Welcome Page</dfn> is opened.
It provides links to recently opened reports and projects as well as quick access to the <a class="xref" href="index.html#connection-dialog" shape="rect">Connection Dialog</a>,
and the <a class="xref" href="index.html#projects" shape="rect">Projects</a> dialogs.
To immediately start a profile run, select <dfn class="term">Continue</dfn> under <dfn class="term">Quick Launch</dfn>.
See <a class="xref" href="index.html#options-environment" shape="rect">Environment</a> on how to change the start-up action.
</p>
<div class="fig fignone" id="quick-start__fig-welcome-page"><a name="quick-start__fig-welcome-page" shape="rect">
<!-- --></a><span class="desc figdesc">Welcome Page</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/welcome-page.png"></img></div><br clear="none"></br></div>
</div>
<div class="topic concept nested1" id="quick-start-interactive"><a name="quick-start-interactive" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#quick-start-interactive" name="quick-start-interactive" shape="rect">2.1. Interactive Profile Activity</a></h3>
<div class="body conbody">
<ol class="ol">
<li class="li"><strong class="ph b">Launch the target application from <span class="keyword">NVIDIA Nsight Compute</span></strong><p class="p">
When starting <span class="keyword">NVIDIA Nsight Compute</span>, the <dfn class="term">Welcome Page</dfn> will appear.
Click on <dfn class="term">Quick Launch</dfn> to open the <dfn class="term">Connection</dfn> dialog. If the <dfn class="term">Connection</dfn> dialog doesn't appear,
you can open it using the <dfn class="term">Connect</dfn> button from the main toolbar, as long as you are not currently connected.
Select your target platform on the left-hand side and your connection target (machine) from the <dfn class="term">Connection</dfn> drop down.
If you have your local target platform selected, <samp class="ph codeph">localhost</samp> will become available as a connection.
Use + to add a new connection target. Then, fill in the launch details and select Launch.
In the <dfn class="term">Activity</dfn> panel, select the Interactive Profile activity to initiate a session that allows controlling
the execution of the target application and selecting the kernels of interest interactively.
Press <dfn class="term">Launch</dfn> to start the session.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-interactive-profiling-connect.png"></img></div><br clear="none"></br></div>
</li>
<li class="li"><strong class="ph b">Launch the target application with tools instrumentation from the command line</strong><div class="p">
The <span class="keyword">ncu</span> can act as a simple wrapper that forces the target application to load the necessary
libraries for tools instrumentation. The parameter <samp class="ph codeph">--mode=launch</samp> specifies that the target application should be
launched and suspended before the first instrumented API call. That way the application waits until we connect with the UI.
<pre class="pre screen" xml:space="preserve">$ <span class="keyword">ncu</span> --mode=launch CuVectorAddDrv.exe</pre></div>
</li>
<li class="li"><strong class="ph b">Launch <span class="keyword">NVIDIA Nsight Compute</span> and connect to target application</strong><div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-interactive-profiling-attach.png"></img></div><br clear="none"></br></div>
<p class="p">
Select the target machine at the top of the dialog to connect and update the list of attachable applications.
By default, <dfn class="term">localhost</dfn> is pre-selected if the target matches your current local platform.
Select the <dfn class="term">Attach</dfn> tab and the target application of interest and press <dfn class="term">Attach</dfn>.
Once connected, the layout of <span class="keyword">NVIDIA Nsight Compute</span> changes into stepping mode that allows you to control the execution
of any calls into the instrumented API. When connected, the <dfn class="term">API Stream</dfn> window indicates that the target
application waits before the very first API call.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-interactive-profiling-connected.png"></img></div><br clear="none"></br></div>
</li>
<li class="li"><strong class="ph b">Control application execution</strong><p class="p">
Use the <dfn class="term">API Stream</dfn> window to step the calls into the instrumented API.
The dropdown at the top allows switching between different CPU threads of the application.
<dfn class="term">Step In</dfn> (F11), <dfn class="term">Step Over</dfn> (F10), and <dfn class="term">Step Out</dfn> (Shift + F11) are available from the <dfn class="term">Debug</dfn> menu or the
corresponding toolbar buttons. While stepping, function return values and function parameters are captured.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-interactive-profiling-api-stream.png"></img></div><br clear="none"></br></div>
<p class="p">
Use <dfn class="term">Resume</dfn> (F5) and <dfn class="term">Pause</dfn> to allow the program to run freely.
Freeze control is available to define the behavior of threads currently not in focus, i.e. selected in the thread drop down.
By default, the <dfn class="term">API Stream</dfn> stops on any API call that returns an error code.
This can be toggled in the <dfn class="term">Debug</dfn> menu by <dfn class="term">Break On API Error</dfn>.
</p>
</li>
<li class="li"><strong class="ph b">Isolate a kernel launch</strong><p class="p">
To quickly isolate a kernel launch for profiling, use the <dfn class="term">Next API Launch</dfn> button in the toolbar of
the <dfn class="term">API Stream</dfn> window to jump to the next kernel launch. The execution will stop before the kernel launch is executed.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-interactive-profiling-next-launch.png"></img></div><br clear="none"></br></div>
</li>
<li class="li"><strong class="ph b">Profile a kernel launch</strong><p class="p">
Once the execution of the target application is suspended at a kernel launch, additional actions become available in the UI.
These actions are either available from the menu or from the toolbar. Please note that the actions are disabled, if the
API stream is not at a qualifying state (not at a kernel launch or launching on an unsupported GPU). To profile, press <dfn class="term">Profile</dfn>
and wait until the result is shown in the <a class="xref" href="index.html#profiler-report" shape="rect">Profiler Report</a>. Profiling progress is reported in the lower right corner status bar.
</p>
<p class="p">
Instead of manually selecting <dfn class="term">Profile</dfn>, it is also possible to enable <dfn class="term">Auto Profile</dfn> from the <dfn class="term">Profile</dfn> menu.
If enabled, each kernel matching the current kernel filter (if any) will be profiled using the current section configuration.
This is especially useful if an application is to be profiled unattended, or the number of kernel launches to be profiled
is very large.
Sections can be enabled or disabled using the <a class="xref" href="index.html#tool-window-sections-info" shape="rect">Sections/Rules Info</a> tool window.
</p>
<p class="p"><dfn class="term">Profile Series</dfn> allows to configure the collection of a set of profile results at once.
Each result in the set is profiled with varying parameters. Series are useful to investigate the behavior of a kernel
across a large set of parameters without the need to recompile and rerun the application many times.
</p>
</li>
</ol>
<p class="p">
For a detailed description of the options available in this activity, see <a class="xref" href="index.html#connection-activity-interactive" shape="rect">Interactive Profile Activity</a>.
</p>
</div>
</div>
<div class="topic concept nested1" id="quick-start-non-interactive"><a name="quick-start-non-interactive" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#quick-start-non-interactive" name="quick-start-non-interactive" shape="rect">2.2. Non-Interactive Profile Activity</a></h3>
<div class="body conbody">
<ol class="ol">
<li class="li"><strong class="ph b">Launch the target application from <span class="keyword">NVIDIA Nsight Compute</span></strong><p class="p">
When starting <span class="keyword">NVIDIA Nsight Compute</span>, the <dfn class="term">Welcome Page</dfn> will appear.
Click on <dfn class="term">Quick Launch</dfn> to open the <dfn class="term">Connection</dfn> dialog.
If the <dfn class="term">Connection</dfn> dialog doesn’t appear, you can open it using the <dfn class="term">Connect</dfn> button from the main toolbar,
as long as you are not currently connected. Select your target platform on the left-hand side and your
localhost from the <dfn class="term">Connection</dfn> drop down. Then, fill in the launch details and select <dfn class="term">Launch</dfn>.
In the <dfn class="term">Activity</dfn> panel, select the <dfn class="term">Profile</dfn> activity to initiate a session that pre-configures
the profile session and launches the command line profiler to collect the data.
Provide the <dfn class="term">Output File</dfn> name to enable starting the session with the <dfn class="term">Launch</dfn> button.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-profiling-connect.png"></img></div><br clear="none"></br></div>
</li>
<li class="li"><strong class="ph b">Additional Launch Options</strong><p class="p">
For more details on these options, see <a class="xref" href="../NsightComputeCli/index.html#command-line-options" shape="rect">Command Line Options</a>.
The options are grouped into tabs:
The <dfn class="term">Filter</dfn> tab exposes the options to specify which kernels should be profiled.
Options include the kernel regex filter, the number of launches to skip, and the total number of launch to profile.
The <dfn class="term">Section</dfn> tab allows you to select which sections should be collected for each kernel launch.
The <dfn class="term">Sampling</dfn> tab allows you to configure sampling options for each kernel launch.
The <dfn class="term">Other</dfn> tab includes the option to collect NVTX information or custom metrics via the <samp class="ph codeph">--metrics</samp> option.
</p>
<p class="p">
The <dfn class="term">Section</dfn> tab allows you to select which sections should be collected for each kernel launch.
Hover over a section to see its description as a tool-tip.
To change the sections that are enabled by default, use the <a class="xref" href="index.html#tool-window-sections-info" shape="rect">Sections/Rules Info</a> tool window.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-profiling-options-sections.png"></img></div><br clear="none"></br></div>
</li>
</ol>
<p class="p">
For a detailed description of the options available in this activity, see <a class="xref" href="index.html#connection-activity-non-interactive" shape="rect">Profile Activity</a>.
</p>
</div>
</div>
<div class="topic concept nested1" id="quick-start-navigate-report"><a name="quick-start-navigate-report" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#quick-start-navigate-report" name="quick-start-navigate-report" shape="rect">2.3. Navigate the Report</a></h3>
<div class="body conbody">
<ol class="ol">
<li class="li"><strong class="ph b">Navigate the report</strong><p class="p">
The profile report comes up by default on the <dfn class="term">Details</dfn> page.
You can switch between different <a class="xref" href="index.html#profiler-report-pages" shape="rect">Report Pages</a> of the report with the dropdown labeled Page
on the top-left of the report. You can also use <dfn class="term">Ctrl + Shift + N</dfn> and <dfn class="term">Ctrl + Shift + P</dfn> shortcut
keys or corresponding toolbar button to navigate next and previous pages, respectively.
A report can contain any number of results from kernel launches. The <dfn class="term">Launch</dfn> dropdown allows switching
between the different results in a report.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-report.png"></img></div><br clear="none"></br></div>
</li>
<li class="li"><strong class="ph b">Diffing multiple results</strong><p class="p">
On the <dfn class="term">Details page</dfn>, press the button <dfn class="term">Add Baseline</dfn> to promote the current result in
focus to become the baseline all other results from this report and any other report
opened in the same instance of <span class="keyword">NVIDIA Nsight Compute</span> gets compared to.
If a baseline is set, every element on the Details page shows two values:
The current value of the result in focus and the corresponding value of the
baseline or the percentage of change from the corresponding baseline value.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-baseline.png"></img></div><br clear="none"></br></div>
<p class="p">
Use the <dfn class="term">Clear Baselines</dfn> entry from the dropdown button, the Profile menu or the
corresponding toolbar button to remove all baselines.
For more information see <a class="xref" href="index.html#baselines" shape="rect">Baselines</a>.
</p>
</li>
<li class="li"><strong class="ph b">Executing rules</strong><p class="p">
On the <dfn class="term">Details</dfn> page some sections may provide rules.
Press the <dfn class="term">Apply button</dfn> to execute an individual rule.
The <dfn class="term">Apply Rules</dfn> button on the top executes all available rules for the current result in focus.
Rules can be user-defined too.
For more information see the <a class="xref" href="../CustomizationGuide/index.html#rule-system" shape="rect">Customization Guide</a>.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/quick-start-rule.png"></img></div><br clear="none"></br></div>
</li>
</ol>
</div>
</div>
</div>
<div class="topic concept nested0" id="connection-dialog"><a name="connection-dialog" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#connection-dialog" name="connection-dialog" shape="rect">3. Connection Dialog</a></h2>
<div class="body conbody">
<p class="p">
Use the <dfn class="term">Connection Dialog</dfn> to launch and attach to applications on your local and remote platforms.
Start by selecting the <dfn class="term">Target Platform</dfn> for profiling.
By default (and if supported) your local platform will be selected.
Select the platform on which you would like to start the target application or connect to a running process.
</p>
<div class="fig fignone"><span class="desc figdesc">Connection Dialog</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/connection-dialog.png"></img></div><br clear="none"></br></div>
<p class="p">
When using a remote platform, you will be asked to select or create a <dfn class="term">Connection</dfn> in the top drop down.
To create a new connection, select <dfn class="term">+</dfn> and enter your connection details.
When using the local platform, <dfn class="term">localhost</dfn> will be selected as the default and no further connection settings are required.
You can still create or select a remote connection, if profiling will be on a remote system of the same platform.
</p>
<p class="p">
Depending on your target platform, select either <dfn class="term">Launch</dfn> or <dfn class="term">Remote Launch</dfn>
to launch an application for profiling on the target.
Note that <dfn class="term">Remote Launch</dfn> will only be available if supported on the target platform.
</p>
<div class="p">
Fill in the following launch details for the application:
<ul class="ul">
<li class="li"><strong class="ph b">Application Executable:</strong> Specifies the root application to launch. Note that this may not be
the final application that you wish to profile. It can be a script or launcher that creates other processes.
</li>
<li class="li"><strong class="ph b">Working Directory:</strong> The directory in which the application will be launched.
</li>
<li class="li"><strong class="ph b">Command Line Arguments:</strong> Specify the arguments to pass to the application executable.
</li>
<li class="li"><strong class="ph b">Environment:</strong> The environment variables to set for the launched application.
</li>
</ul>
</div>
<p class="p">
Select <dfn class="term">Attach</dfn> to attach the profiler to an application already running on the target platform.
This application must have been started using another <span class="keyword">NVIDIA Nsight Compute CLI</span> instance.
The list will show all application processes running on the target system which can be attached.
Select the refresh button to re-create this list.
</p>
<div class="p">
Finally, select the <dfn class="term">Activity</dfn> to be run on the target for the launched or attached application.
Note that not all activities are necessarily compatible with all targets and connection options.
Currently, the following activities exist:
<ul class="ul">
<li class="li"><a class="xref" href="index.html#connection-activity-interactive" shape="rect">Interactive Profile Activity</a></li>
<li class="li"><a class="xref" href="index.html#connection-activity-non-interactive" shape="rect">Profile Activity</a></li>
<li class="li"><a class="xref" href="index.html#occupancy-calculator" shape="rect">Occupancy Calculator</a></li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="remote-connections"><a name="remote-connections" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#remote-connections" name="remote-connections" shape="rect">3.1. Remote Connections</a></h3>
<div class="body conbody">
<p class="p">
Remote devices that support SSH can also be configured as a target in the <dfn class="term">Connection Dialog</dfn>.
To configure a remote device, ensure an SSH-capable <dfn class="term">Target Platform</dfn> is selected, then press the
<dfn class="term">+</dfn> button. The following configuration dialog will be presented.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/add-remote-connection.png"></img></div><br clear="none"></br></div>
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> supports both password and private key authentication methods.
In this dialog, select the authentication method and enter the following information:
</p>
<div class="p">
<ul class="ul">
<li class="li"><strong class="ph b"> Password </strong><ul class="ul">
<li class="li"><strong class="ph b">IP/Host Name:</strong> The IP address or host name of the target device.
</li>
<li class="li"><strong class="ph b">User Name:</strong> The user name to be used for the SSH connection.
</li>
<li class="li"><strong class="ph b">Password:</strong> The user password to be used for the SSH connection.
</li>
<li class="li"><strong class="ph b">Port:</strong> The port to be used for the SSH connection. (The default value is 22)
</li>
<li class="li"><strong class="ph b">Deployment Directory:</strong> The directory to use on the target device to deploy supporting files.
The specified user must have write permissions to this location.
</li>
</ul>
</li>
<li class="li"><strong class="ph b"> Private Key </strong><div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/add-remote-connection-private-key.png"></img></div><br clear="none"></br></div>
<ul class="ul">
<li class="li"><strong class="ph b">IP/Host Name:</strong> The IP address or host name of the target device.
</li>
<li class="li"><strong class="ph b">User Name:</strong> The user name to be used for the SSH connection.
</li>
<li class="li"><strong class="ph b">SSH Private Key:</strong> The private key that is used to authenticate to SSH server.
</li>
<li class="li"><strong class="ph b">SSH Key Passphrase:</strong> The passphrase for your private key.
</li>
<li class="li"><strong class="ph b">Port:</strong> The port to be used for the SSH connection. (The default value is 22)
</li>
<li class="li"><strong class="ph b">Deployment Directory:</strong> The directory to use on the target device to deploy supporting files.
The specified user must have write permissions to this location.
</li>
</ul>
</li>
</ul>
</div>
<p class="p">
In addition to keyfiles specified by path and plain password authentication, <span class="keyword">NVIDIA Nsight Compute</span> supports
keyboard-interactive authentication, standard keyfile path searching and SSH agents.
</p>
<p class="p">
When all information is entered, click the <dfn class="term">Add</dfn> button to make use of this new connection.
</p>
<p class="p">
When a remote connection is selected in the <dfn class="term">Connection Dialog</dfn>, the <dfn class="term">Application Executable</dfn>
file browser will browse the remote file system using the configured SSH connection, allowing the user to select the
target application on the remote device.
</p>
<div class="p">
When an activity is launched on a remote device, the following steps are taken:
<ol class="ol">
<li class="li">The command line profiler and supporting files are copied into the <dfn class="term">Deployment Directory</dfn> on the the remote device.
(Only files that do not exist or are out of date are copied.)
</li>
<li class="li">Communication channels are opened to prepare for the traffic between the UI and the <dfn class="term">Application Executable</dfn>.
<ul class="ul">
<li class="li">
For <dfn class="term">Interactive Profile</dfn> activities, a <dfn class="term">SOCKS proxy</dfn> is started on the host machine.
</li>
<li class="li">
For <dfn class="term">Non-Interactive Profile</dfn> activities, a remote forwarding channel is opened on the target machine to
tunnel profiling information back to the host.
</li>
</ul>
</li>
<li class="li">The <dfn class="term">Application Executable</dfn> is executed on the remote device.
<ul class="ul">
<li class="li">
For <dfn class="term">Interactive Profile</dfn> activities, a connection is established to the remote application and the profiling
session begins.
</li>
<li class="li">
For <dfn class="term">Non-Interactive Profile</dfn> activities, the remote application is executed under the command line profiler
and the specified report file is generated.
</li>
</ul>
</li>
<li class="li">
For non-interactive profiling activities, the generated report file is copied back to the host, and opened.
</li>
</ol>
</div>
<p class="p">
The progress of each of these steps is presented in the <dfn class="term">Progress Log</dfn>.
</p>
<div class="fig fignone"><span class="desc figdesc">Progress Log</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/progress-log.png"></img></div><br clear="none"></br></div>
<p class="p">
Note that once either activity type has been launched remotely, the tools necessary for further profiling sessions can be
found
in the <dfn class="term">Deployment Directory</dfn> on the remote device.
</p>
<p class="p">
On Linux and Mac host platforms, <span class="keyword">NVIDIA Nsight Compute</span> supports SSH remote profiling on target machines which are not
directly addressable from the machine the UI is running on through the <samp class="ph codeph">ProxyJump</samp> and <samp class="ph codeph">ProxyCommand</samp>
SSH options.
</p>
<p class="p">
These options can be used to specify intermediate hosts to connect to or actual commands to run to obtain a socket connected
to the
SSH server on the target host and can be added to your SSH configuration file.
</p>
<p class="p">
Note that for both options, <span class="keyword">NVIDIA Nsight Compute</span> runs external commands and does not implement any mechanism to
authenticate to the intermediate hosts using the credentials entered in the <a class="xref" href="index.html#connection-dialog" shape="rect">Connection Dialog</a>. These credentials
will only be used to authenticate to the final target in the chain of machines.
</p>
<p class="p">
When using the <samp class="ph codeph">ProxyJump</samp> option <span class="keyword">NVIDIA Nsight Compute</span> uses the <dfn class="term">OpenSSH client</dfn> to
establish the connection to the intermediate hosts. This means that in order to use <samp class="ph codeph">ProxyJump</samp> or
<samp class="ph codeph">ProxyCommand</samp>, a version of OpenSSH supporting these options must be installed on the host machine.
</p>
<p class="p">
A common way to authenticate to the intermediate hosts in this case is to use a <dfn class="term">SSH agent</dfn> and have it hold the
private keys used for authentication.
</p>
<p class="p">
Since the <dfn class="term">OpenSSH SSH client</dfn> is used, you can also use the <dfn class="term">SSH askpass</dfn> mechanism to handle these
authentications in an interactive manner.
</p>
<p class="p">
It might happen on slow networks that connections used for remote profiling through SSH time out. If this is the case, the
<samp class="ph codeph">ConnectTimeout</samp> option can be used to set the desired timeout value.
</p>
<p class="p">
A known limitation of the remote profiling through SSH is that problems may arise if <span class="keyword">NVIDIA Nsight Compute</span> tries
to do remote profiling through <dfn class="term">SSH</dfn> by connecting to the same machine it is running on. In this case, the workaround
is to do local profiling through <samp class="ph codeph">localhost</samp>.
</p>
<p class="p">
For more information about available options for the <dfn class="term">OpenSSH client</dfn> and the ecosystem of tools it can be used with
for authentication refer to the official
<a class="xref" href="https://www.openssh.com/manual.html" target="_blank" shape="rect">manual pages</a>.
</p>
</div>
</div>
<div class="topic concept nested1" id="connection-activity-interactive"><a name="connection-activity-interactive" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#connection-activity-interactive" name="connection-activity-interactive" shape="rect">3.2. Interactive Profile Activity</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Interactive Profile</dfn> activity allows you to initiate a session that controls
the execution of the target application, similar to a debugger.
You can step API calls and workloads (CUDA kernels), pause and resume,
and interactively select the kernels of interest and which metrics to collect.
</p>
<p class="p">
This activity does currently not support profiling or attaching to child processes.
</p>
<ul class="ul">
<li class="li"><strong class="ph b">Enable CPU Call Stack</strong><p class="p">
Collect the CPU-sided Call Stack at the location of each profiled kernel launch.
</p>
</li>
<li class="li"><strong class="ph b">Enable NVTX Support</strong><p class="p">
Collect NVTX information provided by the application or its libraries.
Required to support stepping to specific NVTX contexts.
</p>
</li>
<li class="li"><strong class="ph b">Disable Profiling Start/Stop</strong><p class="p">
Ignore calls to <samp class="ph codeph">cu(da)ProfilerStart</samp> or <samp class="ph codeph">cu(da)ProfilerStop</samp>
made by the application.
</p>
</li>
<li class="li"><strong class="ph b">Enable Profiling From Start</strong><p class="p">
Enables profiling from the application start.
Disabling this is useful if the application calls <samp class="ph codeph">cu(da)ProfilerStart</samp> and
kernels before the first call to this API should not be profiled.
Note that disabling this does not prevent you from manually profiling kernels.
</p>
</li>
<li class="li"><strong class="ph b">Cache Control</strong><p class="p">
Control the behavior of the GPU caches during profiling. Allowed values:
For <dfn class="term">Flush All</dfn>, all GPU caches are flushed before each kernel replay iteration during profiling.
While metric values in the execution environment of the application might be slightly different without invalidating the caches,
this mode offers the most reproducible metric results across the replay passes and also across multiple runs of the target
application.
</p>
<p class="p">
For <dfn class="term">Flush None</dfn>, no GPU caches are flushed during profiling. This can improve performance and better replicates the
application behavior if only a single kernel replay pass is necessary for metric collection.
However, some metric results will vary depending on prior GPU work, and between replay iterations.
This can lead to inconsistent and out-of-bounds metric values.
</p>
</li>
<li class="li"><strong class="ph b">Clock Control</strong><p class="p">
Control the behavior of the GPU clocks during profiling. Allowed values:
For <dfn class="term">Base</dfn>, GPC and memory clocks are locked to their respective base frequency during profiling. This has no impact on thermal throttling.
For <dfn class="term">None</dfn>, no GPC or memory frequencies are changed during profiling.
</p>
</li>
<li class="li"><strong class="ph b">Import Source</strong><p class="p">
Enables permanently importing available source files into the report.
Source information must be embedded in the executable, e.g. via the <samp class="ph codeph">-lineinfo</samp> compiler option.
Imported files are used in the <dfn class="term">CUDA-C</dfn> view on the <a class="xref" href="index.html#profiler-report-source-page" shape="rect">Source Page</a>.
</p>
</li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="connection-activity-non-interactive"><a name="connection-activity-non-interactive" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#connection-activity-non-interactive" name="connection-activity-non-interactive" shape="rect">3.3. Profile Activity</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Profile</dfn> activity provides a traditional, pre-configurable profiler.
After configuring which kernels to profile, which metrics to collect, etc, the application is run under the profiler
without interactive control.
The activity completes once the application terminates.
For applications that normally do not terminate on their own, e.g. interactive user interfaces, you can cancel the
activity once all expected kernels are profiled.
</p>
<p class="p">
This activity does not support attaching to processes previously launched via <span class="keyword">NVIDIA Nsight Compute</span>.
These processes will be shown grayed out in the <dfn class="term">Attach</dfn> tab.
</p>
<ul class="ul">
<li class="li"><strong class="ph b">Output File</strong><p class="p">
Path to report file where the collected profile should be stored.
If not present, the report extension <samp class="ph codeph">.ncu-rep</samp> is added automatically.
The placeholder <samp class="ph codeph">%i</samp> is supported for the filename component.
It is replaced by a sequentially increasing number to create a unique filename.
This maps to the <samp class="ph codeph">--export</samp> command line option.
</p>
</li>
<li class="li"><strong class="ph b">Force Overwrite</strong><p class="p">
If set, existing report file are overwritten.
This maps to the <samp class="ph codeph">--force-overwrite</samp> command line option.
</p>
</li>
<li class="li"><strong class="ph b">Target Processes</strong><p class="p">
Select the processes you want to profile.
In mode <dfn class="term">Application Only</dfn>, only the root application process is profiled.
In mode <dfn class="term">all</dfn>, the root application process and all its child processes are profiled.
This maps to the <samp class="ph codeph">--target-processes</samp> command line option.
</p>
</li>
<li class="li"><strong class="ph b">Replay Mode</strong><p class="p">
Select the method for replaying kernel launches multiple times.
In mode <dfn class="term">Kernel</dfn>, individual kernel launches are replayed transparently during
the single execution of the target application.
In mode <dfn class="term">Application</dfn>, the entire target application is relaunched multiple times.
In each iteration, additional data for the target kernel launches is collected.
Application replay requires the program execution to be deterministic.
This maps to the <samp class="ph codeph">--replay-mode</samp> command line option.
See the <a class="xref" href="../ProfilingGuide/index.html#kernel-replay" shape="rect">Kernel Profiling Guide</a> for more details on the replay modes.
</p>
</li>
<li class="li"><strong class="ph b">Additional Options</strong><p class="p">
All remaining options map to their command line profiler equivalents.
See the <a class="xref" href="../NsightComputeCli/index.html#command-line-options" shape="rect">Command Line Options</a> for details.
</p>
</li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="connection-dialog-reset"><a name="connection-dialog-reset" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#connection-dialog-reset" name="connection-dialog-reset" shape="rect">3.4. Reset</a></h3>
<div class="body conbody">
<p class="p">
Entries in the connection dialog are saved as part of the current <a class="xref" href="index.html#projects" shape="rect">project</a>.
When working in a custom project, simply close the project to reset the dialog.
</p>
<p class="p">
When not working in a custom project, entries are stored as part of the <dfn class="term">default project</dfn>.
You can delete all information from the default project by closing <span class="keyword">NVIDIA Nsight Compute</span>
and then <a class="xref" href="index.html#projects" shape="rect">deleting the project file from disk</a>.
</p>
</div>
</div>
</div>
<div class="topic concept nested0" id="menu-and-toolbar"><a name="menu-and-toolbar" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#menu-and-toolbar" name="menu-and-toolbar" shape="rect">4. Main Menu and Toolbar</a></h2>
<div class="body conbody">
<p class="p">
Information on the main menu and toolbar.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/main-menu.png"></img></div><br clear="none"></br></div>
</div>
<div class="topic concept nested1" id="main-menu"><a name="main-menu" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#main-menu" name="main-menu" shape="rect">4.1. Main Menu</a></h3>
<div class="body conbody">
<ul class="ul">
<li class="li">
File
<ul class="ul">
<li class="li"><strong class="ph b">New Project</strong>
Create new profiling <a class="xref" href="index.html#projects" shape="rect">Projects</a> with the <a class="xref" href="index.html#projects-dialogs__new-project" shape="rect">New Project Dialog</a></li>
<li class="li"><strong class="ph b">Open Project</strong>
Open an existing profiling project
</li>
<li class="li"><strong class="ph b">Recent Projects</strong>
Open an existing profiling project from the list of recently used projects
</li>
<li class="li"><strong class="ph b">Save Project</strong>
Save the current profiling project
</li>
<li class="li"><strong class="ph b">Save Project As</strong>
Save the current profiling project with a new filename
</li>
<li class="li"><strong class="ph b">Close Project</strong>
Close the current profiling project
</li>
<li class="li"><strong class="ph b">New File</strong>
Create a new file
</li>
<li class="li"><strong class="ph b">Open File</strong>
Open an existing file
</li>
<li class="li"><strong class="ph b">Save</strong>
Save the current file
</li>
<li class="li"><strong class="ph b">Save As</strong>
Save a copy of the current file with a different name or type or in a different location
</li>
<li class="li"><strong class="ph b">Save All Files</strong>
Save all open files
</li>
<li class="li"><strong class="ph b">Close</strong>
Close the current file
</li>
<li class="li"><strong class="ph b">Close All Files</strong>
Close all open files
</li>
<li class="li"><strong class="ph b">Recent Files</strong>
Open an existing file from the list of recently used files
</li>
<li class="li"><strong class="ph b">Exit</strong>
Exit Nsight Compute
</li>
</ul>
</li>
<li class="li">
Connection
<ul class="ul">
<li class="li"><strong class="ph b">Connect</strong>
Open the <a class="xref" href="index.html#connection-dialog" shape="rect">Connection Dialog</a> to launch or attach to a target application. Disabled when already connected.
</li>
<li class="li"><strong class="ph b">Disconnect</strong>
Disconnect from the current target application, allows the application to continue normally and potentially re-attach.
</li>
<li class="li"><strong class="ph b">Terminate</strong>
Disconnect from and terminate the current target application immediately.
</li>
</ul>
</li>
<li class="li">
Debug
<ul class="ul">
<li class="li"><strong class="ph b">Pause</strong>
Pause the target application at the next intercepted API call or launch.
</li>
<li class="li"><strong class="ph b">Resume</strong>
Resume the target application.
</li>
<li class="li"><strong class="ph b">Step In</strong>
Step into the current API call or launch to the next nested call, if any, or the subsequent API call, otherwise.
</li>
<li class="li"><strong class="ph b">Step Over</strong>
Step over the current API call or launch and suspend at the next, non-nested API call or launch.
</li>
<li class="li"><strong class="ph b">Step Out</strong>
Step out of the current nested API call or launch to the next, non-parent API call or launch one level above.
</li>
<li class="li"><strong class="ph b">Freeze API</strong><p class="p">
When disabled, all CPU threads are enabled and continue to run during stepping or resume,
and all threads stop as soon as at least one thread arrives at the next API call or launch.
This also means that during stepping or resume the currently selected thread might change as
the old selected thread makes no forward progress and the API Stream automatically
switches to the thread with a new API call or launch.
When enabled, only the currently selected CPU thread is enabled.
All other threads are disabled and blocked.
</p>
<p class="p">
Stepping now completes if the current thread
arrives at the next API call or launch. The selected thread never changes.
However, if the selected thread does not call any further API calls or waits at a barrier for
another thread to make progress, stepping may not complete and hang indefinitely.
In this case, pause, select another thread, and continue stepping until the original thread is unblocked.
In this mode, only the selected thread will ever make forward progress.
</p>
</li>
<li class="li"><strong class="ph b">Break On API Error</strong>
When enabled, during resume or stepping, execution is suspended as soon as an API call returns an error code.
</li>
<li class="li"><strong class="ph b">Run to Next Kernel</strong>
See <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> tool window.
</li>
<li class="li"><strong class="ph b">Run to Next API Call</strong>
See <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> tool window.
</li>
<li class="li"><strong class="ph b">Run to Next Range Start</strong>
See <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> tool window.
</li>
<li class="li"><strong class="ph b">Run to Next Range End</strong>
See <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> tool window.
</li>
<li class="li"><strong class="ph b">API Statistics</strong>
Opens the <a class="xref" href="index.html#tool-window-api-statistics" shape="rect">API Statistics</a> tool window
</li>
<li class="li"><strong class="ph b">API Stream</strong>
Opens the <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> tool window
</li>
<li class="li"><strong class="ph b">Resources</strong>
Opens the <a class="xref" href="index.html#tool-window-resources" shape="rect">Resources</a> tool window
</li>
<li class="li"><strong class="ph b">NVTX</strong>
Opens the <a class="xref" href="index.html#tool-window-nvtx" shape="rect">NVTX</a> tool window
</li>
</ul>
</li>
<li class="li">
Profile
<ul class="ul">
<li class="li"><strong class="ph b">Profile Kernel</strong>
When suspended at a kernel launch, select the profile using the current configuration.
</li>
<li class="li"><strong class="ph b">Profile Series</strong>
When suspended at a kernel launch, open the Profile Series configuration dialog to setup and collect a series of profile results.
</li>
<li class="li"><strong class="ph b">Auto Profile</strong>
Enable or disable auto profiling. If enabled, each kernel matching the
current kernel filter (if any) will be profiled using the current section configuration.
</li>
<li class="li"><strong class="ph b">Baselines</strong>
Opens the <a class="xref" href="index.html#tool-window-baselines" shape="rect">Baselines</a> tool window.
</li>
<li class="li"><strong class="ph b">Clear Baselines</strong>
Clear all current baselines.
</li>
<li class="li"><strong class="ph b">Import Source</strong>
Permanently import resolved source files into the report.
Existing content may be overwritten.
</li>
<li class="li"><strong class="ph b">Section/Rules Info</strong>
Opens the <a class="xref" href="index.html#tool-window-sections-info" shape="rect">Sections/Rules Info</a> tool window.
</li>
</ul>
</li>
<li class="li">
Tools
<ul class="ul">
<li class="li"><strong class="ph b">Project Explorer</strong>
Opens the <a class="xref" href="index.html#projects-explorer" shape="rect">Project Explorer</a> tool window.
</li>
<li class="li"><strong class="ph b">Output Messages</strong>
Opens the Output Messages tool window.
</li>
<li class="li"><strong class="ph b">Options</strong>
Opens the <a class="xref" href="index.html#options" shape="rect">Options</a> dialog.
</li>
</ul>
</li>
<li class="li">
Window
<ul class="ul">
<li class="li"><strong class="ph b">Save Window Layout</strong>
Allows you to specify a name for the current layout. The layouts are saved to a Layouts folder in the documents directory
as named ".nvlayout" files.
</li>
<li class="li"><strong class="ph b">Apply Window Layout</strong>
Once you have saved a layout, you can restore them by using the "Apply Window Layout" menu entry. Simply select the entry
from sub-menu you want to apply.
</li>
<li class="li"><strong class="ph b">Manage Window Layout</strong>
Allows you to delete or rename old layouts.
</li>
<li class="li"><strong class="ph b">Restore Default Layout</strong>
Restore views to their original size and position.
</li>
<li class="li"><strong class="ph b">Show Welcome Page</strong>
Opens the <a class="xref" href="index.html#quick-start__fig-welcome-page" title="Welcome Page" shape="rect">Welcome Page</a>.
</li>
</ul>
</li>
<li class="li">
Help
<ul class="ul">
<li class="li"><strong class="ph b">Documentation</strong>
Opens the latest documentation for <span class="keyword">NVIDIA Nsight Compute</span> online.
</li>
<li class="li"><strong class="ph b">Documentation (local)</strong>
Opens the local HTML documentation for <span class="keyword">NVIDIA Nsight Compute</span> that has shipped with the tool.
</li>
<li class="li"><strong class="ph b">Check For Updates</strong>
Checks online if a newer version of <span class="keyword">NVIDIA Nsight Compute</span> is available for download.
</li>
<li class="li"><strong class="ph b">Reset Application Data</strong>
Reset all <span class="keyword">NVIDIA Nsight Compute</span> configuration data saved on disk,
including option settings, default paths, recent project references etc.
This will not delete saved reports.
</li>
<li class="li"><strong class="ph b">Send Feedback</strong>
Opens a dialog that allows you to send bug reports and suggestions for features.
Optionally, the feedback includes basic system information, screenshots, or additional files (such as profile reports).
</li>
<li class="li"><strong class="ph b">About</strong>
Opens the About dialog with information about the version of <span class="keyword">NVIDIA Nsight Compute</span>.
</li>
</ul>
</li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="main-toolbar"><a name="main-toolbar" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#main-toolbar" name="main-toolbar" shape="rect">4.2. Main Toolbar</a></h3>
<div class="body conbody">
<p class="p">
The main toolbar shows commonly used operations from the main menu.
See <a class="xref" href="index.html#main-menu" shape="rect">Main Menu</a> for their description.
</p>
</div>
</div>
<div class="topic concept nested1" id="status-banner"><a name="status-banner" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#status-banner" name="status-banner" shape="rect">4.3. Status Banners</a></h3>
<div class="body conbody">
<p class="p">
Status banners are used to display important messages, such as profiler errors.
The message can be dismissed by clicking the 'X' button.
The number of banners shown at the same time is limited and old messages can get
dismissed automatically if new ones appear.
Use the <dfn class="term">Output Messages</dfn> window to see the complete message history.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/status-banner.png"></img></div><br clear="none"></br></div>
</div>
</div>
</div>
<div class="topic concept nested0" id="tool-windows"><a name="tool-windows" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#tool-windows" name="tool-windows" shape="rect">5. Tool Windows</a></h2>
<div class="body conbody"></div>
<div class="topic concept nested1" id="tool-window-api-statistics"><a name="tool-window-api-statistics" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#tool-window-api-statistics" name="tool-window-api-statistics" shape="rect">5.1. API Statistics</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">API Statistics</dfn> window is available when <span class="keyword">NVIDIA Nsight Compute</span> is connected to a target application.
It opens by default as soon as the connection is established.
It can be re-opened using <dfn class="term">Debug > API Statistics</dfn> from the main menu.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-api-statistics.png"></img></div><br clear="none"></br></div>
<p class="p">
Whenever the target application is suspended, it shows a summary of tracked
API calls with some statistical information, such as the number of calls,
their total, average, minimum and maximum duration.
Note that this view cannot be used as a replacement for
<a class="xref" href="https://developer.nvidia.com/nsight-systems" target="_blank" shape="rect">Nsight Systems</a> when trying
to optimize CPU performance of your application.
</p>
<p class="p">
The <dfn class="term">Reset</dfn> button deletes all statistics collected to the current point and starts a new collection.
Use the <dfn class="term">Export to CSV</dfn> button to export the current statistics to a CSV file.
</p>
</div>
</div>
<div class="topic concept nested1" id="tool-window-api-stream"><a name="tool-window-api-stream" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#tool-window-api-stream" name="tool-window-api-stream" shape="rect">5.2. API Stream</a></h3>
<div class="body conbody">
<p class="p"><dfn class="term">The API Stream</dfn> window is available when <span class="keyword">NVIDIA Nsight Compute</span> is
connected to a target application.
It opens by default as soon as the connection is established.
It can be re-opened using <dfn class="term">Debug > API Stream</dfn> from the main menu.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-api-stream.png"></img></div><br clear="none"></br></div>
<p class="p">
Whenever the target application is suspended, the window shows the history of
API calls and traced kernel launches.
The currently suspended API call or kernel launch (activity) is marked with a yellow arrow.
If the suspension is at a subcall, the parent call is marked with a green arrow.
The API call or kernel is suspended before being executed.
</p>
<p class="p">
For each activity, further information is shown such as the kernel name
or the function parameters (<dfn class="term">Func Parameters</dfn>) and return value (<dfn class="term">Func Return</dfn>).
Note that the function return value will only become available once you step out or over the API call.
</p>
<p class="p">
Use the <dfn class="term">Current Thread</dfn> dropdown to switch between the active threads.
The dropdown shows the thread ID followed by the current API name.
One of several options can be chosen in the trigger dropdown, which are executed by the adjacent <dfn class="term">>></dfn> button.
<dfn class="term">Run to Next Kernel</dfn> resumes execution until the next kernel launch is found in any enabled thread.
<dfn class="term">Run to Next API Call</dfn> resumes execution until the next API call matching <dfn class="term">Next Trigger</dfn> is found in any enabled thread.
<dfn class="term">Run to Next Range Start</dfn> resumes execution until the next start of an active profiler range is found.
Profiler ranges are defined by using the <samp class="ph codeph">cu(da)ProfilerStart/Stop</samp> API calls.
<dfn class="term">Run to Next Range Stop</dfn> resumes execution until the next stop of an active profiler range is found.
The <dfn class="term">API Level</dfn> dropdown changes which API levels are shown in the stream.
The <dfn class="term">Export to CSV</dfn> button exports the currently visible stream to a CSV file.
</p>
</div>
</div>
<div class="topic concept nested1" id="tool-window-baselines"><a name="tool-window-baselines" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#tool-window-baselines" name="tool-window-baselines" shape="rect">5.3. Baselines</a></h3>
<div class="body conbody">
<p class="p"><dfn class="term">The Baselines</dfn> tool window can be opened by clicking the <dfn class="term">Baselines</dfn> entry in the <dfn class="term">Profile</dfn> menu. It provides
a centralized place from which to manage configured baselines. (Refer to <a class="xref" href="index.html#baselines" shape="rect">Baselines</a>,
for information on how to create baselines from profile results.)
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-baselines.png"></img></div><br clear="none"></br></div>
<p class="p">
The baseline visibility can be controlled by clicking on the check box in a table row. When the check box is checked, the
baseline will be
visible in the summary header as well as all graphs in all sections. When unchecked the baseline will be hidden and will
not contribute
to metric difference calculations.
</p>
<p class="p">
The baseline color can be changed by double-clicking on the color swatch in the table row. The color dialog which is opened
provides the
ability to choose an arbitrary color as well as offers a palette of predefined colors associated with the stock baseline color
rotation.
</p>
<p class="p">
The baseline name can be changed by double-clicking on the <dfn class="term">Name</dfn> column in the table row. The name must not be empty and must
be less than the <dfn class="term">Maximum Baseline Name Length</dfn> as specified in the options dialog.
</p>
<p class="p">
The z-order of a selected baseline can be changed by clicking the <dfn class="term">Move Baseline Up</dfn> and <dfn class="term">Move Baseline Down</dfn> buttons
in the tool bar. When a baseline is moved up or down its new position will be reflected in the report header as well as in
each graph.
Currently, only one baseline may be moved at a time.
</p>
<p class="p">
The selected baselines may be removed by clicking on the <dfn class="term">Clear Selected Baselines</dfn> button in the tool bar. All baselines can be
removed at once by clicking on the <dfn class="term">Clear All Baselines</dfn> button, from either the global tool bar or the tool window tool bar.
</p>
<p class="p">
The configured baselines can be saved to a file by clicking on the <dfn class="term">Save Baselines</dfn> button in the tool bar. By default
baseline files use the <samp class="ph codeph">.ncu-bln</samp> extension. Baseline files can be opened locally and/or shared with other users.
</p>
<p class="p">
Baseline information can be loaded by clicking on the <dfn class="term">Load Baselines</dfn> button in the tool bar. When a baseline file is
loaded, currently configured baselines will be replaced. A dialog will be presented to the user to confirm this operation
when necessary.
</p>
</div>
</div>
<div class="topic concept nested1" id="tool-window-nvtx"><a name="tool-window-nvtx" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#tool-window-nvtx" name="tool-window-nvtx" shape="rect">5.4. NVTX</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">NVTX</dfn> window is available when <span class="keyword">NVIDIA Nsight Compute</span> is connected to a target application.
If closed, it can be re-opened using <dfn class="term">Debug > NVTX</dfn> from the main menu.
Whenever the target application is suspended, the window shows the state of all active
NVTX domains and ranges in the currently selected thread.
Note that <a class="xref" href="https://devblogs.nvidia.com/cuda-pro-tip-generate-custom-application-profile-timelines-nvtx/" target="_blank" shape="rect">NVTX</a>
information is only tracked if the launching command line profiler instance was started
with <samp class="ph codeph">--nvtx</samp> or NVTX was enabled in the <span class="keyword">NVIDIA Nsight Compute</span> launch dialog.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-nvtx.png"></img></div><br clear="none"></br></div>
<p class="p">
Use the <dfn class="term">Current Thread</dfn> dropdown in the <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> window to change the currently selected thread.
<span class="keyword">NVIDIA Nsight Compute</span> supports NVTX named resources, such as threads, CUDA devices, CUDA contexts, etc.
If a resource is named using NVTX, the appropriate UI elements will be updated.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-nvtx-resources.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested1" id="tool-window-resources"><a name="tool-window-resources" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#tool-window-resources" name="tool-window-resources" shape="rect">5.5. Resources</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Resources</dfn> window is available when <span class="keyword">NVIDIA Nsight Compute</span> is connected to a target application.
It shows information about the currently known resources, such as CUDA devices, CUDA streams or kernels.
The window is updated every time the target application is suspended.
If closed, it can be re-opened using <dfn class="term">Debug > Resources</dfn> from the main menu.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-resources.png"></img></div><br clear="none"></br></div>
<p class="p">
Using the dropdown on the top, different views can be selected, where each view is specific
to one kind of resource (context, stream, kernel, …).
The <dfn class="term">Filter</dfn> edit allows you to create filter expressions using the column headers of the currently selected resource.
</p>
<p class="p">
The resource table shows all information for each resource instance.
Each instance has a unique ID, the <dfn class="term">API Call ID</dfn> when this resource was created,
its handle, associated handles, and further parameters.
When a resource is destroyed, it is removed from its table.
</p>
<div class="p">
When using the asynchronous malloc/free APIs, the resource view for <dfn class="term">Memory Allocation</dfn> will also include the memory objects
created in this manner. These memory objects have a non-zero memory pool handle. The <dfn class="term">Mode</dfn> column will indicate which code path
was taken during the allocation of the corresponding object. The modes are:
<ul class="ul">
<li class="li">REUSE_STREAM_SUBPOOL:
The memory object was allocated in memory that was previously freed. The memory was backed by the memory pool set
as current for the stream on which the allocation was made.
</li>
<li class="li">USE_EXISTING_POOL_MEMORY:
The memory object was allocated in memory that was previously freed. The memory is backed by the default memory pool
of the stream on which the allocation was made.
</li>
<li class="li">REUSE_EVENT_DEPENDENCIES:
The memory object was allocated in memory that was previously freed in another stream of the same context. A stream
ordering dependency of the allocating stream on the free action existed. Cuda events and null stream interactions can create
the required stream ordered dependencies.
</li>
<li class="li">REUSE_OPPORTUNISTIC:
The memory object was allocated in memory that was previously freed in another stream of the same context. However, no
dependency between the free and allocation existed. This mode requires that the free be already committed at the time the
allocation is requested. Changes in execution behavior might result in different modes for multiple runs of the application.
</li>
<li class="li">REUSE_INTERNAL_DEPENDENCIES:
The memory object was allocated in memory that was previously freed in another stream of the same context. New internal
stream dependencies may have been added in order to establish the stream ordering required to reuse a piece of memory
previously released.
</li>
<li class="li">REQUEST_NEW_ALLOCATION:
New memory had to be allocated for this memory object as no viable reusable pool memory was found.
The allocation performance is comparable to using the non-asynchronous malloc/free APIs.
</li>
</ul>
</div>
</div>
</div>
<div class="topic concept nested1" id="tool-window-sections-info"><a name="tool-window-sections-info" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#tool-window-sections-info" name="tool-window-sections-info" shape="rect">5.6. Sections/Rules Info</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Sections/Rules Info</dfn> window can be opened from the main menu using <dfn class="term">Profile > Sections/Rules Info</dfn>.
It tracks all section sets, sections and rules currently loaded in <span class="keyword">NVIDIA Nsight Compute</span>, independent from a specific connection or report.
The directory to load those files from can be configured in the <a class="xref" href="index.html#options-profile" shape="rect">Profile</a> options dialog.
It is used to inspect available sets, sections and rules, as well as to configure which should be collected, and which rules
should be applied.
The window has two views, which can be selected using the dropdown in its header.
</p>
<p class="p">
The <strong class="ph b">Section Sets</strong> view shows all available section sets. Each set is associated with a number of sections.
You can choose a set appropriate to the level of detail for which you want to collect performance metrics.
Sets which collect more detailed information normally incur higher runtime overhead during profiling.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-section-sets.png"></img></div><br clear="none"></br></div>
<p class="p">
When enabling a set in this view, the associated sections are enabled in the <dfn class="term">Sections/Rules</dfn> view.
When disabling a set in this view, the associated sections in the <dfn class="term">Sections/Rules</dfn> view are disabled.
If no set is enabled, or if sections are manually enabled/disabled in the <dfn class="term">Sections/Rules</dfn> view,
the <dfn class="term"><custom></dfn> entry is marked active to represent that no section set is currently enabled.
Note that the default set is enabled by default.
</p>
<p class="p">
Whenever a kernel is profiled manually, or when auto-profiling is enabled, only sections enabled
in the <strong class="ph b">Sections/Rules</strong> view are collected.
Similarly, whenever rules are applied, only rules enabled in this view are active.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/tool-window-sections.png"></img></div><br clear="none"></br></div>
<p class="p">
The enabled states of sections and rules are persisted across <span class="keyword">NVIDIA Nsight Compute</span> launches.
The <dfn class="term">Reload</dfn> button reloads all sections and rules from disk again.
If a new section or rule is found, it will be enabled if possible.
If any errors occur while loading a rule, they will be listed in an extra
entry with a warning icon and a description of the error.
</p>
<p class="p">
Use the <dfn class="term">Enable All</dfn> and <dfn class="term">Disable All</dfn> checkboxes to enable or disable all sections and rules at once.
The Filter text box can be used to filter what is currently shown in the view.
It does not alter activation of any entry.
</p>
<p class="p">
The table shows sections and rules with their activation status, their relationship
and further parameters, such as associated metrics or the original file on disk.
Rules associated with a section are shown as children of their section entry.
Rules independent of any section are shown under an additional <dfn class="term">Independent Rules</dfn> entry.
</p>
<p class="p">
Double-clicking an entry in the table's <dfn class="term">Filename</dfn> column opens this file as a document.
It can be edited and saved directly in <span class="keyword">NVIDIA Nsight Compute</span>.
After editing the file, <dfn class="term">Reload</dfn> must be selected to apply those changes.
</p>
<p class="p">
When a section or rule file is modified, the entry in the <dfn class="term">State</dfn> column will show <dfn class="term">User Modified</dfn>
to reflect that it has been modified from its default state. When a <dfn class="term">User Modified</dfn> row is selected, the
<dfn class="term">Restore</dfn> button will be enabled. Clicking the <dfn class="term">Restore</dfn> button will restore the entry to its default
state and automatically <dfn class="term">Reload</dfn> the sections and rules.
</p>
<p class="p">
Similarly, when a stock section or rule file is removed from the configured <dfn class="term">Sections Directory</dfn> (specified in the
<a class="xref" href="index.html#options-profile" shape="rect">Profile</a> options dialog), the <dfn class="term">State</dfn> column will show <dfn class="term">User Deleted</dfn>.
<dfn class="term">User Deleted</dfn> files can also be restored using the <dfn class="term">Restore</dfn> button.
</p>
<p class="p">
Section and rule files that are created by the user (and not shipped with <span class="keyword">NVIDIA Nsight Compute</span>) will show up
as <dfn class="term">User Created</dfn> in the <dfn class="term">state column</dfn>.
</p>
<p class="p">
See the <a class="xref" href="../ProfilingGuide/index.html#sections-and-rules" shape="rect">Sections and Rules</a> for the list of default sections for <span class="keyword">NVIDIA Nsight Compute</span>.
</p>
</div>
</div>
</div>
<div class="topic concept nested0" id="profiler-report"><a name="profiler-report" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#profiler-report" name="profiler-report" shape="rect">6. Profiler Report</a></h2>
<div class="body conbody">
<p class="p">
The profiler report contains all the information collected during profiling for each kernel launch.
In the user interface, it consists of a header with general information, as well as controls
to switch between report pages or individual collected launches.
By default, the report starts with the <dfn class="term">Details</dfn> page selected.
</p>
</div>
<div class="topic concept nested1" id="profiler-report-header"><a name="profiler-report-header" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-header" name="profiler-report-header" shape="rect">6.1. Header</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Page</dfn> dropdown can be used to switch between the available report pages,
which are explained in detail in the <a class="xref" href="index.html#profiler-report-pages" shape="rect">next section</a>.
</p>
<div class="fig fignone"><span class="desc figdesc">Profiler report header</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-header.png"></img></div><br clear="none"></br></div>
<p class="p">
The <dfn class="term">Launch</dfn> dropdown can be used to switch between all collected kernel launches.
The information displayed in each page commonly represents the selected launch instance.
On some pages (e.g. <dfn class="term">Raw</dfn>), information for all launches is shown and the selected instance is highlighted.
You can type in this dropdown to quickly filter and find a kernel launch.
</p>
<p class="p">
The <dfn class="term">Apply Filters</dfn> button open the filter dialog.
You can use more than one filter to narrow down your results. On the filter dialog, enter your filter
parameters and press OK button. The <dfn class="term">Launch</dfn> dropdown will be filtered accordingly.
Select the arrow dropdown to access the <dfn class="term">Clear Filters</dfn> button, which removes all filters.
</p>
<div class="fig fignone"><span class="desc figdesc">Filter Dialog</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-header-filter-dialog.png"></img></div><br clear="none"></br></div>
<p class="p">
The <dfn class="term">Add Baseline</dfn> button promotes the current result in focus to become the baseline
of all other results from this report and any other report opened in the same instance of <span class="keyword">NVIDIA Nsight Compute</span>.
Select the arrow dropdown to access the <dfn class="term">Clear Baselines</dfn> button, which removes all currently active baselines.
</p>
<p class="p">
The <dfn class="term">Apply Rules</dfn> button applies all rules available for this report.
If rules had been applied previously, those results will be replaced.
By default, rules are applied immediately once the kernel launch has been profiled.
This can be changed in the options under <dfn class="term">Tools > Options > Profile > Report UI >
Apply Applicable Rules Automatically</dfn>.
</p>
<div class="p">
A button on the right-hand side offers multiple operations that may be performed on the page. Available operations include:
<ul class="ul">
<li class="li"><strong class="ph b">Copy as Image</strong> - Copies the contents of the page to the clipboard as an image.
</li>
<li class="li"><strong class="ph b">Save as Image</strong> - Saves the contents of the page to a file as an image.
</li>
<li class="li"><strong class="ph b">Save as PDF</strong> - Saves the contents of the page to a file as a PDF.
</li>
<li class="li"><strong class="ph b">Export to CSV</strong> - Exports the contents of page to CSV format.
</li>
<li class="li"><strong class="ph b">Reset to Default</strong> - Resets the page to a default state by removing any persisted settings.
</li>
</ul>
</div>
<p class="p">
Note that not all functions are available on all pages.
</p>
<p class="p">
Information about the selected kernel is shown as <dfn class="term">Current</dfn>.
[+] and [-] buttons can be used to show or hide the section body content.
The visibility of the output of the rules can be toggled with the <dfn class="term">r</dfn> button.
The info toggle button <dfn class="term">i</dfn> changes the section description's visibility.
</p>
</div>
</div>
<div class="topic concept nested1" id="profiler-report-pages"><a name="profiler-report-pages" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-pages" name="profiler-report-pages" shape="rect">6.2. Report Pages</a></h3>
<div class="body conbody">
<p class="p">
Use the <dfn class="term">Page</dfn> dropdown in the header to switch between the report pages.
</p>
<p class="p">
By default, when opening a report with a single profile result, the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a> is shown.
When opening a report with multiple results, the <a class="xref" href="index.html#profiler-report-summary-page" shape="rect">Summary Page</a> is selected instead.
You can change the default report page in the <a class="xref" href="index.html#options-profile" shape="rect">Profile</a> options.
</p>
</div>
<div class="topic concept nested2" id="profiler-report-session-page"><a name="profiler-report-session-page" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-session-page" name="profiler-report-session-page" shape="rect">6.2.1. Session Page</a></h3>
<div class="body conbody">
<p class="p">
This <dfn class="term">Session</dfn> page contains basic information about the report and the machine,
as well as device attributes of all devices for which launches were profiled.
When switching between launch instances, the respective device attributes are highlighted.
</p>
</div>
</div>
<div class="topic concept nested2" id="profiler-report-summary-page"><a name="profiler-report-summary-page" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-summary-page" name="profiler-report-summary-page" shape="rect">6.2.2. Summary Page</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Summary</dfn> page shows a list of all collected results in the report,
with selected important metrics.
It gives you a quick comparison overview across all profiled kernel launches.
</p>
<p class="p">
Metric columns can be sorted by clicking the column header.
You can transpose the table of kernels and metrics with the <dfn class="term">Transpose</dfn> button.
Double-click any entry to make the result the currently active one and switch to the
<a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a> page to inspect its performance data.
</p>
<div class="fig fignone"><span class="desc figdesc">Overview metrics help to decide which result to focus on for further analysis.</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-summary.png"></img></div><br clear="none"></br></div>
<p class="p">
For <a class="xref" href="../ProfilingGuide/index.html#range-replay" shape="rect">Range Replay</a> reports,
a smaller set of columns is shown by default, as not all apply to such results.
</p>
</div>
</div>
<div class="topic concept nested2" id="profiler-report-details-page"><a name="profiler-report-details-page" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-details-page" name="profiler-report-details-page" shape="rect">6.2.3. Details Page</a></h3>
<div class="body conbody">
<div class="section" id="profiler-report-details-page__profiler-report-details-page-overview"><a name="profiler-report-details-page__profiler-report-details-page-overview" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Overview</h4>
<p class="p">
The <dfn class="term">Details</dfn> page is the main page for all metric data collected during a kernel launch.
The page is split into individual sections.
Each section consists of a header table and an optional body that can be expanded.
The sections are completely user defined and can be changed easily by updating their respective files.
For more information on customizing sections, see the <a class="xref" href="../CustomizationGuide/index.html#abstract" shape="rect">Customization Guide</a>.
For a list of sections shipped with <span class="keyword">NVIDIA Nsight Compute</span>, see <a class="xref" href="../ProfilingGuide/index.html#sections-and-rules" shape="rect">Sections and Rules</a>.
</p>
<p class="p">
By default, once a new profile result is collected, all applicable rules are applied.
Any rule results will be shown as <dfn class="term">Recommendations</dfn> on this page.
Most rule results will be purely informative or have a warning icon to indicate some performance problem.
Results with error icons typically indicate an error while applying the rule.
</p>
<div class="fig fignone"><span class="desc figdesc">Rule results often point out performance problems and guide through the analysis process.</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-section-with-rule.png"></img></div><br clear="none"></br></div>
<p class="p">
If a rule result references another report section, it will appear as a link in the recommendation.
Select the link to scroll to the respective section.
If the section was not collected in the same profile result, enable it in the <a class="xref" href="index.html#tool-window-sections-info" shape="rect">Sections/Rules Info</a> tool window.
</p>
<p class="p">
You can add or edit comments in each section of the <dfn class="term">Details</dfn> view by clicking on the comment button (speech bubble).
The comment icon will be highlighted in sections that contain a comment.
Comments are persisted in the report and are summarized in the <a class="xref" href="index.html#profiler-report-comments-page" shape="rect">Comments Page</a>.
</p>
<div class="fig fignone"><span class="desc figdesc">Use the Comments button to annotate sections.</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-details-comments.png"></img></div><br clear="none"></br></div>
<p class="p">
Besides their header, sections typically have one or more <dfn class="term">bodies</dfn> with additional charts or tables.
Click the triangle <dfn class="term">Expander</dfn> icon in the top-left corner of each section to show or hide those.
If a section has multiple bodies, a dropdown in their top-right corner allows you to switch between them.
</p>
<div class="fig fignone"><span class="desc figdesc">Sections with multiple bodies have a dropdown to switch between them.</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-section-bodies.png"></img></div><br clear="none"></br></div>
</div>
<div class="section" id="profiler-report-details-page__profiler-report-details-page-rooflines"><a name="profiler-report-details-page__profiler-report-details-page-rooflines" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Rooflines</h4>
<p class="p">
If enabled, the <dfn class="term">GPU Speed Of Light Roofline Chart</dfn> section contains a Roofline chart that is particularly helpful for visualizing kernel performance at a glance.
(To enable roofline charts in the report, ensure that the section is enabled when profiling.)
More information on how to use and read this chart can be found in <a class="xref" href="../ProfilingGuide/index.html#roofline" shape="rect">Roofline Charts</a>.
<span class="keyword">NVIDIA Nsight Compute</span> ships with several different definitions for roofline charts, including hierarchical rooflines.
These additional rooflines are defined in different section files.
While not part of the <dfn class="term">full</dfn> section set, a new section set called <dfn class="term">roofline</dfn> was added to collect and show all rooflines in one report.
The idea of hierarchical rooflines is that they define multiple ceilings that represent the limiters of a hardware hierarchy.
For example, a hierarchical roofline focusing on the memory hierarchy could have ceilings for the throughputs of the L1 cache,
L2 cache and device memory.
If the achieved performance of a kernel is limited by one of the ceilings of a hierarchical roofline, it can indicate that
the corresponding unit of the hierarchy is a potential bottleneck.
</p>
<div class="fig fignone"><span class="desc figdesc">Sample roofline chart.</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-section-rooflines.png"></img></div><br clear="none"></br></div>
<p class="p">
The roofline chart can be zoomed and panned for more effective data analysis, using the controls in the table below.
</p>
<div class="tablenoborder"><a name="profiler-report-details-page__nsight-compute-roofline-zoom-options" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="profiler-report-details-page__nsight-compute-roofline-zoom-options" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 1. Roofline Chart Zoom and Pan Controls</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="25%" id="d54e2712" rowspan="1" colspan="1">Zoom In</th>
<th class="entry" valign="top" width="25%" id="d54e2715" rowspan="1" colspan="1">Zoom Out</th>
<th class="entry" valign="top" width="25%" id="d54e2718" rowspan="1" colspan="1">Zoom Reset</th>
<th class="entry" valign="top" width="25%" id="d54e2721" rowspan="1" colspan="1">Pan</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="25%" headers="d54e2712" rowspan="1" colspan="1">
<ul class="ul">
<li class="li"> Click the Zoom In button in the top right corner of the chart.</li>
<li class="li"> Click the left mouse button and drag to create a rectangle that bounds the area of interest.</li>
<li class="li"> Press the plus (+) key.</li>
<li class="li"> Use Ctrl + MouseWheel (Windows and Linux only)</li>
</ul>
</td>
<td class="entry" valign="top" width="25%" headers="d54e2715" rowspan="1" colspan="1">
<ul class="ul">
<li class="li"> Click the Zoom Out button in the top right corner of the chart.</li>
<li class="li"> Click the right mouse button. </li>
<li class="li"> Press the plus (-) key.</li>
<li class="li"> Use Ctrl + MouseWheel (Windows and Linux only)</li>
</ul>
</td>
<td class="entry" valign="top" width="25%" headers="d54e2718" rowspan="1" colspan="1">
<ul class="ul">
<li class="li"> Click the Zoom Reset button in the top right corner of the chart.</li>
<li class="li"> Press the Escape (Esc) key.</li>
</ul>
</td>
<td class="entry" valign="top" width="25%" headers="d54e2721" rowspan="1" colspan="1">
<ul class="ul">
<li class="li"> Use Ctrl (Command on Mac) + LeftMouseButton to grab the chart, then move the mouse.</li>
<li class="li"> Use the cursor keys.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="section" id="profiler-report-details-page__profiler-report-details-page-memory"><a name="profiler-report-details-page__profiler-report-details-page-memory" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Memory</h4>
<p class="p">
If enabled, the <dfn class="term">Memory Workload Analysis</dfn> section contains a Memory chart that visualizes data transfers,
cache hit rates, instructions and memory requests.
More information on how to use and read this chart can be found in the <a class="xref" href="../ProfilingGuide/index.html#memory-chart" shape="rect">Kernel Profiling Guide</a>.
</p>
</div>
<div class="section" id="profiler-report-details-page__profiler-report-details-page-source"><a name="profiler-report-details-page__profiler-report-details-page-source" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Source</h4>
<p class="p">
Sections such as <dfn class="term">Source Counters</dfn> can contain source hot spot tables.
These tables indicate the N highest or lowest values of one or more metrics in your kernel source code.
Select the location links to navigate directly to this location in the <a class="xref" href="index.html#profiler-report-source-page" shape="rect">Source Page</a>.
Hover the mouse over a value to see which metrics contribute to it.
</p>
<div class="fig fignone"><span class="desc figdesc">Hot spot tables point out performance problems in your source.</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-details-source-table.png"></img></div><br clear="none"></br></div>
</div>
<div class="section" id="profiler-report-details-page__profiler-report-details-page-occupancy"><a name="profiler-report-details-page__profiler-report-details-page-occupancy" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Occupancy</h4>
<p class="p">
You can open the <a class="xref" href="index.html#occupancy-calculator" shape="rect">Occupancy Calculator</a> by clicking on the calculator button
in the report header or in the header of the <dfn class="term">Occupancy Section</dfn>.
</p>
</div>
<div class="section" id="profiler-report-details-page__profiler-report-details-page-notes"><a name="profiler-report-details-page__profiler-report-details-page-notes" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Range Replay</h4>
<p class="p">
Note that for <a class="xref" href="../ProfilingGuide/index.html#range-replay" shape="rect">Range Replay</a> results
some UI elements, analysis rules, metrics or section body items such as charts or tables might not be available,
as they only apply to kernel launch-based results.
The filters can be checked in the corresponding section files.
</p>
</div>
</div>
</div>
<div class="topic concept nested2" id="profiler-report-source-page"><a name="profiler-report-source-page" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-source-page" name="profiler-report-source-page" shape="rect">6.2.4. Source Page</a></h3>
<div class="body conbody">
<div class="section" id="profiler-report-source-page__profiler-report-source-page-overview"><a name="profiler-report-source-page__profiler-report-source-page-overview" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Overview</h4>
<p class="p">
The <dfn class="term">Source</dfn> page correlates assembly (SASS) with high-level code and PTX.
In addition, it displays metrics that can be correlated with source code.
It is filtered to only show (SASS) functions that were executed in the kernel launch.
</p>
<div class="fig fignone"><span class="desc figdesc">Profiler report <dfn class="term">Source</dfn> page</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-source.png"></img></div><br clear="none"></br></div>
<p class="p">
Views allow you to fix columns to not move out of view when scrolling horizontally.
By default, the <dfn class="term">Source</dfn> column is fixed to the left, enabling easy inspection
of all metrics correlated to a source line.
To change fixing of columns, right click the column header and select <dfn class="term">Freeze</dfn> or <dfn class="term">Unfreeze</dfn>, respectively.
</p>
<div class="fig fignone"><span class="desc figdesc">Fix Source column icon in the header</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-fix-column.png"></img></div><br clear="none"></br></div>
</div>
<div class="section" id="profiler-report-source-page__profiler-report-source-page-correlation"><a name="profiler-report-source-page__profiler-report-source-page-correlation" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Source Correlation</h4>
<p class="p">
The <dfn class="term">View</dfn> dropdown can be used to select different code (correlation) options.
This includes SASS, PTX and Source (CUDA-C), as well as their combinations.
Which options are available depends on the source information embedded into the executable.
</p>
<p class="p">
It is possible that some SASS instructions are shown as <dfn class="term">N/A</dfn>.
Those instructions are not currently exposed publicly.
</p>
<p class="p">
You can use the <dfn class="term">Find</dfn> (source code) line edit to search the <dfn class="term">Source</dfn> column.
Enter the text to search and use the associated buttons to find the next or previous occurrence in this column.
While the line edit is selected, you can also use the <dfn class="term">Enter</dfn> or <dfn class="term">Shift+Enter</dfn> keys
to search for the next or previous occurrence, respectively.
</p>
<p class="p">
The CUDA-C view is available if the application was built with the <samp class="ph codeph">-lineinfo</samp> or <samp class="ph codeph">--generate-line-info</samp> nvcc flag to correlate SASS and source.
When selecting a line in the left-hand- or right-hand-side view, any correlated lines in the opposite view are highlighted.
However, when the <a class="xref" href="index.html#options-profile" shape="rect">Show Single File For Multi-File Sources</a> option is set to <dfn class="term">Yes</dfn>, the target file or source object
must already be selected in the respective view for those correlated lines to be shown.
</p>
<p class="p">
When using separate linking at the ELF level, there is no PTX available in the ELF that would correspond to the final SASS.
As such, <span class="keyword">NVIDIA Nsight Compute</span> does not show any PTX even though it would be available statically in the executable and could be shown with <samp class="ph codeph">cuobjdump -all -lptx</samp>.
However, this is a pre-linked version of the PTX and cannot be reliably used for correlation.
</p>
<p class="p">
Only filenames are shown in the view, together with a <dfn class="term">File Not Found</dfn> error, if the source files cannot be found in their original location.
This can occur, for example, if the report was moved to a different system.
Select a filename and click the <dfn class="term">Resolve</dfn> button above to specify where this source can be found on the local filesystem.
However, the view always shows the source files if the <a class="xref" href="index.html#connection-activity-interactive" shape="rect">import source</a> option was selected during profiling,
and the files were available at that time.
If a file is found in its original or any source lookup location, but its attributes don't match, a <dfn class="term">File Mismatch</dfn> error is shown.
See the <a class="xref" href="index.html#options-source-lookup" shape="rect">Source Lookup</a> options for changing file lookup behavior.
</p>
<p class="p">
If the report was collected using remote profiling, and automatic resolution of remote files is enabled in the <a class="xref" href="index.html#options-profile" shape="rect">Profile</a> options,
<span class="keyword">NVIDIA Nsight Compute</span> will attempt to load the source from the remote target.
If the connection credentials are not yet available in the current <span class="keyword">NVIDIA Nsight Compute</span> instance, they are prompted in a dialog.
Loading from a remote target is currently only available for Linux x86_64 targets and Linux and Windows hosts.
</p>
<div class="fig fignone"><span class="desc figdesc">CUDA-C source <dfn class="term">Resolve</dfn> button</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-source-resolve.png"></img></div><br clear="none"></br></div>
</div>
<div class="section" id="profiler-report-source-page__profiler-report-source-page-metrics"><a name="profiler-report-source-page__profiler-report-source-page-metrics" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Metrics Correlation</h4>
<p class="p">
The heatmap on the right-hand side of each view can be used to quickly identify
locations with high metric values of the currently selected metric in the dropdown.
The heatmap uses a black-body radiation color scale where black denotes the lowest
mapped value and white the highest, respectively.
The current scale is shown when clicking and holding the heatmap with the right mouse button.
</p>
<p class="p">
If a view contains multiple source files or functions, [+] and [-] buttons are shown.
These can be used to expand or collapse the view, thereby showing or hiding the
file or function content except for its header.
If collapsed, all metrics are shown aggregated to provide a quick overview.
</p>
<div class="fig fignone"><span class="desc figdesc">Source view heatmap color scale</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-source-heatmap.png"></img></div><br clear="none"></br></div>
<div class="p">
Pre-Defined Source Metrics
<ul class="ul">
<li class="li"><strong class="ph b">Live Registers</strong><p class="p">
Number of registers that need to be kept valid by the compiler.
A high value indicates that many registers are required at this code location,
potentially increasing the register pressure and the maximum number of
register required by the kernel.
</p>
<p class="p">
The total number of registers reported as <samp class="ph codeph">launch__registers_per_thread</samp> may be significantly higher than the maximum live registers.
The compiler may need to allocate specific registers that can creates holes in the allocation, thereby affecting <samp class="ph codeph">launch__registers_per_thread</samp>,
even if the maximum live registers is smaller.
This may happen due to ABI restrictions, or restrictions enforced by particular hardware instructions.
The compiler may not have a complete picture of which registers may be used in either callee or caller and has to obey ABI
conventions,
thereby allocating different registers even if some register could have theoretically been re-used.
</p>
</li>
<li class="li"><strong class="ph b">Warp Stall Sampling (All Cycles)</strong><a name="fnsrc_1" href="#fntarg_1" shape="rect"><sup>1</sup></a><p class="p">
The number of samples from the <a class="xref" href="../ProfilingGuide/index.html#statistical-sampler" shape="rect">Statistical Sampler</a> at this program location.
</p>
</li>
<li class="li"><strong class="ph b">Warp Stall Sampling (Not-issued Cycles)</strong><a name="fnsrc_2" href="#fntarg_2" shape="rect"><sup>2</sup></a><p class="p">
The number of samples from the <a class="xref" href="../ProfilingGuide/index.html#statistical-sampler" shape="rect">Statistical Sampler</a> at this program location
on cycles the warp scheduler issued no instructions. Note that <dfn class="term">(Not Issued)</dfn> samples
may be taken on a different profiling pass than <dfn class="term">(All)</dfn> samples mentioned above,
so their values do not strictly correlate.
</p>
<p class="p">
This metric is only available on devices with compute capability 7.0 or higher.
</p>
</li>
<li class="li"><strong class="ph b">Instructions Executed</strong><p class="p">
Number of times the source (instruction) was executed per individual warp, independent of the number of participating threads
within each warp.
</p>
</li>
<li class="li"><strong class="ph b">Thread Instructions Executed</strong><p class="p">
Number of times the source (instruction) was executed by any thread, regardless of predicate presence or evaluation.
</p>
</li>
<li class="li"><strong class="ph b">Predicated-On Thread Instructions Executed</strong><p class="p">
Number of times the source (instruction) was executed by any active, predicated-on thread.
For instructions that are executed unconditionally (i.e. without predicate), this is the number of active threads in the warp,
multiplied with the respective <dfn class="term">Instructions Executed</dfn> value.
</p>
</li>
<li class="li"><strong class="ph b">Avg. Threads Executed</strong><p class="p">
Average number of thread-level executed instructions per warp, regardless of their predicate.
</p>
</li>
<li class="li"><strong class="ph b">Avg. Predicated-On Threads Executed</strong><p class="p">
Average number of predicated-on thread-level executed instructions per warp.
</p>
</li>
<li class="li"><strong class="ph b">Divergent Branches</strong><p class="p">
Number of divergent branch targets, including fallthrough.
Incremented only when there are two or more active threads with divergent targets.
Divergent branches can lead to warp stalls due to resolving the branch or instruction cache misses.
</p>
</li>
<li class="li"><strong class="ph b">Information on Memory Operations</strong><div class="p">
<table cellpadding="4" cellspacing="0" summary="" border="1" class="simpletable">
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Label</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Name</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Description</strong></td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">Address Space</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_type</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">The accessed address space (global/local/shared).</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">Access Operation</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_access_type</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">The type of memory access (e.g. load or store).</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">Access Size</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_access_size_type</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">The size of the memory access, in bits.</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L1 Tag Requests Global</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_tag_requests_global</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Number of L1 tag requests generated by global memory instructions.</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L1 Wavefronts Shared Excessive</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">derived__memory_l1_wavefronts_shared_excessive</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Excessive number of wavefronts in L1 from shared memory instructions, because not all not predicated-off threads performed
the operation.
Note: This is a derived metric which can not be collected directly.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L1 Wavefronts Shared</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_wavefronts_shared</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Number of wavefronts in L1 from shared memory instructions.</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L1 Wavefronts Shared Ideal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_wavefronts_shared_ideal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Ideal number of wavefronts in L1 from shared memory instructions, assuming each not predicated-off thread performed the operation.</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Theoretical Sectors Global Excessive</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">derived__memory_l2_theoretical_sectors_global_excessive</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Excessive theoretical number of sectors requested in L2 from global memory instructions, because not all not predicated-off
threads performed the operation.
Note: This is a derived metric which can not be collected directly.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Theoretical Sectors Global</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_theoretical_sectors_global</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Theoretical number of sectors requested in L2 from global memory instructions.</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Theoretical Sectors Global Ideal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_theoretical_sectors_global_ideal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Ideal number of sectors requested in L2 from global memory instructions, assuming each not predicated-off thread performed
the operation.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Theoretical Sectors Local</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_theoretical_sectors_local</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Theoretical number of sectors requested in L2 from local memory instructions.</td>
</tr>
</table>
</div>
<p class="p">
All <dfn class="term">L1/L2 Sectors/Wavefronts/Requests</dfn> metrics give the number of achieved (actually required), ideal, and excessive (achieved - ideal) sectors/wavefronts/requests.
<dfn class="term">Ideal</dfn> metrics indicate the number that would needed, given each not predicated-off thread performed the operation of given width.
<dfn class="term">Excessive</dfn> metrics indicate the required surplus over the ideal case.
Reducing divergence between threads can reduce the excess amount and result in less work for the respective HW units.
</p>
<div class="p">
Several of the above metrics on memory operations were renamed in version 2021.2 as follows:
<table cellpadding="4" cellspacing="0" summary="" border="1" class="simpletable">
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Old name</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">New name</strong></td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_sectors_global</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_theoretical_sectors_global</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_sectors_global_ideal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_theoretical_sectors_global_ideal</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_sectors_local</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l2_theoretical_sectors_local</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_sectors_global</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_tag_requests_global</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_sectors_shared</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_wavefronts_shared</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_sectors_shared_ideal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">memory_l1_wavefronts_shared_ideal</td>
</tr>
</table>
</div>
</li>
<li class="li"><strong class="ph b">L2 Explicit Evict Policy Metrics</strong><p class="p">
Starting with the NVIDIA Ampere architecture the eviction policy of the L2 cache can be tuned to match the kernel's access
pattern.
The eviction policy can be either set implicitly for a memory window (for more details see
<a class="xref" href="https://docs.nvidia.com/cuda/cuda-runtime-api/structcudaAccessPolicyWindow.html" target="_blank" shape="rect">CUaccessProperty</a>)
or set explicitly per executed memory instruction. If set explicitly, the desired eviction behavior for the cases of an L2
cache hit or miss are passed as input
to the instruction. For more details refer to CUDA's
<a class="xref" href="https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#cache-eviction-priority-hints" target="_blank" shape="rect">Cache Eviction Priority Hints</a>.
</p>
<div class="p">
<table cellpadding="4" cellspacing="0" summary="" border="1" class="simpletable">
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Label</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Name</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Description</strong></td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Explicit Evict Policies</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">smsp__inst_executed_memdesc_explicit_evict_type</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Comma separated list of configured explicit eviction policies. As the policies can be set dynamically at runtime,
this list includes all policies that were part of any executed instruction.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Explicit Hit Policy Evict First</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">smsp__inst_executed_memdesc_explicit_hitprop_evict_first</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Number of times a memory instruction was executed by any warp which had the <samp class="ph codeph">evict_first</samp> policy set in case the access leads to a cache hit in L2.
Data cached with this policy will be first in the eviction priority order and will likely be evicted when cache eviction is
required.
This policy is suitable for streaming data.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Explicit Hit Policy Evict Last</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">smsp__inst_executed_memdesc_explicit_hitprop_evict_last</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Number of times a memory instruction was executed by any warp which had the <samp class="ph codeph">evict_last</samp> policy set in case the access leads to a cache hit in L2.
Data cached with this policy will be last in the eviction priority order and will likely be evicted only after other data
with <samp class="ph codeph">evict_normal</samp> or <samp class="ph codeph">evict_first</samp> eviction policy is already evicted.
This policy is suitable for data that should remain persistent in cache.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Explicit Hit Policy Evict Normal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">smsp__inst_executed_memdesc_explicit_hitprop_evict_normal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Number of times a memory instruction was executed by any warp which had the <samp class="ph codeph">evict_normal</samp> (default) policy set in case the access leads to a cache hit in L2.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Explicit Hit Policy Evict Normal Demote</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">smsp__inst_executed_memdesc_explicit_hitprop_evict_normal_demote</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Number of times a memory instruction was executed by any warp which had the <samp class="ph codeph">evict_normal_demote</samp> policy set in case the access leads to a cache hit in L2.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Explicit Miss Policy Evict First</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">smsp__inst_executed_memdesc_explicit_missprop_evict_first</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Number of times a memory instruction was executed by any warp which had the <samp class="ph codeph">evict_first</samp> policy set in case the access leads to a cache miss in L2.
Data cached with this policy will be first in the eviction priority order and will likely be evicted cache eviction is required.
This policy is suitable for streaming data.
</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">L2 Explicit Miss Policy Evict Normal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">smsp__inst_executed_memdesc_explicit_missprop_evict_normal</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">
Number of times a memory instruction was executed by any warp which had the <samp class="ph codeph">evict_normal</samp> (default) policy set in case the access leads to a cache miss in L2.
</td>
</tr>
</table>
</div>
</li>
<li class="li"><strong class="ph b">Individual Warp Stall Sampling Metrics</strong><p class="p">
All <dfn class="term">stall_*</dfn> metrics show the information combined in <dfn class="term">Warp Stall Sampling</dfn> individually.
See <a class="xref" href="../ProfilingGuide/index.html#statistical-sampler" shape="rect">Statistical Sampler</a> for their descriptions.
</p>
</li>
<li class="li">
See the <a class="xref" href="../CustomizationGuide/index.html#abstract" shape="rect">Customization Guide</a> on how to add additional metrics for this view.
</li>
</ul>
</div>
</div>
<div class="section" id="profiler-report-source-page__profiler-report-source-page-registers"><a name="profiler-report-source-page__profiler-report-source-page-registers" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Register Dependencies</h4>
<p class="p">
Dependencies between registers are displayed in the SASS view. When a register is read, all the potential addresses
where it could have been written are found. The links between these lines are drawn in the view. All dependencies
for registers, predicates, uniform registers and uniform predicates are shown in their respective columns.
</p>
<div class="fig fignone"><span class="desc figdesc">Register dependencies tracking in the SASS view</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-source-register-dependencies.png"></img></div><br clear="none"></br></div>
<p class="p">
The picture above shows some dependencies for a simple CUDA kernel. On the first row, which is line 9 of the SASS code,
we can see <dfn class="term">writes</dfn> on registers R2 and R3, represented by <dfn class="term">filled triangles pointing to the left</dfn>.
These registers are then <dfn class="term">read</dfn> on lines 17, 20 and 23, and this is represented by <dfn class="term">regular triangles pointing to the right</dfn>.
There are also some lines where both types of triangles are on the same line, which means that a read and a write occured
for the same register.
</p>
<p class="p">
Dependencies across source files and functions are not tracked.
</p>
<p class="p">
The Register Dependencies Tracking feature is enabled by default, but can be disabled completely
in <dfn class="term">Tools > Options > Profile > Report Source Page > Enable Register Dependencies.</dfn></p>
</div>
<div class="section" id="profiler-report-source-page__profiler-report-source-page-range-results"><a name="profiler-report-source-page__profiler-report-source-page-range-results" shape="rect">
<!-- --></a><h4 class="title sectiontitle">Range Replay</h4>
<p class="p">
This page is not available for <a class="xref" href="../ProfilingGuide/index.html#range-replay" shape="rect">Range Replay</a> results.
</p>
</div>
</div>
</div>
<div class="topic concept nested2" id="profiler-report-comments-page"><a name="profiler-report-comments-page" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-comments-page" name="profiler-report-comments-page" shape="rect">6.2.5. Comments Page</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Comments</dfn> page aggregates all section comments in a single view and allows the
user to edit those comments on any launch instance or section, as well as on the overall report.
Comments are persisted with the report. If a section comment is added,
the comment icon of the respective section in the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a>
will be highlighted.
</p>
</div>
</div>
<div class="topic concept nested2" id="profiler-report-nvtx-page"><a name="profiler-report-nvtx-page" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-nvtx-page" name="profiler-report-nvtx-page" shape="rect">6.2.6. Call Stack / NVTX Page</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">CPU Call Stack</dfn> section of this report page shows the CPU call stack for the executing
CPU thread at the time the kernel was launched. For this information to show up in the profiler report,
the option to collect CPU call stacks had to be enabled in the <a class="xref" href="index.html#connection-dialog" shape="rect">Connection Dialog</a> or using
the corresponding <span class="keyword">NVIDIA Nsight Compute CLI</span> command line parameter.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-callstack.png"></img></div><br clear="none"></br></div>
<p class="p">
The <dfn class="term">NVTX State</dfn> section of this report page shows the NVTX context when the kernel was launched.
All thread-specific information is with respect to the thread of the kernel's launch API call.
Note that NVTX information is only collected if the profiler is started with NVTX support enabled,
either in the <a class="xref" href="index.html#connection-dialog" shape="rect">Connection Dialog</a> or using the <span class="keyword">NVIDIA Nsight Compute CLI</span>
command line parameter.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/profiler-report-pages-nvtx.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested2" id="profiler-report-raw-page"><a name="profiler-report-raw-page" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-raw-page" name="profiler-report-raw-page" shape="rect">6.2.7. Raw Page</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Raw</dfn> page shows a list of all collected metrics with their units per profiled kernel launch.
It can be exported, for example, to CSV format for further analysis.
The page features a filter edit to quickly find specific metrics.
You can transpose the table of kernels and metrics by using the <dfn class="term">Transpose</dfn> button.
</p>
</div>
</div>
</div>
<div class="topic concept nested1" id="profiler-report-metrics"><a name="profiler-report-metrics" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#profiler-report-metrics" name="profiler-report-metrics" shape="rect">6.3. Metrics and Units</a></h3>
<div class="body conbody">
<p class="p">
Numeric metric values are shown in various places in the report, including the header and tables and charts on most pages.
<span class="keyword">NVIDIA Nsight Compute</span> supports various ways to display those metrics and their values.
</p>
<p class="p">
When available and applicable to the UI component, metrics are shown along with their unit.
This is to make it apparent if a metric represents cycles, threads, bytes/s, and so on.
The unit will normally be shown in rectangular brackets, e.g. <samp class="ph codeph">Metric Name [bytes] 128</samp>.
</p>
<p class="p">
By default, units are scaled automatically so that metric values are shown with a reasonable order of magnitude.
Units are scaled using their SI-factors, i.e. byte-based units are scaled using a factor of 1000 and the prefixes K, M, G,
etc.
Time-based units are also scaled using a factor of 1000, with the prefixes n, u and m.
This scaling can be disabled in the <a class="xref" href="index.html#options-profile" shape="rect">Profile</a> options.
</p>
<p class="p">
Metrics which could not be collected are shown as <samp class="ph codeph">n/a</samp> and assigned a warning icon.
If the metric floating point value is out of the regular range (i.e. <samp class="ph codeph">nan</samp> (Not a number) or <samp class="ph codeph">inf</samp> (infinite)),
they are also assigned a warning icon.
The exception are metrics for which these values are expected and which are white-listed internally.
</p>
</div>
</div>
</div>
<div class="topic concept nested0" id="baselines"><a name="baselines" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#baselines" name="baselines" shape="rect">7. Baselines</a></h2>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> supports diffing collected results across one or multiple reports using Baselines.
Each result in any report can be promoted to a baseline.
This causes metric values from all results in all reports to show the difference to the baseline.
If multiple baselines are selected simultaneously, metric values are compared to the average across all current baselines.
Note that currently, baselines are not stored with a report and are only available as long as the same
<span class="keyword">NVIDIA Nsight Compute</span> instance is open.
</p>
<div class="fig fignone"><span class="desc figdesc">Profiler report with one baseline</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/baselines.png"></img></div><br clear="none"></br></div>
<p class="p">
Select <dfn class="term">Add Baseline</dfn> to promote the current result in focus to become a baseline.
If a baseline is set, most metrics on the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a>,
<a class="xref" href="index.html#profiler-report-raw-page" shape="rect">Raw Page</a> and <a class="xref" href="index.html#profiler-report-summary-page" shape="rect">Summary Page</a> show two values:
the current value of the result in focus, and the corresponding value of the baseline or the percentage of change from
the corresponding baseline value. (Note that an infinite percentage gain, <em class="ph i">inf%</em>, may be displayed when the baseline
value for the metric is zero, while the focus value is not.)
</p>
<div class="p">
If multiple baselines are selected, each metric will show the following notation:
<pre class="pre screen" xml:space="preserve"><focus value> (<difference to baselines average [%]>, z=<standard score>@<number of values>)</pre>
The standard score is the difference between the current value and the average across all baselines,
normalized by the standard deviation. If the number of metric values contributing to the standard score equals the
number of results (current and all baselines), the @<number of values> notation is omitted.
</div>
<div class="fig fignone"><span class="desc figdesc">Profiler report with multiple baselines</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/baselines-multiple.png"></img></div><br clear="none"></br></div>
<p class="p">
Hovering the mouse over a baseline name allows the user to edit the displayed name.
Hovering over the baseline color icon allows the user to remove this specific baseline from the list.
</p>
<p class="p">
Use the <dfn class="term">Clear Baselines</dfn> entry from the dropdown button, the <a class="xref" href="index.html#options-profile" shape="rect">Profile</a> menu, or the
corresponding toolbar button to remove all baselines.
</p>
</div>
</div>
<div class="topic concept nested0" id="cubin-viewer"><a name="cubin-viewer" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#cubin-viewer" name="cubin-viewer" shape="rect">8. Standalone Source Viewer</a></h2>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> includes a standalone source viewer for <dfn class="term">cubin</dfn> files.
This view is identical to the <a class="xref" href="index.html#profiler-report-source-page" shape="rect">Source Page</a>, except that it won’t include any performance metrics.
</p>
<p class="p">
Cubin files can be opened from the <dfn class="term">File > Open</dfn> main menu command. The SM Selection dialog will be shown
before opening the standalone source view. If available, the SM version present in the file name is pre-selected.
For example, if your file name is <samp class="ph codeph">mergeSort.sm_80.cubin</samp> then SM 8.0 will be pre-selected in the dialog.
Choose the appropriate SM version from the drop down menu if it’s not included in the file name.
</p>
<div class="fig fignone"><span class="desc figdesc">SM Selection Dialog</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/sm-selection-dialog.png"></img></div><br clear="none"></br></div>
<p class="p">
Click Ok button to open <a class="xref" href="index.html#cubin-viewer" shape="rect">Standalone Source Viewer</a>.
</p>
<div class="fig fignone"><span class="desc figdesc">Standalone Source Viewer</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/cubin-viewer.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested0" id="occupancy-calculator"><a name="occupancy-calculator" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#occupancy-calculator" name="occupancy-calculator" shape="rect">9. Occupancy Calculator</a></h2>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> provides an <dfn class="term">Occupancy Calculator</dfn> that allows you to compute the
multiprocessor occupancy of a GPU for a given CUDA kernel. It offers feature parity to the CUDA Occupancy Calculator
<a class="xref" href="http://docs.nvidia.com/cuda/cuda-occupancy-calculator/index.html" target="_blank" shape="rect">spreadsheet</a>.
</p>
<p class="p">
The Occupancy Calculator can be opened directly from a profile report or as a new activity. The occupancy
calculator data can be saved to a file using <dfn class="term">File > Save</dfn>. By default, the file uses the
<samp class="ph codeph">.ncu-occ</samp> extension. The occupancy calculator file can be opened using <dfn class="term">File > Open File</dfn></p>
<ol class="ol">
<li class="li"><strong class="ph b">Launching from the <dfn class="term">Connection Dialog</dfn></strong><p class="p">
Select the Occupancy Calculator activity from the connection dialog.
You can optionally specify an occupancy calculator data file, which is used to
initialize the calculator with the data from the saved file. Click the <dfn class="term">Launch</dfn>
button to open the Occupancy Calculator.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/occupancy-calculator-activity.png"></img></div><br clear="none"></br></div>
</li>
<li class="li"><strong class="ph b">Launching from the <dfn class="term">Profiler Report</dfn></strong><p class="p">
The Occupancy Calculator can be opened from the <dfn class="term">Profiler Report</dfn>
using the calculator button located in the report header or in the header of the
<dfn class="term">Occupancy</dfn> section on the <dfn class="term">Detail Page</dfn>.
</p>
<div class="fig fignone"><span class="desc figdesc">Details page header</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/occupancy-calculator-from-header.png"></img></div><br clear="none"></br></div>
<div class="fig fignone"><span class="desc figdesc">Occupancy section header</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/occupancy-calculator-from-section.png"></img></div><br clear="none"></br></div>
</li>
</ol>
<p class="p">
The user interface consists of an input section as well as tables and graphs that display
information about GPU occupancy. To use the calculator, change the input values in the input
section, click the <dfn class="term">Apply</dfn> button and examine the tables and graphs.
</p>
</div>
<div class="topic concept nested1" id="occupancy-calculator-tables"><a name="occupancy-calculator-tables" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#occupancy-calculator-tables" name="occupancy-calculator-tables" shape="rect">9.1. Tables</a></h3>
<div class="body conbody">
<p class="p">
The tables show the occupancy, as well as the number of active threads, warps, and
thread blocks per multiprocessor, and the maximum number of active blocks on the GPU.
</p>
<div class="fig fignone"><span class="desc figdesc">Tables</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/occupancy-calculator-tables.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested1" id="occupancy-calculator-graphs"><a name="occupancy-calculator-graphs" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#occupancy-calculator-graphs" name="occupancy-calculator-graphs" shape="rect">9.2. Graphs</a></h3>
<div class="body conbody">
<p class="p">
The graphs show the occupancy for your chosen block size as a blue circle,
and for all other possible block sizes as a line graph.
</p>
<div class="fig fignone"><span class="desc figdesc">Graphs</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/occupancy-calculator-graphs.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested1" id="occupancy-calculator-gpu-data"><a name="occupancy-calculator-gpu-data" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#occupancy-calculator-gpu-data" name="occupancy-calculator-gpu-data" shape="rect">9.3. GPU Data</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">GPU Data</dfn> shows the properties of all supported devices.
</p>
<div class="fig fignone"><span class="desc figdesc">GPU Data</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/occupancy-calculator-gpu-data.png"></img></div><br clear="none"></br></div>
</div>
</div>
</div>
<div class="topic concept nested0" id="as-viewer"><a name="as-viewer" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#as-viewer" name="as-viewer" shape="rect">10. Acceleration Structure Viewer</a></h2>
<div class="body conbody">
<p class="p">
The <dfn class="term">Acceleration Structure Viewer</dfn> allows inspection of
acceleration structures built using the OptiX API. In modern ray
tracing APIs like OptiX, <dfn class="term">acceleration structures</dfn> are data
structures describing the rendered scene's geometries that will be
intersected when performing ray tracing operations. More information
concerning acceleration structures can be found in the <a class="xref" href="https://raytracing-docs.nvidia.com/optix7/guide/index.html#acceleration_structures#acceleration-structures" target="_blank" shape="rect"> OptiX programming guide</a>.
</p>
<p class="p">
It is the responsibility of the user to set these up and pass them to
the OptiX API which translates them to internal data structures that
perform well on modern GPUs. The description created by the user can be
very error-prone and it is sometimes hard to understand why the rendered
result is not as expected. The <dfn class="term">Acceleration Structure
Viewer</dfn> is a component allowing OptiX users to inspect the
acceleration structures they build before launching a ray tracing
pipeline.
</p>
<p class="p">
The <dfn class="term">Acceleration Structure Viewer</dfn> is opened through a
button in the <a class="xref" href="index.html#tool-window-resources" shape="rect">Resources</a> window. The button
will only be available when the currently viewed resource is <dfn class="term">
OptiX: TraversableHandles</dfn>. It opens the currently selected
handle.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/as-viewer-open-button.png"></img></div><br clear="none"></br></div>
<p class="p">
The viewer is multi-paned: it shows a hierarchical view of the
acceleration structure on the left, a graphical view of the
acceleration structure in the middle, and controls and
options on the right. In the hierarchical tree view on the left of the
viewer the <dfn class="term">instance acceleration structures (IAS)</dfn>,
<dfn class="term">geometry acceleration structures (GAS)</dfn>, child instances and
child geometries are shown. In addition to this, some general properties
for each of them is shown such as their primitive count, surface area and
size on the device.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/as-viewer.png"></img></div><br clear="none"></br></div>
<p class="p">
In the hierarchical view on the left of the <dfn class="term">Acceleration Structure
Viewer</dfn>, the following information is displayed where applicable.
</p>
<div class="p">
<div class="tablenoborder"><a name="as-viewer__table_bvw_4vr_j4b" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="as-viewer__table_bvw_4vr_j4b" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 2. Acceleration Structure Hierarchical Columns</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="15.337423312883436%" id="d54e4134" rowspan="1" colspan="1">Column</th>
<th class="entry" valign="top" width="84.66257668711657%" id="d54e4137" rowspan="1" colspan="1">Description</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="15.337423312883436%" headers="d54e4134" rowspan="1" colspan="1">Name</td>
<td class="entry" valign="top" width="84.66257668711657%" headers="d54e4137" rowspan="1" colspan="1">An identifier for each row in the hierarchy. Click on the check
box next to the name to show or hide the selected geometry or
hierarchy. Double-click on this entry to jump to the item in the
rendering view.
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="15.337423312883436%" headers="d54e4134" rowspan="1" colspan="1"># Prims</td>
<td class="entry" valign="top" width="84.66257668711657%" headers="d54e4137" rowspan="1" colspan="1">The number of primitives that make up this acceleration structure.</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="15.337423312883436%" headers="d54e4134" rowspan="1" colspan="1">Surface Area</td>
<td class="entry" valign="top" width="84.66257668711657%" headers="d54e4137" rowspan="1" colspan="1">A calculation of the total surface area for the AABB that bounds
the particular entry.
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="15.337423312883436%" headers="d54e4134" rowspan="1" colspan="1">Size</td>
<td class="entry" valign="top" width="84.66257668711657%" headers="d54e4137" rowspan="1" colspan="1">The size of the output buffer on the device holding
this <dfn class="term">acceleration structure</dfn>.
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="p">
Performance analysis tools are accessible in the bottom left corner
on the main view. These tools help identify potential performance
problems that are outlined in the <a class="xref" href="https://developer.nvidia.com/blog/best-practices-using-nvidia-rtx-ray-tracing" target="_blank" shape="rect"><u class="ph u">RTX Ray Tracing Best Practices Guide</u></a>.
These analysis tools aim to give a broad picture of acceleration
structures that may exhibit sub-optimal performance. To find the
most optimal solution, profiling and experimentation is recommended
but these tools may paint a better picture as to why one structure
performs poorly compared to another.
</p>
<div class="p">
<div class="tablenoborder"><a name="as-viewer__table_bvw_4vr_j4b_as2" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="as-viewer__table_bvw_4vr_j4b_as2" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 3. Acceleration Structure Analysis Tools</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="15.337423312883436%" id="d54e4211" rowspan="1" colspan="1">Action</th>
<th class="entry" valign="top" width="84.66257668711657%" id="d54e4214" rowspan="1" colspan="1">Description</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="15.337423312883436%" headers="d54e4211" rowspan="1" colspan="1">Instance Overlaps</td>
<td class="entry" valign="top" width="84.66257668711657%" headers="d54e4214" rowspan="1" colspan="1">Identifies instance AABBs that overlap with
other instances in 3D. Consider merging GASes when
instance world-space AABBs overlap significantly to
potentially increase performance.
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="15.337423312883436%" headers="d54e4211" rowspan="1" colspan="1">Instance Heatmap</td>
<td class="entry" valign="top" width="84.66257668711657%" headers="d54e4214" rowspan="1" colspan="1"> This allows you to set the threshold used by
the AABB heatmap rendered in the visualizer.
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="p"></p>
</div>
<div class="topic concept nested1" id="as-viewer-nav"><a name="as-viewer-nav" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#as-viewer-nav" name="as-viewer-nav" shape="rect">Navigation</a></h3>
<div class="body conbody">
<p class="shortdesc"></p>
<p class="p">
The <dfn class="term">Acceleration Structure Viewer</dfn> supports multiple
navigation modes. The navigation mode can be changed using the combo box
in the camera controls pane, to the right of the rendering pane. The
keyboard and mouse bindings for each mode are as follows:
</p>
<div class="p">
<div class="tablenoborder"><a name="as-viewer-nav__table_someId" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="as-viewer-nav__table_someId" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 4. Acceleration Structure Key Bindings</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="10%" id="d54e4283" rowspan="1" colspan="1">Binding</th>
<th class="entry" valign="top" width="30%" id="d54e4286" rowspan="1" colspan="1">Fly Camera</th>
<th class="entry" valign="top" width="30%" id="d54e4289" rowspan="1" colspan="1">Dolly Camera</th>
<th class="entry" valign="top" width="30%" id="d54e4292" rowspan="1" colspan="1">Orbit Camera</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">WASD/Arrow Keys</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Move forward, backward, left, right</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Move forward, backward, left, right</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Track (Move up, down, left, right)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">E/Q</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Move up/down</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Move up/down</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">n/a</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">Z/C</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Increase/decrease field of view</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Increase/decrease field of view</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Increase/decrease field of view</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">Shift/Ctrl</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Move faster/slower</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Move faster/slower</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Move faster/slower</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">Mousewheel</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Zoom in/out</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Zoom in/out</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Zoom in/out</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">LMB + Drag</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Rotate in place</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Rotate left/right, move forward/backward</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Rotate around the geometry</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">RMB + Drag</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Zoom in/out</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Rotate in place</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Zoom in/out</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">MMB + Drag</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Track (Move up, down, left, right)</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Track (Move up, down, left, right)</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Track (Move up, down, left, right)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">Alt</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Temporarily switch to Orbit Camera</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Temporarily switch to Orbit Camera</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">n/a</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="10%" headers="d54e4283" rowspan="1" colspan="1"><strong class="ph b">F/Double Click</strong></td>
<td class="entry" valign="top" width="30%" headers="d54e4286" rowspan="1" colspan="1">Focus on the selected geometry</td>
<td class="entry" valign="top" width="30%" headers="d54e4289" rowspan="1" colspan="1">Focus on the selected geometry</td>
<td class="entry" valign="top" width="30%" headers="d54e4292" rowspan="1" colspan="1">Focus on the selected geometry</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="p">
Based on the coordinate system of the input geometry, you may need to
change the <strong class="ph b">Up Direction</strong> setting to Z-Axis or the <strong class="ph b">Coordinates</strong>
setting to RHS. To reset the camera to its original location, click
<strong class="ph b">Reset Camera</strong>.
</p>
<p class="p">
There are also a selection of Camera Controls for fast and precise
navigation. To save a position, use the bookmarks controls. Each node
within the acceleration structure hierarchy can also be double-clicked to
quickly navigate to that location.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/as-viewer-cam.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested1" id="as-viewer-filtering"><a name="as-viewer-filtering" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#as-viewer-filtering" name="as-viewer-filtering" shape="rect">10.2. Filtering and Highlighting</a></h3>
<div class="body conbody">
<p class="shortdesc"></p>
<p class="p">
The acceleration structure view supports acceleration structure filtering
as well as highlighting of data matching particular characteristics. The
checkboxes next to each geometry allow users to toggle the rendering of
each traversable.
</p>
<p class="p">
Geometry instances can also be selected by clicking on them in the main
graphical view. Additionally, right clicking in the main graphical view
gives options to hide or show all geometry, hide the selected geometry, or
hide all but the selected geometry.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/as-viewer-display-filter.png"></img></div><br clear="none"></br></div>
<p class="p">
Beyond filtering, the view also supports highlight-based identification of
geometry specified with particular flags. Checking each highlight option
will identify those resources matching that flag, colorizing for easy
identification. Clicking an entry in this section will dim all geometry
that does <strong class="ph b">not</strong> meet the filter criteria allowing items that match
the filter to standout. Selecting multiple filters requires the passing
geometry to meet all selected filters (e.g., AND logic). Additionally, the
heading text will be updated to reflect the number of items that meet this
filter criteria.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/as-viewer-property-filter.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested1" id="as-viewer-rendering-options"><a name="as-viewer-rendering-options" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#as-viewer-rendering-options" name="as-viewer-rendering-options" shape="rect">10.3. Rendering Options</a></h3>
<div class="body conbody">
<p class="shortdesc"></p>
<p class="p">
Under the highlight controls, additional rendering options are available.
These include methods to control the geometry colors and the ability to
toggle the drawing of wireframes for meshes and AABBs.
</p>
<div class="fig fignone"><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/as-viewer-rendering-options.png"></img></div><br clear="none"></br></div>
</div>
</div>
<div class="topic concept nested1" id="as-viewer-exporting"><a name="as-viewer-exporting" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#as-viewer-exporting" name="as-viewer-exporting" shape="rect">10.4. Exporting</a></h3>
<div class="body conbody">
<p class="shortdesc"></p>
<p class="p">
The data displayed in the acceleration structure viewer document can be
saved to file. Exporting an <dfn class="term">Acceleration Structure Viewer</dfn>
document allows for persisting the data you have collected beyond the
immediate analysis session. This capability is particularly valuable for
comparing different revisions of your geometry or sharing with others.
Bookmarks are persisted as well.
</p>
</div>
</div>
</div>
<div class="topic concept nested0" id="options"><a name="options" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#options" name="options" shape="rect">11. Options</a></h2>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> options can be accessed via the main menu under <dfn class="term">Tools > Options</dfn>.
All options are persisted on disk and available the next time <span class="keyword">NVIDIA Nsight Compute</span> is launched.
When an option is changed from its default setting, its label will become bold.
You can use the <dfn class="term">Restore Defaults</dfn> button to restore all options to their default values.
</p>
<div class="fig fignone"><span class="desc figdesc">Profile options</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/options-profile.png"></img></div><br clear="none"></br></div>
</div>
<div class="topic concept nested1" id="options-profile"><a name="options-profile" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#options-profile" name="options-profile" shape="rect">11.1. Profile</a></h3>
<div class="body conbody">
<div class="tablenoborder"><a name="options-profile__nsight-compute-profile-options" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="options-profile__nsight-compute-profile-options" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 5. <span class="keyword">NVIDIA Nsight Compute</span> Profile Options</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="33.33333333333333%" id="d54e4641" rowspan="1" colspan="1">Name</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e4644" rowspan="1" colspan="1">Description</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e4647" rowspan="1" colspan="1">Values</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Sections Directory</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">
Directory from which to import section files and rules.
Relative paths are with respect to the <span class="keyword">NVIDIA Nsight Compute</span> installation directory.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1"> </td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Include Sub-Directories</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Recursively include section files and rules from sub-directories.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes (Default)/No</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Apply Applicable Rules Automatically</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Automatically apply active and applicable rules.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes (Default)/No</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Reload Rules Before Applying</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Force a rule reload before applying the rule to ensure changes in the rule script are recognized.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes/No (Default)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Default Report Page</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">
The report page to show when a report is generated or opened.
<dfn class="term">Auto</dfn> lets the tool decide the best page to show when opening a report.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
Session
</li>
<li class="li">
Summary
</li>
<li class="li">
Details
</li>
<li class="li">
Source
</li>
<li class="li">
Comments
</li>
<li class="li">
Call Stack/NVTX
</li>
<li class="li">
Raw
</li>
<li class="li">
Auto (default)
</li>
</ul>
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Function Name Mode</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">
Determines how function/kernel names are shown.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
Auto (default): each component uses its preferred mode
</li>
<li class="li">
Demangled: kernel names are shown demangled with all parameters
</li>
<li class="li">
Function: kernel names are shown with their demangled function name without parameters
</li>
<li class="li">
Mangled: kernel names are shown with their mangled name, if applicable
</li>
</ul>
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">NVTX Rename Mode</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">
Determines how NVTX information is used for renaming.
Range replay results are always renamed when possible.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
None: no renaming
</li>
<li class="li">
Kernel: kernel names are renamed using the most recent enclosing push/pop range
</li>
<li class="li">
Resources (default): resources like CPU threads or CUDA contexts and streams are renamed
</li>
<li class="li">
All: Kernel and Resources
</li>
</ul>
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Maximum Baseline Name Length</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">
The maximum length of baseline names.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">1..N (Default: 40)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Number of Full Baselines to Display</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">
Number of baselines to display in the report
header with all details in addition to the current result.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">0..N (Default: 2)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Auto-Convert Metric Units</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Auto-adjust displayed metric units and values (e.g. Bytes to KBytes).</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes (Default)/No</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Show Instanced Metric Values</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Show the individual values of instanced metrics in tables.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes/No (Default)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Show Metrics As Floating Point</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Show all numeric metrics as floating-point numbers.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes/No (Default)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Show Knowledge Base Information</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">
Show information from the knowledge base in (metric) tooltips to explain terminology.
Note: Nsight Compute needs to be restarted for this option to take effect.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes (Default)/No</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Additional Metrics</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">List of additional metrics to show on the summary page. Comma-separated list of metric entries. Each entry has the format
{Label:MeticName}.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1"> </td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Delay Load 'Source' Page</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Delays loading the content of the report page until the page becomes visible. Avoids processing costs and memory overhead
until the report page is opened.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes/No (Default)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Show Single File For Multi-File Sources</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Shows a single file in each Source page view, even for multi-file sources.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes/No (Default)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Show Only Executed Functions</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Shows only executed functions in the source page views. Disabling this can impact performance.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes (Default)/No</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">Auto-Resolve Remote Source Files</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Automatically try to resolve remote source files on the source page (e.g. via SSH) if the connection is still registered.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">Yes/No (Default)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4641" rowspan="1" colspan="1">API Call History</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4644" rowspan="1" colspan="1">Number of recent API calls shown in API Stream View.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4647" rowspan="1" colspan="1">1..N (Default: 100)</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="topic concept nested1" id="options-environment"><a name="options-environment" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#options-environment" name="options-environment" shape="rect">11.2. Environment</a></h3>
<div class="body conbody">
<div class="tablenoborder"><a name="options-environment__nsight-compute-environment-options" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="options-environment__nsight-compute-environment-options" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 6. <span class="keyword">NVIDIA Nsight Compute</span> Environment Options</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="33.33333333333333%" id="d54e4978" rowspan="1" colspan="1">Name</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e4981" rowspan="1" colspan="1">Description</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e4984" rowspan="1" colspan="1">Values</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4978" rowspan="1" colspan="1">Color Theme</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4981" rowspan="1" colspan="1">The currently selected UI color theme.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4984" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
Dark (Default)
</li>
<li class="li">
Light
</li>
</ul>
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4978" rowspan="1" colspan="1">Mixed DPI Scaling</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4981" rowspan="1" colspan="1">Disable Mixed DPI Scaling if unwanted artifacts are detected when using monitors with different DPIs.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4984" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
Auto (Default)
</li>
<li class="li">
Off
</li>
</ul>
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4978" rowspan="1" colspan="1">Default Document Folder</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4981" rowspan="1" colspan="1">Directory where documents unassociated with a project will be saved.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4984" rowspan="1" colspan="1"> </td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4978" rowspan="1" colspan="1">At Startup</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4981" rowspan="1" colspan="1">What to do when <span class="keyword">NVIDIA Nsight Compute</span> is launched.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4984" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
Show welcome page (Default)
</li>
<li class="li">
Show quick launch dialog
</li>
<li class="li">
Load last project
</li>
<li class="li">
Show empty environment
</li>
</ul>
</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4978" rowspan="1" colspan="1">Show version update notifications</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4981" rowspan="1" colspan="1">Show notifications when a new version of this product is available.</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e4984" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
Yes (Default)
</li>
<li class="li">
No
</li>
</ul>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="topic concept nested1" id="options-connection"><a name="options-connection" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#options-connection" name="options-connection" shape="rect">11.3. Connection</a></h3>
<div class="body conbody">
<p class="p"> Connection properties are grouped into <dfn class="term">Target Connection Options</dfn> and <dfn class="term">Host Connection Properties</dfn>.
</p>
</div>
<div class="topic concept nested2" id="options-connection-target"><a name="options-connection-target" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#options-connection-target" name="options-connection-target" shape="rect">Target Connection Properties</a></h3>
<div class="body conbody">
<p class="p">The <dfn class="term">Target Connection Properties</dfn> determine how the host connects to the target application during an <dfn class="term">Interactive Profile Activity</dfn>.
This connection is used to transfer profile information to the host during the profile session.
</p>
<div class="tablenoborder"><a name="options-connection-target__nsight-compute-connection-options-target" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="options-connection-target__nsight-compute-connection-options-target" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 7. <span class="keyword">NVIDIA Nsight Compute</span> Target Connection Properties</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5152" rowspan="1" colspan="1">Name</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5155" rowspan="1" colspan="1">Description</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5158" rowspan="1" colspan="1">Values</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5152" rowspan="1" colspan="1">Base Port</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5155" rowspan="1" colspan="1">
Base port used to establish a connection from the host to the target application during an <dfn class="term">Interactive Profile</dfn> activity (both local and remote).
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5158" rowspan="1" colspan="1">1-65535 (Default: 49152)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5152" rowspan="1" colspan="1">Maximum Ports</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5155" rowspan="1" colspan="1">Maximum number of ports to try (starting from <dfn class="term">Base Port</dfn>) when attempting to connect to the target application.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5158" rowspan="1" colspan="1">2-65534 (Default: 64)</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="topic concept nested2" id="options-connection-target-host"><a name="options-connection-target-host" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#options-connection-target-host" name="options-connection-target-host" shape="rect">Host Connection Properties</a></h3>
<div class="body conbody">
<p class="p">The <dfn class="term">Host Connection Properties</dfn> determine how the command line profiler will connect to the host application during a <dfn class="term">Profile Activity</dfn>.
This connection is used to transfer profile information to the host during the profile session.
</p>
<div class="tablenoborder"><a name="options-connection-target-host__nsight-compute-connection-options-target" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="options-connection-target-host__nsight-compute-connection-options-target" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 8. <span class="keyword">NVIDIA Nsight Compute</span> Host Connection Options</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5235" rowspan="1" colspan="1">Name</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5238" rowspan="1" colspan="1">Description</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5241" rowspan="1" colspan="1">Values</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5235" rowspan="1" colspan="1">Base Port</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5238" rowspan="1" colspan="1">
Base port used to establish a connection from the command line profiler to the host application during a <dfn class="term">Profile</dfn> activity (both local and remote).
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5241" rowspan="1" colspan="1">1-65535 (Default: 50152)</td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5235" rowspan="1" colspan="1">Maximum Ports</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5238" rowspan="1" colspan="1">Maximum number of ports to try (starting from <dfn class="term">Base Port</dfn>) when attempting to connect to the host application.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5241" rowspan="1" colspan="1">1-100 (Default: 10)</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="topic concept nested1" id="options-source-lookup"><a name="options-source-lookup" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#options-source-lookup" name="options-source-lookup" shape="rect">11.4. Source Lookup</a></h3>
<div class="body conbody">
<div class="tablenoborder"><a name="options-source-lookup__nsight-compute-source-lookup-options" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="options-source-lookup__nsight-compute-source-lookup-options" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 9. <span class="keyword">NVIDIA Nsight Compute</span> Source Lookup Options</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5311" rowspan="1" colspan="1">Name</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5314" rowspan="1" colspan="1">Description</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5317" rowspan="1" colspan="1">Values</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5311" rowspan="1" colspan="1">Program Source Locations</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5314" rowspan="1" colspan="1">
Set program source search paths.
These paths are used to resolve CUDA-C source files on the Source page if the
respective file cannot be found in its original location.
Files which cannot be found are marked with a <dfn class="term">File Not Found</dfn> error.
See the <dfn class="term">Ignore File Properties</dfn> option for files that are found but don't match.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5317" rowspan="1" colspan="1"> </td>
</tr>
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5311" rowspan="1" colspan="1">Ignore File Properties</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5314" rowspan="1" colspan="1">
Ignore file properties (e.g. timestamp, size) for source resolution.
If this is disabled, all file properties like modification timestamp and file size are checked against
the information stored by the compiler in the application during compilation.
If a file with the same name exists on a source lookup path, but not all properties match,
it won't be used for resolution (and a <dfn class="term">File Mismatch</dfn> error will be shown).
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5317" rowspan="1" colspan="1">Yes/No (Default)</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="topic concept nested1" id="options-send-feedback"><a name="options-send-feedback" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#options-send-feedback" name="options-send-feedback" shape="rect">11.5. Send Feedback</a></h3>
<div class="body conbody">
<div class="tablenoborder"><a name="options-send-feedback__nsight-compute-send-feedback-options" shape="rect">
<!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="options-send-feedback__nsight-compute-send-feedback-options" class="table" frame="border" border="1" rules="all">
<caption><span class="tablecap">Table 10. <span class="keyword">NVIDIA Nsight Compute</span> Send Feedback Options</span></caption>
<thead class="thead" align="left">
<tr class="row">
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5387" rowspan="1" colspan="1">Name</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5390" rowspan="1" colspan="1">Description</th>
<th class="entry" valign="top" width="33.33333333333333%" id="d54e5393" rowspan="1" colspan="1">Values</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5387" rowspan="1" colspan="1">Collect Usage and Platform Data</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5390" rowspan="1" colspan="1">Choose whether or not you wish to allow <span class="keyword">NVIDIA Nsight Compute</span> to collect usage and platform data.
</td>
<td class="entry" valign="top" width="33.33333333333333%" headers="d54e5393" rowspan="1" colspan="1">
<ul class="ul">
<li class="li">
Yes (Default)
</li>
<li class="li">
No
</li>
</ul>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="topic concept nested0" id="projects"><a name="projects" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#projects" name="projects" shape="rect">12. Projects</a></h2>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> uses <dfn class="term">Project Files</dfn> to group and organize profiling reports.
At any given time, only one project can be open in <span class="keyword">NVIDIA Nsight Compute</span>.
Collected reports are automatically assigned to the current project.
Reports stored on disk can be assigned to a project at any time.
In addition to profiling reports, related files such as notes or source code
can be associated with the project for future reference.
</p>
<p class="p">
Note that only references to reports or other files are saved in the project file.
Those references can become invalid, for example when associated files are deleted, removed or not available
on the current system, in case the project file was moved itself.
</p>
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> uses the <samp class="ph codeph">ncu-proj</samp> file extension for project files.
</p>
<div class="p">
When no custom project is current, a <dfn class="term">default project</dfn> is used to store e.g. the current
<a class="xref" href="index.html#connection-dialog" shape="rect">Connection Dialog</a> entries. To remove all information from the default project,
you must close <span class="keyword">NVIDIA Nsight Compute</span> and then delete the file from disk.
<ul class="ul">
<li class="li">On Windows, the file is located at <samp class="ph codeph"><USER>\AppData\Local\NVIDIA Corporation\NVIDIA Nsight Compute\</samp></li>
<li class="li">On Linux, the file is located at <samp class="ph codeph"><USER>/.local/share/NVIDIA Corporation/NVIDIA Nsight Compute/</samp></li>
<li class="li">On MacOSX, the file is located at <samp class="ph codeph"><USER>/Library/Application Support/NVIDIA Corporation/NVIDIA Nsight Compute/</samp></li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="projects-dialogs"><a name="projects-dialogs" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#projects-dialogs" name="projects-dialogs" shape="rect">12.1. Project Dialogs</a></h3>
<div class="body conbody">
<ul class="ul">
<li class="li" id="projects-dialogs__new-project"><a name="projects-dialogs__new-project" shape="rect">
<!-- --></a><strong class="ph b">New Project</strong><p class="p">
Creates a new project.
The project must be given a name, which will also be used for the project file.
You can select the location where the project file should be saved on disk.
Select whether a new directory with the project name should be created in that location.
</p>
</li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="projects-explorer"><a name="projects-explorer" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#projects-explorer" name="projects-explorer" shape="rect">12.2. Project Explorer</a></h3>
<div class="body conbody">
<p class="p">
The <dfn class="term">Project Explorer</dfn> window allows you to inspect and manage the current project.
It shows the project name as well as all <dfn class="term">Items</dfn> (profile reports and other files) associated with it.
Right-click on any entry to see further actions, such as adding, removing or grouping items.
Type in the <dfn class="term">Search project</dfn> toolbar at the top to filter the currently shown entries.
</p>
<div class="fig fignone"><span class="desc figdesc">Project Explorer</span><br clear="none"></br><div class="imagecenter"><img class="image imagecenter" src="graphics/projects-explorer.png"></img></div><br clear="none"></br></div>
</div>
</div>
</div>
<div class="topic concept nested0" id="nvvp-guide"><a name="nvvp-guide" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#nvvp-guide" name="nvvp-guide" shape="rect">13. Visual Profiler Transition Guide</a></h2>
<div class="body conbody">
<p class="p">
This guide provides tips for moving from Visual Profiler to <span class="keyword">NVIDIA Nsight Compute</span>.
<span class="keyword">NVIDIA Nsight Compute</span> tries to provide as much parity as possible with Visual Profiler's kernel profiling features,
but some functionality is now covered by different tools.
</p>
</div>
<div class="topic concept nested1" id="nvvp-trace"><a name="nvvp-trace" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#nvvp-trace" name="nvvp-trace" shape="rect">13.1. Trace</a></h3>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> does not support tracing GPU or API activities on an accurate timeline.
This functionality is covered by <a class="xref" href="https://developer.nvidia.com/nsight-systems" target="_blank" shape="rect">NVIDIA Nsight Systems</a>.
In the <a class="xref" href="index.html#quick-start-interactive" shape="rect">Interactive Profile Activity</a>, the <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> tool window
provides a stream of recent API calls on each thread.
However, since all tracked API calls are serialized by default, it does not collect accurate timestamps.
</p>
</div>
</div>
<div class="topic concept nested1" id="nvvp-sessions"><a name="nvvp-sessions" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#nvvp-sessions" name="nvvp-sessions" shape="rect">13.2. Sessions</a></h3>
<div class="body conbody">
<p class="p">Instead of sessions, <span class="keyword">NVIDIA Nsight Compute</span> uses <a class="xref" href="index.html#projects" shape="rect">Projects</a> to
launch and gather connection details and collected reports.
</p>
<ul class="ul">
<li class="li"><strong class="ph b">Executable and Import Sessions</strong><p class="p">Use the <a class="xref" href="index.html#projects-explorer" shape="rect">Project Explorer</a> or the <a class="xref" href="index.html#main-menu" shape="rect">Main Menu</a> to
create a new project. Reports collected from the command line, i.e. using
<span class="keyword">NVIDIA Nsight Compute CLI</span>, can be opened directly using the
main menu. In addition, you can use the Project Explorer to associate existing
reports as well as any other artifacts such as executables, notes, etc., with
the project. Note that those associations are only references; in other words,
moving or deleting the project file on disk will not update its artifacts.
</p>
<p class="p"> nvprof or command-line profiler output files, as well as Visual Profiler
sessions, cannot be imported into <span class="keyword">NVIDIA Nsight Compute</span>.
</p>
</li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="nvvp-timeline"><a name="nvvp-timeline" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#nvvp-timeline" name="nvvp-timeline" shape="rect">13.3. Timeline</a></h3>
<div class="body conbody">
<p class="p">
Since trace analysis is now covered by Nsight Systems, <span class="keyword">NVIDIA Nsight Compute</span> does not provide views of the application timeline.
The <a class="xref" href="index.html#tool-window-api-stream" shape="rect">API Stream</a> tool window does show a per-thread stream of the last captured CUDA API calls.
However, those are serialized and do not maintain runtime concurrency or provide accurate timing information.
</p>
</div>
</div>
<div class="topic concept nested1" id="nvvp-analysis"><a name="nvvp-analysis" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#nvvp-analysis" name="nvvp-analysis" shape="rect">13.4. Analysis</a></h3>
<div class="body conbody">
<ul class="ul">
<li class="li"><strong class="ph b">Guided Analysis</strong><p class="p">All trace-based analysis is now covered by <a class="xref" href="https://developer.nvidia.com/nsight-systems" target="_blank" shape="rect">NVIDIA Nsight Systems</a>. This means that <span class="keyword">NVIDIA Nsight Compute</span> does not include analysis regarding concurrent
CUDA streams or (for example) UVM events. For per-kernel analysis, <span class="keyword">NVIDIA Nsight Compute</span> provides recommendations based on collected
performance data on the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a>. These
rules currently require you to collect the required metrics via their sections
up front, and do not support partial on-demand profiling.
</p>
<p class="p">To use the rule-based recommendations, enable the respective rules in the <a class="xref" href="index.html#tool-window-sections-info" shape="rect">Sections/Rules Info</a>. Before profiling, enable <dfn class="term">Apply
Rules</dfn> in the <a class="xref" href="index.html#options-profile" shape="rect">Profile Options</a>,
or click the <dfn class="term">Apply Rules</dfn> button in the report afterward.
</p>
</li>
<li class="li"><strong class="ph b">Unguided Analysis</strong><p class="p"> All trace-based analysis is now covered by Nsight Systems. For per-kernel
analysis, Python-based rules provide analysis and recommendations. See
<dfn class="term">Guided Analysis</dfn> above for more details.
</p>
</li>
<li class="li"><strong class="ph b">PC Sampling View</strong><p class="p">
Source-correlated PC sampling information can now be viewed in the <a class="xref" href="index.html#profiler-report-source-page" shape="rect">Source Page</a>.
Aggregated warp states are shown on the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a> in the
<dfn class="term">Warp State Statistics</dfn> section.
</p>
</li>
<li class="li"><strong class="ph b">Memory Statistics</strong><p class="p">
Memory Statistics are located on the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a>.
Enable the <dfn class="term">Memory Workload Analysis</dfn> sections to collect the respective information.
</p>
</li>
<li class="li"><strong class="ph b">NVLink View</strong><p class="p">
NVLink topology diagram and NVLink property table are located on the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a>.
Enable the <dfn class="term">NVLink Topology</dfn> and <dfn class="term">NVLink Table</dfn> sections to collect the respective information.
</p>
<p class="p">
Refer to the <a class="xref" href="../ReleaseNotes/index.html#known-issues" shape="rect">Known Issues</a>
section for the limitations related to NVLink.
</p>
</li>
<li class="li"><strong class="ph b">Source-Disassembly View</strong><p class="p">
Source correlated with PTX and SASS disassembly is shown on the <a class="xref" href="index.html#profiler-report-source-page" shape="rect">Source Page</a>.
Which information is available depends on your application's compilation/JIT flags.
</p>
</li>
<li class="li"><strong class="ph b">GPU Details View</strong><p class="p"><span class="keyword">NVIDIA Nsight Compute</span> does not automatically collect data for each executed kernel,
and it does not collect any data for device-side memory copies.
Summary information for all profiled kernel launches is shown on the <a class="xref" href="index.html#profiler-report-summary-page" shape="rect">Summary Page</a>.
Comprehensive information on all collected metrics for all profiled kernel launches is shown on the <a class="xref" href="index.html#profiler-report-raw-page" shape="rect">Raw Page</a>.
</p>
</li>
<li class="li"><strong class="ph b">CPU Details View</strong><p class="p">
CPU callstack sampling is now covered by <a class="xref" href="https://developer.nvidia.com/nsight-systems" target="_blank" shape="rect">NVIDIA Nsight Systems</a>.
</p>
</li>
<li class="li"><strong class="ph b">OpenACC Details View</strong><p class="p">
OpenACC performance analysis with <span class="keyword">NVIDIA Nsight Compute</span> is available to limited extent.
OpenACC parallel regions are not explicitly recognized, but CUDA kernels generated by the OpenACC compiler can be profiled
as regular CUDA kernels.
See the <a class="xref" href="https://developer.nvidia.com/nsight-systems" target="_blank" shape="rect">NVIDIA Nsight Systems</a>
release notes to check its latest support status.
</p>
</li>
<li class="li"><strong class="ph b">OpenMP Details View</strong><p class="p">
OpenMP performance analysis is not supported by <span class="keyword">NVIDIA Nsight Compute</span>.
See the <a class="xref" href="https://developer.nvidia.com/nsight-systems" target="_blank" shape="rect">NVIDIA Nsight Systems</a>
release notes to check its latest support status.
</p>
</li>
<li class="li"><strong class="ph b">Properties View</strong><p class="p"><span class="keyword">NVIDIA Nsight Compute</span> does not collect CUDA API and GPU activities
and their properties. Performance data for profiled kernel launches is reported
(for example) on the <a class="xref" href="index.html#profiler-report-details-page" shape="rect">Details Page</a>.
</p>
</li>
<li class="li"><strong class="ph b">Console View</strong><p class="p"><span class="keyword">NVIDIA Nsight Compute</span> does not currently collect stdout/stderr application output.
</p>
</li>
<li class="li"><strong class="ph b">Settings View</strong><p class="p">
Application launch settings are specified in the <a class="xref" href="index.html#connection-dialog" shape="rect">Connection Dialog</a>.
For reports collected from the UI, launch settings can be inspected on the
<a class="xref" href="index.html#profiler-report-session-page" shape="rect">Session Page</a> after profiling.
</p>
</li>
<li class="li"><strong class="ph b">CPU Source View</strong><p class="p">
Source for CPU-only APIs is not available.
Source for profiled GPU kernel launches is shown on the <a class="xref" href="index.html#profiler-report-source-page" shape="rect">Source Page</a>.
</p>
</li>
</ul>
</div>
</div>
<div class="topic concept nested1" id="nvvp-command-line"><a name="nvvp-command-line" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#nvvp-command-line" name="nvvp-command-line" shape="rect">13.5. Command Line Arguments</a></h3>
<div class="body conbody">
<p class="p">
Please execute <span class="keyword">ncu-ui</span> with the <samp class="ph codeph">-h</samp> parameter
within a shell window to see the currently supported command line arguments for the
<span class="keyword">NVIDIA Nsight Compute</span> UI.
</p>
<p class="p">
To open a collected profile report with <span class="keyword">ncu-ui</span>,
simply pass the path to the report file as a parameter to the shell command.
</p>
</div>
</div>
</div>
<div class="topic concept nested0" id="ballista-guide"><a name="ballista-guide" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#ballista-guide" name="ballista-guide" shape="rect">14. Visual Studio Integration Guide</a></h2>
<div class="body conbody">
<p class="p">
This guide provides information on using <span class="keyword">NVIDIA Nsight Compute</span> within <span class="keyword">Microsoft Visual Studio</span>,
using the <a class="xref" href="https://developer.nvidia.com/nsight-tools-visual-studio-integration" target="_blank" shape="rect">NVIDIA Nsight Integration</a> <span class="keyword">Visual Studio</span> extension, allowing for a seamless development workflow.
</p>
</div>
<div class="topic concept nested1" id="ballista-overview"><a name="ballista-overview" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#ballista-overview" name="ballista-overview" shape="rect">14.1. Visual Studio Integration Overview</a></h3>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Integration</span> is a <span class="keyword">Visual Studio</span> extension that allows you to access the power of <span class="keyword">NVIDIA Nsight Compute</span> from within <span class="keyword">Visual Studio</span>.
</p>
<p class="p">When <span class="keyword">NVIDIA Nsight Compute</span> is installed along with <span class="keyword">NVIDIA Nsight Integration</span>, <span class="keyword">NVIDIA Nsight Compute</span> activities will appear under the <span class="keyword">NVIDIA</span> <span class="keyword">'Nsight'</span> menu in the <span class="keyword">Visual Studio</span> menu bar. These activities launch <span class="keyword">NVIDIA Nsight Compute</span> with the current project settings and executable.
</p>
<div class="p">For more information about using <span class="keyword">NVIDIA Nsight Compute</span> from within <span class="keyword">Visual Studio</span>, please visit
<ul class="ul">
<li class="li"><a class="xref" href="https://developer.nvidia.com/nsight-tools-visual-studio-integration" target="_blank" shape="rect">NVIDIA Nsight Integration Overview</a></li>
<li class="li"><a class="xref" href="https://docs.nvidia.com/nsight-vs-integration/index.html" target="_blank" shape="rect">NVIDIA Nsight Integration User Guide</a></li>
</ul>
</div>
</div>
</div>
</div>
<div class="topic concept nested0" id="library-support"><a name="library-support" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#library-support" name="library-support" shape="rect">15. Library Support</a></h2>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> can be used to profile CUDA applications, as well as
applications that use CUDA via NVIDIA or third-party libraries. For most such libraries,
the behavior is expected to be identical to applications using CUDA directly. However,
for certain libraries, <span class="keyword">NVIDIA Nsight Compute</span> has certain restrictions,
alternate behavior, or requires non-default setup steps prior to profiling.
</p>
</div>
<div class="topic concept nested1" id="library-support-optix"><a name="library-support-optix" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#library-support-optix" name="library-support-optix" shape="rect">15.1. OptiX</a></h3>
<div class="body conbody">
<p class="p"><span class="keyword">NVIDIA Nsight Compute</span> supports profiling of OptiX applications, but with certain restrictions.
</p>
<ul class="ul">
<li class="li"><strong class="ph b">Internal Kernels</strong><p class="p"> Kernels launched by OptiX that contain no user-defined code are given the
generic name <dfn class="term">NVIDIA internal</dfn>. These kernels show up on the API
Stream in the <span class="keyword">NVIDIA Nsight Compute</span> UI, and can be profiled in both
the UI as well as the <span class="keyword">NVIDIA Nsight Compute CLI</span>. However, no CUDA-C
source, PTX or SASS is available for them.
</p>
</li>
<li class="li"><strong class="ph b">User Kernels</strong><p class="p"> Kernels launched by OptiX can contain user-defined code. OptiX identifies these
kernels in the API Stream with a custom name. This name starts with
<dfn class="term">raygen__</dfn> (for "ray generation"). These kernels show up on the
API Stream and can be profiled in the UI as well as the <span class="keyword">NVIDIA Nsight Compute CLI</span>. The Source page displays CUDA-C source, PTX
and SASS defined by the user. Certain parts of the kernel, including device
functions that contain OptiX-internal code, will not be available in the Source
page.
</p>
</li>
<li class="li"><strong class="ph b">SASS</strong><p class="p">
When SASS information is available in the profile report, certain instructions might not be available in the Source page and
shown as <dfn class="term">N/A</dfn>.
</p>
</li>
</ul>
<p class="p">
The <a class="xref" href="index.html#as-viewer" shape="rect">Acceleration Structure Viewer</a> for OptiX traversable handles currently has the following limitations:
</p>
<ul class="ul">
<li class="li">
Viewing acceleration structures containing curve build inputs is not supported.
</li>
<li class="li">
Viewing acceleration structures containing sphere build inputs is not supported.
</li>
<li class="li">
Viewing instance acceleration structures using multi-level instancing is not supported.
</li>
<li class="li">
Applying motion traversables to acceleration structures is not supported.
</li>
<li class="li">
User-specified index strides are not supported. Index strides will always be deduced from the user-specified index format.
</li>
</ul>
<p class="p">The following feature set is supported per OptiX API version:</p>
<table cellpadding="4" cellspacing="0" summary="" border="1" class="simpletable">
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">OptiX API Version</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Kernel Profiling</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">API Interception</strong></td>
<td valign="top" class="stentry" rowspan="1" colspan="1"><strong class="ph b">Resource Tracking</strong></td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">6.x</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Yes</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">No</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">No</td>
</tr>
<tr class="strow">
<td valign="top" class="stentry" rowspan="1" colspan="1">7.0 - 7.6</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Yes</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Yes</td>
<td valign="top" class="stentry" rowspan="1" colspan="1">Yes</td>
</tr>
</table>
</div>
</div>
</div>
<div class="topic concept nested0" id="notices-header"><a name="notices-header" shape="rect">
<!-- --></a><h2 class="title topictitle1"><a href="#notices-header" name="notices-header" shape="rect">Notices</a></h2>
<div class="topic reference nested1" id="notice"><a name="notice" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#notice" name="notice" shape="rect"></a></h3>
<div class="body refbody">
<div class="section">
<h3 class="title sectiontitle">Notice</h3>
<p class="p">ALL NVIDIA DESIGN SPECIFICATIONS, REFERENCE BOARDS, FILES, DRAWINGS, DIAGNOSTICS, LISTS, AND OTHER DOCUMENTS (TOGETHER AND
SEPARATELY, "MATERIALS") ARE BEING PROVIDED "AS IS." NVIDIA MAKES NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE
WITH RESPECT TO THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY, AND FITNESS
FOR A PARTICULAR PURPOSE.
</p>
<p class="p">Information furnished is believed to be accurate and reliable. However, NVIDIA Corporation assumes no responsibility for the
consequences of use of such information or for any infringement of patents or other rights of third parties that may result
from its use. No license is granted by implication of otherwise under any patent rights of NVIDIA Corporation. Specifications
mentioned in this publication are subject to change without notice. This publication supersedes and replaces all other information
previously supplied. NVIDIA Corporation products are not authorized as critical components in life support devices or systems
without express written approval of NVIDIA Corporation.
</p>
</div>
</div>
</div>
<div class="topic reference nested1" id="trademarks"><a name="trademarks" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#trademarks" name="trademarks" shape="rect"></a></h3>
<div class="body refbody">
<div class="section">
<h3 class="title sectiontitle">Trademarks</h3>
<p class="p">NVIDIA and the NVIDIA logo are trademarks or registered trademarks of NVIDIA Corporation
in the U.S. and other countries. Other company and product names may be trademarks of
the respective companies with which they are associated.
</p>
</div>
</div>
</div>
<div class="topic reference nested1" id="copyright-past-to-present"><a name="copyright-past-to-present" shape="rect">
<!-- --></a><h3 class="title topictitle2"><a href="#copyright-past-to-present" name="copyright-past-to-present" shape="rect"></a></h3>
<div class="body refbody">
<div class="section">
<h3 class="title sectiontitle">Copyright</h3>
<p class="p">© <span class="ph">2018</span>-<span class="ph">2022</span> NVIDIA
Corporation and affiliates. All rights reserved.
</p>
<p class="p">This product includes software developed by the Syncro Soft SRL (http://www.sync.ro/).</p>
</div>
</div>
</div>
</div>
<div class="fn"><a name="fntarg_1" href="#fnsrc_1" shape="rect"><sup>1</sup></a> This metric was previously called <dfn class="term">Sampling Data (All)</dfn>.
</div>
<div class="fn"><a name="fntarg_2" href="#fnsrc_2" shape="rect"><sup>2</sup></a> This metric was previously called <dfn class="term">Sampling Data (Not Issued)</dfn>.
</div>
<hr id="contents-end"></hr>
</article>
</div>
</div>
<script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/formatting/common.min.js"></script>
<script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-write.js"></script>
<script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-tracker.js"></script>
<script type="text/javascript">_satellite.pageBottom();</script>
<script type="text/javascript">var switchTo5x=true;</script><script type="text/javascript" src="http://w.sharethis.com/button/buttons.js"></script><script type="text/javascript">stLight.options({publisher: "998dc202-a267-4d8e-bce9-14debadb8d92", doNotHash: false, doNotCopy: false, hashAddressBar: false});</script></body>
</html>
|