syllo / nvtop Goto Github PK
View Code? Open in Web Editor NEWGPU & Accelerator process monitoring for AMD, Apple, Huawei, Intel, NVIDIA and Qualcomm
License: Other
GPU & Accelerator process monitoring for AMD, Apple, Huawei, Intel, NVIDIA and Qualcomm
License: Other
Getting this error when i run this command
cmake ..
Also tried the latter one in the NVTOP build, but does not work
Great tool. I think it would be nice to have the same shortcuts as htop. - Just a suggestion.
Yes I know is not an issue
I'm converting a video with ffmpeg and h264_nvenc encoder (nvidia encoder) and I'm having ENC close to 100%
This is Encoder usage % isn't it?
I'm asking because there is no explicit reference/documentation...
I have a server running something one the order of 80 GPU processes spread across 8 GPU's.
The issue is I can't scroll the process list beyond the first visible one's(14 on my MBP's screen).
P.S.
Built from latest commit in dev.
Hello,
I am running Arch Linux with latest NVIDIA drivers. Not so long ago I got update from AUR, version 0.1.0 got updated to 0.2.0 and now most of the stats does not show up:
Before the update I could see stats and info for GTX 1080 Ti, for GTX 780 (2nd GPU) it was not shown as I understand because of NVIDIA limitations. But at the moment as you can see even 1st GPU does not show stuffs.
All that I can see is Temperature, Fan Speed and Memory Utilization.
Here is output of my nvidia-smi:
[adomas@genesis ~]$ nvidia-smi
Mon Apr 9 01:43:44 2018
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.48 Driver Version: 390.48 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 108... Off | 00000000:01:00.0 On | N/A |
| 0% 62C P0 84W / 280W | 820MiB / 11175MiB | 3% Default |
+-------------------------------+----------------------+----------------------+
| 1 GeForce GTX 780 Off | 00000000:02:00.0 N/A | N/A |
| 17% 31C P8 N/A / N/A | 59MiB / 3022MiB | N/A Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 888 G /usr/lib/xorg-server/Xorg 551MiB |
| 0 1805 G /usr/bin/kwin_x11 50MiB |
| 0 1811 G /usr/bin/krunner 2MiB |
| 0 1813 G /usr/bin/plasmashell 109MiB |
| 0 2468 G ...as/.local/share/Steam/ubuntu12_32/steam 103MiB |
| 1 Not Supported |
+-----------------------------------------------------------------------------+
Hi guys, thanks for awesome tool.
Could you give an example how to wrap nvtop in docker?
Unfortunately this one:
FROM nvidia/cuda
RUN apt-get update && \
apt-get install -y cmake libncurses5-dev libncursesw5-dev git && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /work/*
RUN ln -s /usr/local/cuda-10.1/targets/x86_64-linux/lib/stubs/libnvidia-ml.so /usr/local/lib/libnvidia-ml.so && \
ln -s /usr/local/cuda-10.1/targets/x86_64-linux/lib/stubs/libnvidia-ml.so /usr/local/lib/libnvidia-ml.so.1
RUN cd /tmp && \
git clone https://github.com/Syllo/nvtop.git && \
mkdir -p nvtop/build && cd nvtop/build && \
cmake .. && \
make && \
make install && \
cd / && \
rm -r /tmp/nvtop
CMD ["/usr/local/bin/nvtop"]
Results in:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
WARNING:
You should always run with libnvidia-ml.so that is installed with your
NVIDIA Display Driver. By default it's installed in /usr/lib and /usr/lib64.
libnvidia-ml.so in GDK package is a stub library that is attached only for
build purposes (e.g. machine that you build your application doesn't have
to have Display Driver installed).
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Impossible to initialize nvidia nvml :
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
WARNING:
You should always run with libnvidia-ml.so that is installed with your
NVIDIA Display Driver. By default it's installed in /usr/lib and /usr/lib64.
libnvidia-ml.so in GDK package is a stub library that is attached only for
build purposes (e.g. machine that you build your application doesn't have
to have Display Driver installed).
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
When I try to run with:
docker run --runtime=nvidia nvtop
Any ideas?
Environment: centOS 7.6
Reproduce: screen nvtop
I am using the common-cu100
image of:
https://cloud.google.com/deep-learning-vm/docs/images
which is:
lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 9.7 (stretch)
Release: 9.7
Codename: stretch
In order to find the NVLM libraries I need to use:
cmake .. -DNVML_RETRIEVE_HEADER_ONLINE=True -DNVML_LIBRARIES="/usr/lib/x86_64-linux-gnu/"
However, it still fails to find ncurses.
cmake .. -DNVML_RETRIEVE_HEADER_ONLINE=True -DNVML_LIBRARIES="/usr/lib/x86_64-linux-gnu/"
-- The C compiler identification is GNU 7.3.0
-- Check for working C compiler: /home/sp/miniconda3/envs/py3env/bin/x86_64-conda_cos6-linux-gnu-cc
-- Check for working C compiler: /home/sp/miniconda3/envs/py3env/bin/x86_64-conda_cos6-linux-gnu-cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Setting build type to 'Release' as none was specified.
-- Found NVML: /usr/local/cuda-10.0/include (found version "10")
CMake Error at /usr/share/cmake-3.7/Modules/FindPackageHandleStandardArgs.cmake:138 (message):
Could NOT find Curses (missing: CURSES_LIBRARY)
Call Stack (most recent call first):
/usr/share/cmake-3.7/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindCurses.cmake:248 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:46 (find_package)
which are correctly installed:
dpkg -l |grep libncurses
ii libncurses5:amd64 6.0+20161126-1+deb9u2 amd64 shared libraries for terminal handling
ii libncurses5-dev:amd64 6.0+20161126-1+deb9u2 amd64 developer's libraries for ncurses
ii libncursesw5:amd64 6.0+20161126-1+deb9u2 amd64 shared libraries for terminal handling (wide character support)
ii libncursesw5-dev:amd64 6.0+20161126-1+deb9u2 amd64 developer's libraries for ncursesw
ls /usr/include/ncurses.h
/usr/include/ncurses.h
sudo ldconfig -p | grep curses
libncursesw.so.5 (libc6,x86-64) => /lib/x86_64-linux-gnu/libncursesw.so.5
libncurses.so.5 (libc6,x86-64) => /lib/x86_64-linux-gnu/libncurses.so.5
What exact command line flags should I pass to cmake to make it compile?
Thank you!
I see python3
instead if python3 myscript.py --resume --gpu
which makes it harder to identify processes.
Hi,
first thanks for this great tool. It really simplifies to keep track of the running GPU processes on our servers. I would also like to also see the CPU utilization. If I would create a pull request, would you welcome this feature?
Thank you,
Leon
-s --gpu-select : Column separated list of GPU IDs to monitor
-i --gpu-ignore : Column separated list of GPU IDs to ignore
should be "colon" instead of "column" (to match man page)
It would be great if there was an option to run nvtop without showing the MEM - showing only the GPU. MEM is usually constant and the lines in the graphs are only disturbing the viewing of the GPU lines
Thanks
Would it be in the scope of the project to have nvtop run as a daemon and have a collector to serve nvidia metrics that Prometheus can consume?
I am imagining a flag nvtop --daemon --metrics --metrics-port 8000
or something, that would be useful to get the information into Grafana :)
Thanks
Following the instructions to build for Ubuntu 18.04.3 with (NVIDIA-SMI 440.26, Driver Version: 440.26), while running make, the build fails with errors:
... /nvtop/include/nvtop/extract_gpuinfo.h:76:3: error: unknown type name ‘nvmlDevice_t’
... /nvtop/include/nvtop/extract_gpuinfo.h:108:3: error: unknown type name ‘nvmlProcessInfo_t’
Potentially related information:
cmake reported:
CMake Warning (dev) at cmake/modules/FindNVML.cmake:45 (message):
Unable to find nvml api version
libnvidia-ml components are here:
$ ldconfig -p | grep nvidia-ml
libnvidia-ml.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libnvidia-ml.so.1
libnvidia-ml.so.1 (libc6) => /usr/lib/i386-linux-gnu/libnvidia-ml.so.1
libnvidia-ml.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libnvidia-ml.so
libnvidia-ml.so (libc6) => /usr/lib/i386-linux-gnu/libnvidia-ml.so
Under the lastest Jetpack version 4.2.1 for embedded devices like Xavier or TX2 I'm seeing this issue when trying to cmake:
cmake .. -DNVML_RETRIEVE_HEADER_ONLINE=True
I get the error:
-- The C compiler identification is GNU 7.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
CMake Error at /usr/local/share/cmake-3.15/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find NVML (missing: NVML_LIBRARIES) (found version "10")
Call Stack (most recent call first):
/usr/local/share/cmake-3.15/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindNVML.cmake:52 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:31 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/nvidia/Documents/nvtop/build/CMakeFiles/CMakeOutput.log".
It seems it finds NVML and doesn't find it in the download part where you look for:
https://raw.githubusercontent.com/NVIDIA/nvidia-settings/master/src/nvml.h
Any insight is appreciated!
apt-get install nvtop
The following NEW packages will be installed:
libnvidia-compute-418 libnvidia-compute-430 ...
The following packages will be REMOVED:
libnvidia-compute-435 ...
Can nvtop be updated to use the current driver? Thanks.
I've found option to select or ignore some GPUs, but the bar-plot still draws two main GPUs charts on one plot.
I've 3 GPUs - 1 710 (device 0) to connect to monitor and draw X-server and two more 1080ti (devices 1 and 2) for DS calculation.
With default "htop" run - we have two plots - one for both 1080ti on one chart and one for not needed 710.
When i run "htop -i 0" it selects right GPUs but still draws only one plot with both 1080ti on it.
Is it possible to have two separate graphs for GPU 1 and GPU 2?
Thanks!
Ubuntu 19.10
After I upgraded the Nvidia driver to 440, I can no longer use nvtop and can't install it.
Is there any solution other than downgrading the driver?
(base) admin01@admin01-ubuntu:~$ sudo apt install nvtop
[sudo] password for admin01:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
nvtop : Depends: libnvidia-compute-418 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
deleted for misunderstanding.
Followed a previous post, but running
cmake -DCMAKE_LIBRARY_PATH="/lib/x86_64-linux-gnu/" ..
nor
cmake -DCMAKE_LIBRARY_ARCHITECTURE="x86_64-linux-gnu" ..
helped.
(building from source)
This is the output error and log file
t-dvginz@DGX-Station:~/repos/nvtop/build$ cmake -DCMAKE_LIBRARY_PATH="/lib/x86_64-linux-gnu/" ..
CMake Error at /usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
Call Stack (most recent call first):
/usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindCurses.cmake:256 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:46 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/t-dvginz/repos/nvtop/build/CMakeFiles/CMakeOutput.log".
The system is: Linux - 4.15.0-39-generic - x86_64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler: /usr/bin/cc
Build flags:
Id flags:
The output was:
0
Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
The C compiler identification is GNU, found in "/home/XXX/repos/nvtop/build/CMakeFiles/3.10.2/CompilerIdC/a.out"
Determining if the C compiler works passed with the following output:
Change Dir: /home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/make" "cmTC_a5be3/fast"
/usr/bin/make -f CMakeFiles/cmTC_a5be3.dir/build.make CMakeFiles/cmTC_a5be3.dir/build
make[1]: Entering directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_a5be3.dir/testCCompiler.c.o
/usr/bin/cc -o CMakeFiles/cmTC_a5be3.dir/testCCompiler.c.o -c /home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp/testCCompiler.c
Linking C executable cmTC_a5be3
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a5be3.dir/link.txt --verbose=1
/usr/bin/cc -rdynamic CMakeFiles/cmTC_a5be3.dir/testCCompiler.c.o -o cmTC_a5be3
make[1]: Leaving directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Detecting C compiler ABI info compiled with the following output:
Change Dir: /home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/make" "cmTC_1e501/fast"
/usr/bin/make -f CMakeFiles/cmTC_1e501.dir/build.make CMakeFiles/cmTC_1e501.dir/build
make[1]: Entering directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o
/usr/bin/cc -o CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.10/Modules/CMakeCCompilerABI.c
Linking C executable cmTC_1e501
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1e501.dir/link.txt --verbose=1
/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o -o cmTC_1e501
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.4.0-1ubuntu1~18.04.1' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_1e501' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-linux-gnu/7/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper -plugin-opt=-fresolution=/tmp/ccssVplQ.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_1e501 /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/7 -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/7/../../.. CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_1e501' '-mtune=generic' '-march=x86-64'
make[1]: Leaving directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Parsed C implicit link information from above output:
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command:"/usr/bin/make" "cmTC_1e501/fast"]
ignore line: [/usr/bin/make -f CMakeFiles/cmTC_1e501.dir/build.make CMakeFiles/cmTC_1e501.dir/build]
ignore line: [make[1]: Entering directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp']
ignore line: [Building C object CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o]
ignore line: [/usr/bin/cc -o CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.10/Modules/CMakeCCompilerABI.c]
ignore line: [Linking C executable cmTC_1e501]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1e501.dir/link.txt --verbose=1]
ignore line: [/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o -o cmTC_1e501 ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.4.0-1ubuntu1~18.04.1' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
ignore line: [Thread model: posix]
ignore line: [gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_1e501' '-mtune=generic' '-march=x86-64']
link line: [ /usr/lib/gcc/x86_64-linux-gnu/7/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper -plugin-opt=-fresolution=/tmp/ccssVplQ.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_1e501 /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/7 -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/7/../../.. CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/7/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccssVplQ.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [--sysroot=/] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [--as-needed] ==> ignore
arg [-export-dynamic] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-znow] ==> ignore
arg [-zrelro] ==> ignore
arg [-o] ==> ignore
arg [cmTC_1e501] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o] ==> ignore
arg [-L/usr/lib/gcc/x86_64-linux-gnu/7] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib]
arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/7/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../..]
arg [CMakeFiles/cmTC_1e501.dir/CMakeCCompilerABI.c.o] ==> ignore
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [-lc] ==> lib [c]
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/7/crtendS.o] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o] ==> ignore
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7] ==> [/usr/lib/gcc/x86_64-linux-gnu/7]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/7/../../..] ==> [/usr/lib]
implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/7;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
implicit fwks: []
Detecting C [-std=c11] compiler features compiled with the following output:
Change Dir: /home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/make" "cmTC_a2368/fast"
/usr/bin/make -f CMakeFiles/cmTC_a2368.dir/build.make CMakeFiles/cmTC_a2368.dir/build
make[1]: Entering directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_a2368.dir/feature_tests.c.o
/usr/bin/cc -std=c11 -o CMakeFiles/cmTC_a2368.dir/feature_tests.c.o -c /home/XXX/repos/nvtop/build/CMakeFiles/feature_tests.c
Linking C executable cmTC_a2368
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a2368.dir/link.txt --verbose=1
/usr/bin/cc -rdynamic CMakeFiles/cmTC_a2368.dir/feature_tests.c.o -o cmTC_a2368
make[1]: Leaving directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Feature record: C_FEATURE:1c_function_prototypes
Feature record: C_FEATURE:1c_restrict
Feature record: C_FEATURE:1c_static_assert
Feature record: C_FEATURE:1c_variadic_macros
Detecting C [-std=c99] compiler features compiled with the following output:
Change Dir: /home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/make" "cmTC_b779c/fast"
/usr/bin/make -f CMakeFiles/cmTC_b779c.dir/build.make CMakeFiles/cmTC_b779c.dir/build
make[1]: Entering directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_b779c.dir/feature_tests.c.o
/usr/bin/cc -std=c99 -o CMakeFiles/cmTC_b779c.dir/feature_tests.c.o -c /home/XXX/repos/nvtop/build/CMakeFiles/feature_tests.c
Linking C executable cmTC_b779c
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_b779c.dir/link.txt --verbose=1
/usr/bin/cc -rdynamic CMakeFiles/cmTC_b779c.dir/feature_tests.c.o -o cmTC_b779c
make[1]: Leaving directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Feature record: C_FEATURE:1c_function_prototypes
Feature record: C_FEATURE:1c_restrict
Feature record: C_FEATURE:0c_static_assert
Feature record: C_FEATURE:1c_variadic_macros
Detecting C [-std=c90] compiler features compiled with the following output:
Change Dir: /home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/make" "cmTC_a7fb3/fast"
/usr/bin/make -f CMakeFiles/cmTC_a7fb3.dir/build.make CMakeFiles/cmTC_a7fb3.dir/build
make[1]: Entering directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_a7fb3.dir/feature_tests.c.o
/usr/bin/cc -std=c90 -o CMakeFiles/cmTC_a7fb3.dir/feature_tests.c.o -c /home/XXX/repos/nvtop/build/CMakeFiles/feature_tests.c
Linking C executable cmTC_a7fb3
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a7fb3.dir/link.txt --verbose=1
/usr/bin/cc -rdynamic CMakeFiles/cmTC_a7fb3.dir/feature_tests.c.o -o cmTC_a7fb3
make[1]: Leaving directory '/home/XXX/repos/nvtop/build/CMakeFiles/CMakeTmp'
Feature record: C_FEATURE:1c_function_prototypes
Feature record: C_FEATURE:0c_restrict
Feature record: C_FEATURE:0c_static_assert
Feature record: C_FEATURE:0c_variadic_macros
The documentation for getopt_long
says it returns an int
(signed) and returns -1
when there are no more options to parse.
On ppc64le platforms, the -1
return code gets converted to a 255
causing an infinite loop.
https://github.com/Syllo/nvtop/blob/master/src/nvtop.c#L161-L163
After cmake
in the build
directory, I had the following error when i make.
make
make: Warning: FileMakefile' has modification time 25 s in the future make[1]: Warning: File
CMakeFiles/Makefile2' has modification time 25 s in the future
make[2]: Warning: Filesrc/CMakeFiles/nvtop.dir/flags.make' has modification time 25 s in the future Scanning dependencies of target nvtop make[2]: warning: Clock skew detected. Your build may be incomplete. make[2]: Warning: File
src/CMakeFiles/nvtop.dir/flags.make' has modification time 25 s in the future
[ 12%] Building C object src/CMakeFiles/nvtop.dir/nvtop.c.o
[ 25%] Building C object src/CMakeFiles/nvtop.dir/interface.c.o
[ 37%] Building C object src/CMakeFiles/nvtop.dir/interface_layout_selection.c.o
[ 50%] Building C object src/CMakeFiles/nvtop.dir/get_process_info_linux.c.o
[ 62%] Building C object src/CMakeFiles/nvtop.dir/extract_gpuinfo.c.o
[ 75%] Building C object src/CMakeFiles/nvtop.dir/time.c.o
[ 87%] Building C object src/CMakeFiles/nvtop.dir/plot.c.o
[100%] Linking C executable nvtop
/usr/local/lib/libncursesw.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[2]: *** [src/nvtop] Error 1
make[1]: *** [src/CMakeFiles/nvtop.dir/all] Error 2
make: *** [all] Error 2
Can anyone please kindly help?
Is it possible to show plots for each GPU instead of a summary plot?
Projects/nvtop/src/nvtop.c:23:10: fatal error: ncurses.h: No such file or directory
#include <ncurses.h>
^~~~~~~~~~~
compilation terminated.
src/CMakeFiles/nvtop.dir/build.make:62: recipe for target 'src/CMakeFiles/nvtop.dir/nvtop.c.o' failed
make[2]: *** [src/CMakeFiles/nvtop.dir/nvtop.c.o] Error 1
CMakeFiles/Makefile2:117: recipe for target 'src/CMakeFiles/nvtop.dir/all' failed
make[1]: *** [src/CMakeFiles/nvtop.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
Descending sound like a more intuitive option
Thanks for this amazing work. I'm using this tool on a lot of Systems.
With Cuda 9 Installed on Ubuntu 16.04 I get the following problem:
-- The C compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- No building type advertised, default to Release
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
Could NOT find NVML (missing: NVML_LIBRARIES) (found version "9")
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindNVML.cmake:47 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:26 (find_package)
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.81 Driver Version: 384.81 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 TITAN X (Pascal) Off | 00000000:82:00.0 Off | N/A |
| 23% 32C P8 17W / 250W | 170MiB / 12188MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1772 G /usr/lib/xorg/Xorg 6MiB |
| 0 18965 C python 153MiB |
+-----------------------------------------------------------------------------+
Do you know how I can run nvtop with Cuda 9?
Device 0 [GeForce GTX 1080 Ti] PCIe GEN 3@16x
Device 1 [GeForce GTX 1080 Ti] PCIe GEN 1@16x
but we know it works at GEN 3
If I try to create a stand alone instance like htop allows me to.
(htop case: xfce4-terminal -T "htop" -x /usr/bin/sudo /usr/bin/htop
)
For example, this .desktop
file (I added the .txt
so I can upload it):
Exec=xfce4-terminal -T "NvTop" -x /usr/bin/sudo /usr/bin/nvtop
NvTop.desktop.txt
nvtop starts and then stops immediately after.
However, it seems to work just fine. If I open a terminal instance and run nvtop
, nvtop runs as expected. It works both as root and as normal user.
Am I missing something?
is this normal?
GPU-Util[ N/A]
MEM-Util[|||||||||||||||||||||||||||||||| 0.8G/2.1G]
Encoder[ N/A]
Decoder[ N/A]
$ nvidia-smi -L
GPU 0: GeForce GT 710
==============NVSMI LOG==============
Driver Version : 410.57
As far as I understand, it's possible to get per-process utilization with nvmlDeviceGetProcessUtilization
function. It'd be useful to have utilization together with memory usage per process.
I would very much appreciate it if you could end the application with F10. It would be the same as htop.
F3 or F2 does not seem to be doing anything in this case.
When I press either of them, nothing occurs.
Fedora 25
Installed on ubuntu 18.04 with CUDA 10.1 and the recommended ncurses libraries:
dpkg -l |grep libncurses
ii libncurses5:amd64 6.1-1ubuntu1.18.04 amd64 shared libraries for terminal handling
ii libncurses5-dev:amd64 6.1-1ubuntu1.18.04 amd64 developer's libraries for ncurses
ii libncursesw5:amd64 6.1-1ubuntu1.18.04 amd64 shared libraries for terminal handling (wide character support)
ii libncursesw5-dev:amd64 6.1-1ubuntu1.18.04 amd64 developer's libraries for ncursesw
The plot looks bad:
GPU 135MHz MEM 877MHz TEMP 37øC FAN N/A% POW 24 / 250 W
GPU[ 0%] MEM[ 0.0G/16.9G]
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
100³ GPU 0³
³ MEM³
³ ³
³ ³
³ ³
75%³ ³
³ ³
³ ³
³ ³
³ ³
50%³ ³
³ ³
³ ³
³ ³
³ ³
25%³ ³
³ ³
³ ³
³ ³
³ ³
0%³ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄij
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
PID USER GPU TYPE GPU MEM CPU HOST MEM Command
The build warned with:
make
[ 12%] Building C object src/CMakeFiles/nvtop.dir/nvtop.c.o
[ 25%] Building C object src/CMakeFiles/nvtop.dir/interface.c.o
/tmp/nvtop-master/src/interface.c: In function ‘draw_gpu_info_ncurses’:
/tmp/nvtop-master/src/interface.c:1221:26: warning: ‘%6llu’ directive output may be truncated writing between 6 and 14 bytes into a region of size 9 [-Wformat-truncation=]
snprintf(memory, 9, "%6lluMB", proc[i].used_memory / 1048576);
^~~~~
/tmp/nvtop-master/src/interface.c:1221:25: note: directive argument in the range [0, 17592186044415]
snprintf(memory, 9, "%6lluMB", proc[i].used_memory / 1048576);
^~~~~~~~~
In file included from /usr/include/stdio.h:862:0,
from /usr/include/curses.h:183,
from /tmp/nvtop-master/include/nvtop/plot.h:25,
from /tmp/nvtop-master/src/interface.c:24:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:64:10: note: ‘__builtin___snprintf_chk’ output between 9 and 17 bytes into a destination of size 9
return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
__bos (__s), __fmt, __va_arg_pack ());
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 37%] Building C object src/CMakeFiles/nvtop.dir/interface_layout_selection.c.o
[ 50%] Building C object src/CMakeFiles/nvtop.dir/get_process_info_linux.c.o
[ 62%] Building C object src/CMakeFiles/nvtop.dir/extract_gpuinfo.c.o
[ 75%] Building C object src/CMakeFiles/nvtop.dir/time.c.o
[ 87%] Building C object src/CMakeFiles/nvtop.dir/plot.c.o
[100%] Linking C executable nvtop
[100%] Built target nvtop
Would it still be possible to have the consumed watts drawn in the diagram?
Thank you
under what license issues?
I am using "Debian GNU/Linux 10 (buster) x86_64" and have activated the non-free repos in sources.list
.
When trying to install nvtop, I get the following output:
svdhero@box:~$ sudo apt install nvtop
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package nvtop
The README.md states that nvtop should be in the Debian repos. What's wrong here?
I would like to point out that identifiers like “__GET_PROCESS_INFO_H_
” and “__INTERFACE_H_
” do not fit to the expected naming convention of the C language standard.
Would you like to adjust your selection for unique names?
I just installed new Nvidia driver 340 on my machine and downloaded nvtop from the repo. Installed it and after trying to run the nvtop command it gives out the following error message:
nvtop: symbol lookup error: nvtop: undefined symbol: nvmlDeviceGetPcieThroughput
Tried to google, but didn't find any relevant answers that I can understand. Can anyone help me with this error?
Specs:
OS: Ubuntu 16.04 LTS
GPU: Quadro K1000M/PCIe/SSE2
~/nvtop/build$ make
[ 20%] Linking C executable nvtop
/usr/lib32/nvidia-390/libnvidia-ml.so: error adding symbols: File in wrong format
collect2: error: ld returned 1 exit status
src/CMakeFiles/nvtop.dir/build.make:176: recipe for target 'src/nvtop' failed
make[2]: *** [src/nvtop] Error 1
CMakeFiles/Makefile2:117: recipe for target 'src/CMakeFiles/nvtop.dir/all' failed
make[1]: *** [src/CMakeFiles/nvtop.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
cmake .. -DNVML_RETRIEVE_HEADER_ONLINE=True
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
Could NOT find NVML (missing: NVML_LIBRARIES) (found version "8")
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindNVML.cmake:52 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:30 (find_package)-- Configuring incomplete, errors occurred!
I installed it on AWS without any problem. When I try installing it on server with docker I am using, I got that error.
Hi,
I got this error when I tried to compile nvtop on nvidia jetson nano
-- The C compiler identification is GNU 7.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Setting build type to 'Release' as none was specified.
CMake Error at /usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find NVML (missing: NVML_LIBRARIES) (found version "10")
Call Stack (most recent call first):
/usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindNVML.cmake:52 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:31 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/pythops/nvtop/build/CMakeFiles/CMakeOutput.log".
Environment
OS: Ubuntu 18.04.3 LTS
Cuda: 10.0.326-1
libcudnn: 7.5.0.56-1+cuda10.0
nvml: cuda-nvml-dev-10-0
Additional info
$ ldconfig -p | grep libnvidia-ml
libnvidia-ml.so.1 (libc6,AArch64) => /usr/local/cuda/lib64/stubs/libnvidia-ml.so.1
Any help would be appreciated !
Running Ubuntu 16.04.5 LTS with Cuda compilation tools release 9.0 and the recommended ncurses libraries:
(base) ubuntu@ip-172-31-81-132:~/nvtop$ dpkg -l |grep libncurses
ii libncurses5:amd64 6.0+20160213-1ubuntu1 amd64 shared libraries for terminal handling
ii libncurses5-dev:amd64 6.0+20160213-1ubuntu1 amd64 developer's libraries for ncurses
ii libncursesw5:amd64 6.0+20160213-1ubuntu1 amd64 shared libraries for terminal handling (wide character support)
ii libncursesw5-dev:amd64 6.0+20160213-1ubuntu1 amd64 developer's libraries for ncursesw
Everything also seemed to build fine:
(base) ubuntu@ip-172-31-81-132:~$ mkdir -p nvtop/build && cd nvtop/build
(base) ubuntu@ip-172-31-81-132:~/nvtop/build$ cmake ..
-- The C compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Setting build type to 'Release' as none was specified.
-- Found NVML: /usr/local/cuda/include (found version "9")
-- Looking for cbreak in /home/ubuntu/anaconda3/lib/libncursesw.so
-- Looking for cbreak in /home/ubuntu/anaconda3/lib/libncursesw.so - not found
-- Found Curses: /home/ubuntu/anaconda3/lib/libncursesw.so
-- Performing Test compiler_has-Wall
-- Performing Test compiler_has-Wall - Success
-- Performing Test compiler_has-Wpedantic
-- Performing Test compiler_has-Wpedantic - Success
-- Performing Test compiler_has-Wextra
-- Performing Test compiler_has-Wextra - Success
-- Performing Test compiler_has-Waddress
-- Performing Test compiler_has-Waddress - Success
-- Performing Test compiler_has-Waggressive-loop-optimizations
-- Performing Test compiler_has-Waggressive-loop-optimizations - Success
-- Performing Test compiler_has-Wcast-qual
-- Performing Test compiler_has-Wcast-qual - Success
-- Performing Test compiler_has-Wcast-align
-- Performing Test compiler_has-Wcast-align - Success
-- Performing Test compiler_has-Wbad-function-cast
-- Performing Test compiler_has-Wbad-function-cast - Success
-- Performing Test compiler_has-Wmissing-declarations
-- Performing Test compiler_has-Wmissing-declarations - Success
-- Performing Test compiler_has-Wmissing-parameter-type
-- Performing Test compiler_has-Wmissing-parameter-type - Success
-- Performing Test compiler_has-Wmissing-prototypes
-- Performing Test compiler_has-Wmissing-prototypes - Success
-- Performing Test compiler_has-Wnested-externs
-- Performing Test compiler_has-Wnested-externs - Success
-- Performing Test compiler_has-Wold-style-declaration
-- Performing Test compiler_has-Wold-style-declaration - Success
-- Performing Test compiler_has-Wold-style-definition
-- Performing Test compiler_has-Wold-style-definition - Success
-- Performing Test compiler_has-Wstrict-prototypes
-- Performing Test compiler_has-Wstrict-prototypes - Success
-- Performing Test compiler_has-Wpointer-sign
-- Performing Test compiler_has-Wpointer-sign - Success
-- Performing Test compiler_has-Wdouble-promotion
-- Performing Test compiler_has-Wdouble-promotion - Success
-- Performing Test compiler_has-Wuninitialized
-- Performing Test compiler_has-Wuninitialized - Success
-- Performing Test compiler_has-Winit-self
-- Performing Test compiler_has-Winit-self - Success
-- Performing Test compiler_has-Wstrict-aliasing
-- Performing Test compiler_has-Wstrict-aliasing - Success
-- Performing Test compiler_has-Wsuggest-attribute-const
-- Performing Test compiler_has-Wsuggest-attribute-const - Success
-- Performing Test compiler_has-Wtrampolines
-- Performing Test compiler_has-Wtrampolines - Success
-- Performing Test compiler_has-Wfloat-equal
-- Performing Test compiler_has-Wfloat-equal - Success
-- Performing Test compiler_has-Wshadow
-- Performing Test compiler_has-Wshadow - Success
-- Performing Test compiler_has-Wunsafe-loop-optimizations
-- Performing Test compiler_has-Wunsafe-loop-optimizations - Success
-- Performing Test compiler_has-Wfloat-conversion
-- Performing Test compiler_has-Wfloat-conversion - Success
-- Performing Test compiler_has-Wlogical-op
-- Performing Test compiler_has-Wlogical-op - Success
-- Performing Test compiler_has-Wnormalized
-- Performing Test compiler_has-Wnormalized - Success
-- Performing Test compiler_has-Wdisabled-optimization
-- Performing Test compiler_has-Wdisabled-optimization - Success
-- Performing Test compiler_has-Whsa
-- Performing Test compiler_has-Whsa - Failed
-- Performing Test compiler_has-Wconversion
-- Performing Test compiler_has-Wconversion - Success
-- Performing Test compiler_has-Wunused-result
-- Performing Test compiler_has-Wunused-result - Success
-- Performing Test compiler_has-Werror-implicit-function-declaration
-- Performing Test compiler_has-Werror-implicit-function-declaration - Success
-- Performing Test linker_has-Wl_-z_relro
-- Performing Test linker_has-Wl_-z_relro - Success
-- Performing Test sanitizer-address-available
-- Performing Test sanitizer-address-available - Success
-- Performing Test sanitizer-undefined-available
-- Performing Test sanitizer-undefined-available - Success
-- Configuring done
-- Generating done
-- Build files have been written to: /home/ubuntu/nvtop/build
(base) ubuntu@ip-172-31-81-132:~/nvtop/build$ make
Scanning dependencies of target nvtop
[ 12%] Building C object src/CMakeFiles/nvtop.dir/nvtop.c.o
[ 25%] Building C object src/CMakeFiles/nvtop.dir/interface.c.o
[ 37%] Building C object src/CMakeFiles/nvtop.dir/interface_layout_selection.c.o
[ 50%] Building C object src/CMakeFiles/nvtop.dir/get_process_info_linux.c.o
[ 62%] Building C object src/CMakeFiles/nvtop.dir/extract_gpuinfo.c.o
[ 75%] Building C object src/CMakeFiles/nvtop.dir/time.c.o
[ 87%] Building C object src/CMakeFiles/nvtop.dir/plot.c.o
[100%] Linking C executable nvtop
[100%] Built target nvtop
(base) ubuntu@ip-172-31-81-132:~/nvtop/build$ sudo make install
[100%] Built target nvtop
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/share/man/man1/nvtop.1
-- Installing: /usr/local/bin/nvtop
-- Set runtime path of "/usr/local/bin/nvtop" to "/usr/local/lib:/home/ubuntu/anaconda3/lib"
In there I see -- Looking for cbreak in /home/ubuntu/anaconda3/lib/libncursesw.so - not found
and then -- Found Curses: /home/ubuntu/anaconda3/lib/libncursesw.so
, which seems odd, but I'm assuming that worked. There is, of course, also this: -- Performing Test compiler_has-Whsa - Failed
.
Anyway, like #36 the plot is a bunch of characters.
Following that thread, this is what ldd
and echo $TERM
return:
(base) ubuntu@ip-172-31-81-132:~/nvtop$ ldd build/src/nvtop
linux-vdso.so.1 => (0x00007fff74739000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fdbf5ce6000)
libnvidia-ml.so.1 => /usr/lib/x86_64-linux-gnu/libnvidia-ml.so.1 (0x00007fdbf56d7000)
libncursesw.so.6 => /home/ubuntu/anaconda3/lib/libncursesw.so.6 (0x00007fdbf549e000)
libtinfow.so.6 => /home/ubuntu/anaconda3/lib/libtinfow.so.6 (0x00007fdbf5263000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fdbf4e99000)
/lib64/ld-linux-x86-64.so.2 (0x00007fdbf5fef000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fdbf4c7c000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fdbf4a78000)
(base) ubuntu@ip-172-31-81-132:~/nvtop$ echo $TERM
xterm
I saw at the bottom of #36 that "the problem lies in the TERM
variable being ansi
," but my TERM
variable is xterm
, which is what I think it's supposed to be.
Any suggestions? Thank you.
Hey there - thanks for this amazing monitoring tool! 🙇
Here's an issue I'm hitting: when running on a 6-gpu system nvtop allocates memory until it is getting killed by the linux oom killer. It looks like there is an overflow somewhere leading to unbound memory allocation (at a rate of multiple GBs per second).
Another data point: this behavior stops to happen when I run in a small terminal (e.g. 80x24) or in a tmux split pane, which indicates it has something to do with the live utilization plots.
When running a debug build and sending a SIGHUP signal during the memory allocation I get backtraces indicating draw_plots in the problem, e.g.
(gdb) bt
#0 0x00005555555c11c8 in nvtop_line_plot (win=0x0, num_data=3200171704, data=0x7ff9f9354800, min=0, max=100, num_plots=4, legend=0x7fffffffe000) at /home/djh/nvtop/src/plot.c:61
#1 0x00005555555a99db in draw_plots (interface=0x6110000002c0) at /home/djh/nvtop/src/interface.c:1604
#2 0x00005555555a9ce1 in draw_gpu_info_ncurses (dev_info=0x61a000000c80, interface=0x6110000002c0) at /home/djh/nvtop/src/interface.c:1625
#3 0x0000555555594192 in main (argc=1, argv=0x7fffffffe4a8) at /home/djh/nvtop/src/nvtop.c:270
Hope that helps, let me know if you need more information.
Would you like to add more error handling for return values from functions like the following?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.