How to use Tegra Profiler?

Hi! I’m trying to profile my application on Jetson Nano but there’s zero documentation on how to do it. The closest I got is this which basically just says “install JetPack” but there’s no profiler that’s inside JetPack 4.4.1. I manually downloaded the Tegra System Profiler 3.7 and it fails with a random permission error. Can anyone please point me to the right direction?

Here’s the log for Tegra System Profiler 3.7:

KernelModuleServiceError (1406) {
    OriginalExceptionClass: N5boost16exception_detail10clone_implIN13QuadDAnalysis24KernelModuleServiceErrorEEE
    OriginalFile: /home/devtools/teamCityBuildAgent/work/20a3cfcd1c25021d/QuadD/Host/Analysis/LinuxDevice.cpp
    OriginalLine: 259
    OriginalFunction: void QuadDAnalysis::LinuxDevice::InitializeKernelModule()
    ServiceError (1400) {
        OriginalExceptionClass: N5boost16exception_detail10clone_implIN13QuadDAnalysis12ServiceErrorEEE
        TargetSideError (1100) {
            MethodName: Initialize
            ServiceName: Service
            ErrorText: /home/devtools/teamCityBuildAgent/work/20a3cfcd1c25021d/QuadD/Target/quadd_d/quadd_d/jni/KernelModuleServiceImpl.cpp(168): Throw in function void QuadDDaemon::KernelModuleServiceImpl::InitializeInternal()
                Dynamic exception type: boost::exception_detail::clone_impl<QuadDDaemon::KmsModuleInitError>
                std::exception::what: KmsModuleInitError
                [boost::errinfo_nested_exception_*] = 
                  Throw in function (unknown)
                  Dynamic exception type: boost::exception_detail::clone_impl<QuadDDaemon::QMIOCTLError>
                  std::exception::what: QMIOCTLError
                  [QuadDCommon::tag_error_text*] = Permission denied
                  [QuadDDaemon::tag_error_code*] = 19
                  [QuadDDaemon::tag_throw_file*] = /home/devtools/teamCityBuildAgent/work/20a3cfcd1c25021d/QuadD/Target/quadd_d/quadd_d/jni/qm.c
                  [QuadDDaemon::tag_throw_func*] = get_module_capabilities
                  13, "Permission denied"
                
            KmsModuleInitError (2004) {
                OriginalExceptionClass: N5boost16exception_detail10clone_implIN11QuadDDaemon18KmsModuleInitErrorEEE
                OriginalFile: /home/devtools/teamCityBuildAgent/work/20a3cfcd1c25021d/QuadD/Target/quadd_d/quadd_d/jni/KernelModuleServiceImpl.cpp
                OriginalLine: 168
                OriginalFunction: void QuadDDaemon::KernelModuleServiceImpl::InitializeInternal()
                QmIOCTLError (1802) {
                    OriginalExceptionClass: N5boost16exception_detail10clone_implIN11QuadDDaemon12QMIOCTLErrorEEE
                    OriginalLine: 260
                    Errno: 13
                    ErrorText: Permission denied
                    OriginalErrorCode: 19
                    OriginalFunction: get_module_capabilities
                    OriginalFile: /home/devtools/teamCityBuildAgent/work/20a3cfcd1c25021d/QuadD/Target/quadd_d/quadd_d/jni/qm.c
                }
            }
        }
    }
}

Hi,

1.
Please get the root authority to enable CUDA profiling first.
For details, please check the following topic:

2.
If you want a profiler on the device, please try nvprof which is located at /usr/local/cuda-10.2/bin/.

Ex.

sudo /usr/local/cuda-10.2/bin/nvprof ./MyApp

Thanks.

1 Like