We have an opencl application than runs with single nvidia C2075 (6GB Mem) in a machine with 12 GB RAM.
We had set up a new machine with 12GB RAM and an AMD W9100 GPU (16GB Mem) ( and made sure everything correct by running simple opencl apps).
Now the same opencl application crashes in the new machine. We have found that during execution some of the memory allocations fail. Increasing the system memory to 24GB made the application work.
(the application works in all single gpu machines where gpu memory > system memory. all machines are suse linux enterprise server 64bit)
How do you conclude this scenario?
I thought the GPU was mapping its whole 16GB onto the system RAM, there by causing memory starvation. But going through /proc/iomem and lspci -v, i could not see a 16GB window.
Does the GPU really map its memory to system memory?
Thanks for the help
I don't know what would happen, but I believe that a machine with more GPU memory than RAM is grossly unbalanced (and you could experiment thrashing...). RAM is quite cheap these days, so go buy some more!
You machine is probably unbalanced, since in numerical computations not everything is happenning inside the GPU. You need to do some data management (at least malloc and IO and overall computation control), and that requires the data to sometimes sit in the process memory space, which practically should mean in RAM.
How do you conclude this scenario? I thought the GPU was mapping its whole 16GB onto the system RAM, there by causing memory starvation.
Certainly not. The GPU memory is mmap(2)-ed, and this means in virtual memory, not physical one.
AFAIK, the GPU memory is seen (by software) as RAM, even if it is probably several times slower (for processor access) than ordinary RAM (because the PCI bus linking a graphics card to the motherboard is much slower than the RAM bus linking RAM to the processor)
I have a low-end NVIDIA GPU and I have 16 GbRAM and only 1 or 2 Gb of GPU memory, but:
% sudo cat /proc/$(pidof /usr/bin/X)/maps
7f18a942a000-7f18ad42a000 rw-s 00000000 00:05 76611587 /SYSV00000000 (deleted)
7f18ad42a000-7f18adae5000 rw-p 00000000 00:00 0
7f18ade6e000-7f18ae658000 rw-p 00000000 00:00 0
7f18af0f9000-7f18affce000 rw-p 00000000 00:00 0
7f18b02ce000-7f18b12ae000 rw-s 103ada000 00:06 14729 /dev/dri/card0
7f18b656e000-7f18b656f000 rw-p 00025000 08:02 2229454 /usr/lib/xorg/modules/libfb.so
7f18b65c3000-7f18b6643000 rw-s 00000000 00:05 76546049 /SYSV00000000 (deleted)
7f18b6663000-7f18b66c3000 rw-s 00000000 00:05 76742661 /SYSV00000000 (deleted)
7f18b66c3000-7f18b6743000 rw-s 00000000 00:05 76709892 /SYSV00000000 (deleted)
7f18b6743000-7f18b674f000 r-xp 00000000 08:02 534519 /usr/lib/x86_64-linux-gnu/libdrm_radeon.so.1.0.1
7f18b674f000-7f18b694e000 ---p 0000c000 08:02 534519 /usr/lib/x86_64-linux-gnu/libdrm_radeon.so.1.0.1
7f18b694e000-7f18b694f000 r--p 0000b000 08:02 534519 /usr/lib/x86_64-linux-gnu/libdrm_radeon.so.1.0.1
7f18b694f000-7f18b6950000 rw-p 0000c000 08:02 534519 /usr/lib/x86_64-linux-gnu/libdrm_radeon.so.1.0.1
7f18b6950000-7f18b6971000 r-xp 00000000 08:02 536346 /usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.0.0
7f18b6971000-7f18b6b70000 ---p 00021000 08:02 536346 /usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.0.0
7f18b6b70000-7f18b6b71000 r--p 00020000 08:02 536346 /usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.0.0
7f18b6b71000-7f18b6b72000 rw-p 00021000 08:02 536346 /usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.0.0
7f18b6b72000-7f18b6b88000 r-xp 00000000 08:02 2229443 /usr/lib/xorg/modules/libexa.so
7f18b6b88000-7f18b6d88000 ---p 00016000 08:02 2229443 /usr/lib/xorg/modules/libexa.so
7f18b6d88000-7f18b6d89000 r--p 00016000 08:02 2229443 /usr/lib/xorg/modules/libexa.so
7f18b6d89000-7f18b6d8a000 rw-p 00017000 08:02 2229443 /usr/lib/xorg/modules/libexa.so
7f18b6d8a000-7f18b6d90000 r-xp 00000000 08:02 534517 /usr/lib/x86_64-linux-gnu/libdrm_nouveau.so.2.0.0
7f18b6d90000-7f18b6f8f000 ---p 00006000 08:02 534517 /usr/lib/x86_64-linux-gnu/libdrm_nouveau.so.2.0.0
7f18b6f8f000-7f18b6f90000 r--p 00005000 08:02 534517 /usr/lib/x86_64-linux-gnu/libdrm_nouveau.so.2.0.0
7f18b6f90000-7f18b6f91000 rw-p 00006000 08:02 534517 /usr/lib/x86_64-linux-gnu/libdrm_nouveau.so.2.0.0
7f18b6f91000-7f18b6fc2000 r-xp 00000000 08:02 2232215 /usr/lib/xorg/modules/drivers/nouveau_drv.so
7f18b6fc2000-7f18b71c2000 ---p 00031000 08:02 2232215 /usr/lib/xorg/modules/drivers/nouveau_drv.so
7f18b71c2000-7f18b71c3000 r--p 00031000 08:02 2232215 /usr/lib/xorg/modules/drivers/nouveau_drv.so
7f18b71c3000-7f18b71c7000 rw-p 00032000 08:02 2232215 /usr/lib/xorg/modules/drivers/nouveau_drv.so
7f18b71c7000-7f18b71cc000 r-xp 00000000 08:02 534404 /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0
7f18b71cc000-7f18b73cb000 ---p 00005000 08:02 534404 /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0
7f18b73cb000-7f18b73cc000 r--p 00004000 08:02 534404 /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0
7f18b73cc000-7f18b73cd000 rw-p 00005000 08:02 534404 /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0
7f18b73cd000-7f18b73ee000 r-xp 00000000 08:02 530987 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f18b73ee000-7f18b75ed000 ---p 00021000 08:02 530987 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f18b75ed000-7f18b75ee000 r--p 00020000 08:02 530987 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f18b75ee000-7f18b75ef000 rw-p 00021000 08:02 530987 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f18b75ef000-7f18b75f4000 r-xp 00000000 08:02 534560 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0
7f18b75f4000-7f18b77f4000 ---p 00005000 08:02 534560 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0
7f18b77f4000-7f18b77f5000 r--p 00005000 08:02 534560 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0
7f18b77f5000-7f18b77f6000 rw-p 00006000 08:02 534560 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0
7f18b77f6000-7f18b77f8000 r-xp 00000000 08:02 534558 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0
7f18b77f8000-7f18b79f7000 ---p 00002000 08:02 534558 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0
7f18b79f7000-7f18b79f8000 r--p 00001000 08:02 534558 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0
7f18b79f8000-7f18b79f9000 rw-p 00002000 08:02 534558 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0
7f18b79f9000-7f18b79fb000 r-xp 00000000 08:02 534554 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0
7f18b79fb000-7f18b7bfa000 ---p 00002000 08:02 534554 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0
7f18b7bfa000-7f18b7bfb000 r--p 00001000 08:02 534554 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0
7f18b7bfb000-7f18b7bfc000 rw-p 00002000 08:02 534554 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0
7f18b7bfc000-7f18b7c00000 r-xp 00000000 08:02 534543 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0
7f18b7c00000-7f18b7dff000 ---p 00004000 08:02 534543 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0
7f18b7dff000-7f18b7e00000 r--p 00003000 08:02 534543 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0
7f18b7e00000-7f18b7e01000 rw-p 00004000 08:02 534543 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0
7f18b7e01000-7f18b7e18000 r-xp 00000000 08:02 534556 /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0
7f18b7e18000-7f18b8017000 ---p 00017000 08:02 534556 /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0
7f18b8017000-7f18b8019000 r--p 00016000 08:02 534556 /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0
7f18b8019000-7f18b801a000 rw-p 00018000 08:02 534556 /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0
7f18b801a000-7f18b8156000 r-xp 00000000 08:02 530991 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7f18b8156000-7f18b8355000 ---p 0013c000 08:02 530991 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7f18b8355000-7f18b8357000 r--p 0013b000 08:02 530991 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7f18b8357000-7f18b835c000 rw-p 0013d000 08:02 530991 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7f18b835c000-7f18b835d000 rw-p 00000000 00:00 0
7f18b835d000-7f18b835e000 r-xp 00000000 08:02 534541 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0
7f18b835e000-7f18b855d000 ---p 00001000 08:02 534541 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0
7f18b855d000-7f18b855e000 r--p 00000000 08:02 534541 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0
7f18b855e000-7f18b855f000 rw-p 00001000 08:02 534541 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0
7f18b855f000-7f18b8564000 r-xp 00000000 08:02 559997 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0
7f18b8564000-7f18b8763000 ---p 00005000 08:02 559997 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0
7f18b8763000-7f18b8764000 r--p 00004000 08:02 559997 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0
7f18b8764000-7f18b8765000 rw-p 00005000 08:02 559997 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0
7f18b8765000-7f18b8767000 r-xp 00000000 08:02 560382 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0
7f18b8767000-7f18b8966000 ---p 00002000 08:02 560382 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0
7f18b8966000-7f18b8967000 r--p 00001000 08:02 560382 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0
7f18b8967000-7f18b8968000 rw-p 00002000 08:02 560382 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0
7f18b8968000-7f18b8979000 r-xp 00000000 08:02 530998 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
7f18b8979000-7f18b8b78000 ---p 00011000 08:02 530998 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
7f18b8b78000-7f18b8b79000 r--p 00010000 08:02 530998 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
7f18b8b79000-7f18b8b7a000 rw-p 00011000 08:02 530998 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
7f18b8b7a000-7f18b8b9f000 r-xp 00000000 08:02 531500 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0
7f18b8b9f000-7f18b8d9f000 ---p 00025000 08:02 531500 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0
7f18b8d9f000-7f18b8da2000 r--p 00025000 08:02 531500 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0
7f18b8da2000-7f18b8da3000 rw-p 00028000 08:02 531500 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0
7f18b8da3000-7f18b8da4000 rw-p 00000000 00:00 0
7f18b8da4000-7f18b8dca000 r-xp 00000000 08:02 393404 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f18b8dca000-7f18b8fc9000 ---p 00026000 08:02 393404 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f18b8fc9000-7f18b8fcc000 r--p 00025000 08:02 393404 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f18b8fcc000-7f18b8fcd000 rw-p 00028000 08:02 393404 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7f18b8fcd000-7f18b9063000 r-xp 00000000 08:02 531019 /usr/lib/x86_64-linux-gnu/libGL.so.1.2.0
7f18b9063000-7f18b9262000 ---p 00096000 08:02 531019 /usr/lib/x86_64-linux-gnu/libGL.so.1.2.0
7f18b9262000-7f18b9265000 r--p 00095000 08:02 531019 /usr/lib/x86_64-linux-gnu/libGL.so.1.2.0
7f18b9265000-7f18b9266000 rw-p 00098000 08:02 531019 /usr/lib/x86_64-linux-gnu/libGL.so.1.2.0
7f18b9266000-7f18b9267000 rw-p 00000000 00:00 0
7f18b9267000-7f18b92aa000 r-xp 00000000 08:02 2229456 /usr/lib/xorg/modules/extensions/libglx.so
7f18b92aa000-7f18b94a9000 ---p 00043000 08:02 2229456 /usr/lib/xorg/modules/extensions/libglx.so
7f18b94a9000-7f18b94ab000 r--p 00042000 08:02 2229456 /usr/lib/xorg/modules/extensions/libglx.so
7f18b94ab000-7f18b94af000 rw-p 00044000 08:02 2229456 /usr/lib/xorg/modules/extensions/libglx.so
7f18b94af000-7f18b94c5000 r-xp 00000000 08:02 393444 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f18b94c5000-7f18b96c4000 ---p 00016000 08:02 393444 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f18b96c4000-7f18b96c5000 rw-p 00015000 08:02 393444 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f18b96c5000-7f18b96eb000 r-xp 00000000 08:02 393438 /lib/x86_64-linux-gnu/libpng12.so.0.50.0
7f18b96eb000-7f18b98ea000 ---p 00026000 08:02 393438 /lib/x86_64-linux-gnu/libpng12.so.0.50.0
7f18b98ea000-7f18b98eb000 r--p 00025000 08:02 393438 /lib/x86_64-linux-gnu/libpng12.so.0.50.0
7f18b98eb000-7f18b98ec000 rw-p 00026000 08:02 393438 /lib/x86_64-linux-gnu/libpng12.so.0.50.0
7f18b98ec000-7f18b98f2000 r-xp 00000000 08:02 528151 /usr/lib/x86_64-linux-gnu/libfontenc.so.1.0.0
7f18b98f2000-7f18b9af1000 ---p 00006000 08:02 528151 /usr/lib/x86_64-linux-gnu/libfontenc.so.1.0.0
7f18b9af1000-7f18b9af2000 r--p 00005000 08:02 528151 /usr/lib/x86_64-linux-gnu/libfontenc.so.1.0.0
7f18b9af2000-7f18b9af4000 rw-p 00006000 08:02 528151 /usr/lib/x86_64-linux-gnu/libfontenc.so.1.0.0
7f18b9af4000-7f18b9b03000 r-xp 00000000 08:02 393256 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f18b9b03000-7f18b9d02000 ---p 0000f000 08:02 393256 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f18b9d02000-7f18b9d03000 r--p 0000e000 08:02 393256 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f18b9d03000-7f18b9d04000 rw-p 0000f000 08:02 393256 /lib/x86_64-linux-gnu/libbz2.so.1.0.4
7f18b9d04000-7f18b9da7000 r-xp 00000000 08:02 530811 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.11.1
7f18b9da7000-7f18b9fa7000 ---p 000a3000 08:02 530811 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.11.1
7f18b9fa7000-7f18b9fad000 r--p 000a3000 08:02 530811 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.11.1
7f18b9fad000-7f18b9fae000 rw-p 000a9000 08:02 530811 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.11.1
7f18b9fae000-7f18b9fc8000 r-xp 00000000 08:02 393316 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f18b9fc8000-7f18ba1c7000 ---p 0001a000 08:02 393316 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f18ba1c7000-7f18ba1c8000 r--p 00019000 08:02 393316 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f18ba1c8000-7f18ba1c9000 rw-p 0001a000 08:02 393316 /lib/x86_64-linux-gnu/libz.so.1.2.8
7f18ba1c9000-7f18ba1da000 r-xp 00000000 08:02 393327 /lib/x86_64-linux-gnu/libgpg-error.so.0.13.0
7f18ba1da000-7f18ba3d9000 ---p 00011000 08:02 393327 /lib/x86_64-linux-gnu/libgpg-error.so.0.13.0
7f18ba3d9000-7f18ba3da000 r--p 00010000 08:02 393327 /lib/x86_64-linux-gnu/libgpg-error.so.0.13.0
7f18ba3da000-7f18ba3db000 rw-p 00011000 08:02 393327 /lib/x86_64-linux-gnu/libgpg-error.so.0.13.0
7f18ba3db000-7f18ba447000 r-xp 00000000 08:02 393252 /lib/x86_64-linux-gnu/libpcre.so.3.13.1
7f18ba447000-7f18ba647000 ---p 0006c000 08:02 393252 /lib/x86_64-linux-gnu/libpcre.so.3.13.1
7f18ba647000-7f18ba648000 r--p 0006c000 08:02 393252 /lib/x86_64-linux-gnu/libpcre.so.3.13.1
7f18ba648000-7f18ba649000 rw-p 0006d000 08:02 393252 /lib/x86_64-linux-gnu/libpcre.so.3.13.1
7f18ba649000-7f18ba661000 r-xp 00000000 08:02 393707 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f18ba661000-7f18ba860000 ---p 00018000 08:02 393707 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f18ba860000-7f18ba861000 r--p 00017000 08:02 393707 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f18ba861000-7f18ba862000 rw-p 00018000 08:02 393707 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f18ba862000-7f18ba866000 rw-p 00000000 00:00 0
7f18ba866000-7f18ba86d000 r-xp 00000000 08:02 393708 /lib/x86_64-linux-gnu/librt-2.19.so
7f18ba86d000-7f18baa6c000 ---p 00007000 08:02 393708 /lib/x86_64-linux-gnu/librt-2.19.so
7f18baa6c000-7f18baa6d000 r--p 00006000 08:02 393708 /lib/x86_64-linux-gnu/librt-2.19.so
7f18baa6d000-7f18baa6e000 rw-p 00007000 08:02 393708 /lib/x86_64-linux-gnu/librt-2.19.so
7f18baa6e000-7f18bac0d000 r-xp 00000000 08:02 393714 /lib/x86_64-linux-gnu/libc-2.19.so
7f18bac0d000-7f18bae0d000 ---p 0019f000 08:02 393714 /lib/x86_64-linux-gnu/libc-2.19.so
7f18bae0d000-7f18bae11000 r--p 0019f000 08:02 393714 /lib/x86_64-linux-gnu/libc-2.19.so
7f18bae11000-7f18bae13000 rw-p 001a3000 08:02 393714 /lib/x86_64-linux-gnu/libc-2.19.so
7f18bae13000-7f18bae17000 rw-p 00000000 00:00 0
7f18bae17000-7f18baf17000 r-xp 00000000 08:02 393713 /lib/x86_64-linux-gnu/libm-2.19.so
7f18baf17000-7f18bb116000 ---p 00100000 08:02 393713 /lib/x86_64-linux-gnu/libm-2.19.so
7f18bb116000-7f18bb117000 r--p 000ff000 08:02 393713 /lib/x86_64-linux-gnu/libm-2.19.so
7f18bb117000-7f18bb118000 rw-p 00100000 08:02 393713 /lib/x86_64-linux-gnu/libm-2.19.so
7f18bb118000-7f18bb132000 r-xp 00000000 08:02 393260 /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f18bb132000-7f18bb331000 ---p 0001a000 08:02 393260 /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f18bb331000-7f18bb333000 r--p 00019000 08:02 393260 /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f18bb333000-7f18bb334000 rw-p 0001b000 08:02 393260 /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f18bb334000-7f18bb33e000 rw-p 00000000 00:00 0
7f18bb33e000-7f18bb343000 r-xp 00000000 08:02 529063 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7f18bb343000-7f18bb542000 ---p 00005000 08:02 529063 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7f18bb542000-7f18bb543000 rw-p 00004000 08:02 529063 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7f18bb543000-7f18bb544000 r-xp 00000000 08:02 534562 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0
7f18bb544000-7f18bb743000 ---p 00001000 08:02 534562 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0
7f18bb743000-7f18bb744000 r--p 00000000 08:02 534562 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0
7f18bb744000-7f18bb745000 rw-p 00001000 08:02 534562 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0
7f18bb745000-7f18bb748000 r-xp 00000000 08:02 530983 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7f18bb748000-7f18bb947000 ---p 00003000 08:02 530983 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7f18bb947000-7f18bb948000 r--p 00002000 08:02 530983 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7f18bb948000-7f18bb949000 rw-p 00003000 08:02 530983 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7f18bb949000-7f18bb977000 r-xp 00000000 08:02 529065 /usr/lib/x86_64-linux-gnu/libXfont.so.1.4.1
7f18bb977000-7f18bbb76000 ---p 0002e000 08:02 529065 /usr/lib/x86_64-linux-gnu/libXfont.so.1.4.1
7f18bbb76000-7f18bbb77000 r--p 0002d000 08:02 529065 /usr/lib/x86_64-linux-gnu/libXfont.so.1.4.1
7f18bbb77000-7f18bbb79000 rw-p 0002e000 08:02 529065 /usr/lib/x86_64-linux-gnu/libXfont.so.1.4.1
7f18bbb79000-7f18bbc1e000 r-xp 00000000 08:02 530981 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.32.6
7f18bbc1e000-7f18bbe1d000 ---p 000a5000 08:02 530981 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.32.6
7f18bbe1d000-7f18bbe25000 r--p 000a4000 08:02 530981 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.32.6
7f18bbe25000-7f18bbe26000 rw-p 000ac000 08:02 530981 /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.32.6
7f18bbe26000-7f18bbe32000 r-xp 00000000 08:02 534514 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7f18bbe32000-7f18bc031000 ---p 0000c000 08:02 534514 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7f18bc031000-7f18bc032000 r--p 0000b000 08:02 534514 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7f18bc032000-7f18bc033000 rw-p 0000c000 08:02 534514 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
7f18bc033000-7f18bc03b000 r-xp 00000000 08:02 528200 /usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1
7f18bc03b000-7f18bc23b000 ---p 00008000 08:02 528200 /usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1
7f18bc23b000-7f18bc23c000 r--p 00008000 08:02 528200 /usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1
7f18bc23c000-7f18bc23d000 rw-p 00009000 08:02 528200 /usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1
7f18bc23d000-7f18bc240000 r-xp 00000000 08:02 393673 /lib/x86_64-linux-gnu/libdl-2.19.so
7f18bc240000-7f18bc43f000 ---p 00003000 08:02 393673 /lib/x86_64-linux-gnu/libdl-2.19.so
7f18bc43f000-7f18bc440000 r--p 00002000 08:02 393673 /lib/x86_64-linux-gnu/libdl-2.19.so
7f18bc440000-7f18bc441000 rw-p 00003000 08:02 393673 /lib/x86_64-linux-gnu/libdl-2.19.so
7f18bc441000-7f18bc518000 r-xp 00000000 08:02 393392 /lib/x86_64-linux-gnu/libgcrypt.so.20.0.2
7f18bc518000-7f18bc718000 ---p 000d7000 08:02 393392 /lib/x86_64-linux-gnu/libgcrypt.so.20.0.2
7f18bc718000-7f18bc719000 r--p 000d7000 08:02 393392 /lib/x86_64-linux-gnu/libgcrypt.so.20.0.2
7f18bc719000-7f18bc722000 rw-p 000d8000 08:02 393392 /lib/x86_64-linux-gnu/libgcrypt.so.20.0.2
7f18bc722000-7f18bc743000 r-xp 00000000 08:02 393315 /lib/x86_64-linux-gnu/libselinux.so.1
7f18bc743000-7f18bc943000 ---p 00021000 08:02 393315 /lib/x86_64-linux-gnu/libselinux.so.1
7f18bc943000-7f18bc944000 r--p 00021000 08:02 393315 /lib/x86_64-linux-gnu/libselinux.so.1
7f18bc944000-7f18bc945000 rw-p 00022000 08:02 393315 /lib/x86_64-linux-gnu/libselinux.so.1
7f18bc945000-7f18bc947000 rw-p 00000000 00:00 0
7f18bc947000-7f18bc955000 r-xp 00000000 08:02 393787 /lib/x86_64-linux-gnu/libudev.so.1.5.0
7f18bc955000-7f18bcb54000 ---p 0000e000 08:02 393787 /lib/x86_64-linux-gnu/libudev.so.1.5.0
7f18bcb54000-7f18bcb55000 r--p 0000d000 08:02 393787 /lib/x86_64-linux-gnu/libudev.so.1.5.0
7f18bcb55000-7f18bcb56000 rw-p 0000e000 08:02 393787 /lib/x86_64-linux-gnu/libudev.so.1.5.0
7f18bcb56000-7f18bcb76000 r-xp 00000000 08:02 393254 /lib/x86_64-linux-gnu/ld-2.19.so
7f18bcb9b000-7f18bcbfb000 rw-s 00000000 00:05 76513280 /SYSV00000000 (deleted)
7f18bcbfb000-7f18bcc03000 rw-s 10085e000 00:06 14729 /dev/dri/card0
7f18bcc03000-7f18bcc0b000 rw-s 100856000 00:06 14729 /dev/dri/card0
7f18bcc0b000-7f18bcc13000 rw-s 10084e000 00:06 14729 /dev/dri/card0
7f18bcc13000-7f18bcc17000 rw-s 10082f000 00:06 14729 /dev/dri/card0
7f18bcc17000-7f18bcc1b000 rw-s 10082b000 00:06 14729 /dev/dri/card0
7f18bcc1b000-7f18bcc9b000 rw-s 10104c000 00:06 14729 /dev/dri/card0
7f18bcc9b000-7f18bcce7000 rw-p 00000000 00:00 0
7f18bcce7000-7f18bccef000 rw-s 100899000 00:06 14729 /dev/dri/card0
7f18bccef000-7f18bcd47000 rw-p 00000000 00:00 0
7f18bcd4a000-7f18bcd4b000 rw-s 10124c000 00:06 14729 /dev/dri/card0
7f18bcd4b000-7f18bcd53000 rw-s 100846000 00:06 14729 /dev/dri/card0
7f18bcd53000-7f18bcd73000 rw-s 100866000 00:06 14729 /dev/dri/card0
7f18bcd73000-7f18bcd76000 rw-p 00000000 00:00 0
7f18bcd76000-7f18bcd77000 r--p 00020000 08:02 393254 /lib/x86_64-linux-gnu/ld-2.19.so
7f18bcd77000-7f18bcd78000 rw-p 00021000 08:02 393254 /lib/x86_64-linux-gnu/ld-2.19.so
7f18bcd78000-7f18bcd79000 rw-p 00000000 00:00 0
7f18bcd79000-7f18bcfb4000 r-xp 00000000 08:02 533895 /usr/bin/Xorg
7f18bd1b4000-7f18bd1b6000 r--p 0023b000 08:02 533895 /usr/bin/Xorg
7f18bd1b6000-7f18bd1c3000 rw-p 0023d000 08:02 533895 /usr/bin/Xorg
7f18bd1c3000-7f18bd1d4000 rw-p 00000000 00:00 0
7f18bd52b000-7f18bfbaa000 rw-p 00000000 00:00 0 [heap]
7fff59fc8000-7fff59fe9000 rw-p 00000000 00:00 0 [stack]
7fff59fec000-7fff59fee000 r--p 00000000 00:00 0 [vvar]
7fff59fee000-7fff59ff0000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
Related
My final goal is to create a new system call which returns the range of each segment of the current thread.
The segments:
text segment
data segment
BSS segment
heap segment
memory mapping segment (shared libraries)
stack segment
I would like to start from understanding the /proc/$pid/maps first.
The Enviroment:
Ubuntu 22.04
Linux 5.15.74
555555554000-555555556000 r--p 00000000 08:02 7873545 /home/vm/Desktop/test
555555556000-555555557000 r-xp 00002000 08:02 7873545 /home/vm/Desktop/test
555555557000-555555558000 r--p 00003000 08:02 7873545 /home/vm/Desktop/test
555555558000-555555559000 r--p 00003000 08:02 7873545 /home/vm/Desktop/test
555555559000-55555555a000 rw-p 00004000 08:02 7873545 /home/vm/Desktop/test
55555555a000-55555557b000 rw-p 00000000 00:00 0 [heap]
7ffff7a50000-7ffff7a54000 rw-p 00000000 00:00 0
7ffff7a54000-7ffff7a62000 r--p 00000000 08:02 3152581 /usr/lib/x86_64-linux-gnu/libm.so.6
7ffff7a62000-7ffff7ade000 r-xp 0000e000 08:02 3152581 /usr/lib/x86_64-linux-gnu/libm.so.6
7ffff7ade000-7ffff7b39000 r--p 0008a000 08:02 3152581 /usr/lib/x86_64-linux-gnu/libm.so.6
7ffff7b39000-7ffff7b3a000 r--p 000e4000 08:02 3152581 /usr/lib/x86_64-linux-gnu/libm.so.6
7ffff7b3a000-7ffff7b3b000 rw-p 000e5000 08:02 3152581 /usr/lib/x86_64-linux-gnu/libm.so.6
7ffff7b3b000-7ffff7b63000 r--p 00000000 08:02 3151930 /usr/lib/x86_64-linux-gnu/libc.so.6
7ffff7b63000-7ffff7cf8000 r-xp 00028000 08:02 3151930 /usr/lib/x86_64-linux-gnu/libc.so.6
7ffff7cf8000-7ffff7d50000 r--p 001bd000 08:02 3151930 /usr/lib/x86_64-linux-gnu/libc.so.6
7ffff7d50000-7ffff7d54000 r--p 00214000 08:02 3151930 /usr/lib/x86_64-linux-gnu/libc.so.6
7ffff7d54000-7ffff7d56000 rw-p 00218000 08:02 3151930 /usr/lib/x86_64-linux-gnu/libc.so.6
7ffff7d56000-7ffff7d63000 rw-p 00000000 00:00 0
7ffff7d63000-7ffff7d66000 r--p 00000000 08:02 3145850 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff7d66000-7ffff7d7d000 r-xp 00003000 08:02 3145850 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff7d7d000-7ffff7d81000 r--p 0001a000 08:02 3145850 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff7d81000-7ffff7d82000 r--p 0001d000 08:02 3145850 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff7d82000-7ffff7d83000 rw-p 0001e000 08:02 3145850 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff7d83000-7ffff7e1d000 r--p 00000000 08:02 3145846 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
7ffff7e1d000-7ffff7f2d000 r-xp 0009a000 08:02 3145846 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
7ffff7f2d000-7ffff7f9c000 r--p 001aa000 08:02 3145846 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
7ffff7f9c000-7ffff7fa7000 r--p 00218000 08:02 3145846 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
7ffff7fa7000-7ffff7faa000 rw-p 00223000 08:02 3145846 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
7ffff7faa000-7ffff7fad000 rw-p 00000000 00:00 0
7ffff7fbb000-7ffff7fbd000 rw-p 00000000 00:00 0
7ffff7fbd000-7ffff7fc1000 r--p 00000000 00:00 0 [vvar]
7ffff7fc1000-7ffff7fc3000 r-xp 00000000 00:00 0 [vdso]
7ffff7fc3000-7ffff7fc5000 r--p 00000000 08:02 3151595 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7ffff7fc5000-7ffff7fef000 r-xp 00002000 08:02 3151595 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7ffff7fef000-7ffff7ffa000 r--p 0002c000 08:02 3151595 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7ffff7ffb000-7ffff7ffd000 r--p 00037000 08:02 3151595 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7ffff7ffd000-7ffff7fff000 rw-p 00039000 08:02 3151595 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7ffffffde000-7ffffffff000 rw-p 00000000 00:00 0 [stack]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
Below is from my understanding, but I'm not sure if it's correct:
text: 555555556000-555555557000
data: 555555559000-55555555a000
bss: where???
heap: 55555555a000-55555557b000
memory mapping: Is 7ffff7a54000-7ffff7fff000 correct? or should i exclude [vvar] and [vdso]
stack: 7ffffffde000-7ffffffff000
And what are 555555554000-555555556000, 555555557000-555555558000, 555555558000-555555559000 ?
I have read many posts explaining the proc maps, but still feel so confused.
I am doing some end to end testing using SIPP on RHEL 4.2. Both my client and server machiens are running RHEL 4.2.
When I try to issue the command :
sipp -t tn -sn uac <server_vip> -i <client_ip> -m 10
on the client and :
sipp -t tn -sn uas -i 0.0.0.0 -m 10
on the server, all works well ,ie, TCP SIP works fine on port 5060. However, as soon as I remove the -t tn flag and switch to UDP, the server core dumps and produces something like this :
Warning: open file limit > FD_SETSIZE; limiting max. # of open files to FD_SETSIZE = 1024
009fa000-00a0d000 r-xp 00000000 08:02 54074376 /lib/libz.so.1.2.3
00a0d000-00a0e000 rw-p 00012000 08:02 54074376 /lib/libz.so.1.2.3
00b86000-00bb0000 r-xp 00000000 08:02 51782250 /usr/lib/libpcap.so.0.9.8
00bb0000-00bb1000 rw-p 00029000 08:02 51782250 /usr/lib/libpcap.so.0.9.8
00bb1000-00bb2000 rw-p 00bb1000 00:00 0
00dfb000-00dfd000 r-xp 00000000 08:02 51722595 /lib/libcom_err.so.2.1
00dfd000-00dfe000 rw-p 00001000 08:02 51722595 /lib/libcom_err.so.2.1
023c0000-023e1000 r-xp 00000000 08:02 51722603 /lib/libncurses.so.5.6
023e1000-023e2000 rw-p 00020000 08:02 51722603 /lib/libncurses.so.5.6
077e2000-0787f000 r-xp 00000000 08:02 51722596 /usr/lib/libkrb5.so.3.3
0787f000-07882000 rw-p 0009c000 08:02 51722596 /usr/lib/libkrb5.so.3.3
079ea000-07b21000 r-xp 00000000 08:02 51722598 /lib/libcrypto.so.0.9.8g
07b21000-07b35000 rw-p 00136000 08:02 51722598 /lib/libcrypto.so.0.9.8g
07b35000-07b38000 rw-p 07b35000 00:00 0
07b3a000-07b81000 r-xp 00000000 08:02 51722599 /lib/libssl.so.0.9.8g
07b81000-07b85000 rw-p 00046000 08:02 51722599 /lib/libssl.so.0.9.8g
07ccf000-07db6000 r-xp 00000000 08:02 60143853 /usr/lib/libstdc++.so.6.0.10
07db6000-07dba000 r--p 000e6000 08:02 60143853 /usr/lib/libstdc++.so.6.0.10
07dba000-07dbc000 rw-p 000ea000 08:02 60143853 /usr/lib/libstdc++.so.6.0.10
07dbc000-07dc1000 rw-p 07dbc000 00:00 0
07ddc000-07df2000 r-xp 00000000 08:02 54763893 /lib/libtinfo.so.5.6
07df2000-07df5000 rw-p 00015000 08:02 54763893 /lib/libtinfo.so.5.6
08048000-0809c000 r-xp 00000000 08:02 50347877 /usr/bin/sipp
0809c000-0809e000 rw-p 00053000 08:02 50347877 /usr/bin/sipp
0809e000-081f3000 rw-p 0809e000 00:00 0
086bf000-086fb000 rw-p 086bf000 00:00 0 [heap]
76cb4000-76cb5000 ---p 76cb4000 00:00 0
76cb5000-776b5000 rw-p 76cb5000 00:00 0
776b5000-776b6000 ---p 776b5000 00:00 0
776b6000-780bc000 rw-p 776b6000 00:00 0
7faba000-7facf000 rw-p 7ffeb000 00:00 0 [stack]
Aborted (core dumped)
I am running sipp-3.3. I am unsure what to make of this. By the way, my netstat shows that my server is listening to port 5060 for both tcp and udp traffic, so that rules out one problem!
Any suggestions?
Since we are dealing with an opened file descriptors limit, you might want to
ulimit -n 4096
before starting your sipp server/clients.
I try install netbeans 7.4 for html5 and php develop version on Linux Mint 15 Olivia.But installer throw error wthi next message:
* Error in
`/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200': double free or
corruption (out): 0x089f5720 *
======= Backtrace: ========= /lib/i386-linux-gnu/libc.so.6(+0x767e2)[0xb765d7e2]
/lib/i386-linux-gnu/libc.so.6(+0x77530)[0xb765e530]
/lib/i386-linux-gnu/libz.so.1(+0xd8fb)[0xb77a88fb]
/lib/i386-linux-gnu/libz.so.1(deflateEnd+0x3c)[0xb77a01dc]
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200[0x8057911]
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200[0x8057ad6]
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200[0x804eee0]
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200[0x8058adc]
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200[0x8048f87]
/lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0xb7600935]
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200[0x8048fad]
======= Memory map: ======== 08048000-0805d000 r-xp 00000000 08:08 526424 /usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200
0805d000-0805e000 r--p 00015000 08:08 526424
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200 0805e000-0805f000
rw-p 00016000 08:08 526424
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/unpack200 0805f000-08060000
rw-p 00000000 00:00 0 089ac000-08a16000 rw-p 00000000 00:00 0
[heap] b75ac000-b75c7000 r-xp 00000000 08:01 393963
/lib/i386-linux-gnu/libgcc_s.so.1 b75c7000-b75c8000 r--p 0001a000
08:01 393963 /lib/i386-linux-gnu/libgcc_s.so.1 b75c8000-b75c9000
rw-p 0001b000 08:01 393963 /lib/i386-linux-gnu/libgcc_s.so.1
b75e5000-b75e7000 rw-p 00000000 00:00 0 b75e7000-b7795000 r-xp
00000000 08:01 397441 /lib/i386-linux-gnu/libc-2.17.so
b7795000-b7797000 r--p 001ae000 08:01 397441
/lib/i386-linux-gnu/libc-2.17.so b7797000-b7798000 rw-p 001b0000 08:01
397441 /lib/i386-linux-gnu/libc-2.17.so b7798000-b779b000 rw-p
00000000 00:00 0 b779b000-b77b2000 r-xp 00000000 08:01 394091
/lib/i386-linux-gnu/libz.so.1.2.7 b77b2000-b77b3000 r--p 00016000
08:01 394091 /lib/i386-linux-gnu/libz.so.1.2.7 b77b3000-b77b4000
rw-p 00017000 08:01 394091 /lib/i386-linux-gnu/libz.so.1.2.7
b77cd000-b77d2000 rw-p 00000000 00:00 0 b77d2000-b77d3000 r-xp
00000000 00:00 0 [vdso] b77d3000-b77f3000 r-xp 00000000 08:01
397442 /lib/i386-linux-gnu/ld-2.17.so b77f3000-b77f4000 r--p
0001f000 08:01 397442 /lib/i386-linux-gnu/ld-2.17.so
b77f4000-b77f5000 rw-p 00020000 08:01 397442
/lib/i386-linux-gnu/ld-2.17.so bfa28000-bfa49000 rw-p 00000000 00:00 0
[stack]
If I call clGetPlatformIDs and directly after it SDL_Quit(), the program crashes (segfault). The OpenGL version doesn't seem to matter at all (tried 2.1, 3.1, 3.2, 3.3). The operating system is Fedora 18, fully updated. I have installed the fglrx drivers.
The problem doesn't seem to be SDL-only; GLFW had a very similar crash on glfwTerminate().
GLFW didn't tell me anything about the crash, except that it was a segfault. But luckily, SDL gives a bit more information:
*** glibc detected *** bin/Debug/voxel renderer: double free or corruption (fasttop): 0x0000000001086220 ***
======= Backtrace: =========
/lib64/libc.so.6[0x322c87ca8e]
/usr/local/lib/libSDL2-2.0.so.0(+0xb0a56)[0x7f256e97ba56]
/usr/local/lib/libSDL2-2.0.so.0(SDL_VideoQuit+0x6e)[0x7f256e960d4e]
/usr/local/lib/libSDL2-2.0.so.0(SDL_QuitSubSystem+0x18d)[0x7f256e8daded]
/usr/local/lib/libSDL2-2.0.so.0(SDL_Quit+0x18)[0x7f256e8daf18]
/usr/local/lib/libSDL2-2.0.so.0(+0x10d5f)[0x7f256e8dbd5f]
/lib64/libpthread.so.0[0x322d00f000]
======= Memory map: ========
00400000-00408000 r-xp 00000000 fd:02 13762941 /home/julius/Ohjelmointi/Raytracer/bin/Debug/voxel renderer
00607000-00608000 r--p 00007000 fd:02 13762941 /home/julius/Ohjelmointi/Raytracer/bin/Debug/voxel renderer
00608000-00609000 rw-p 00008000 fd:02 13762941 /home/julius/Ohjelmointi/Raytracer/bin/Debug/voxel renderer
01083000-028e5000 rw-p 00000000 00:00 0 [heap]
322c400000-322c420000 r-xp 00000000 fd:01 669659 /usr/lib64/ld-2.16.so
322c620000-322c621000 r--p 00020000 fd:01 669659 /usr/lib64/ld-2.16.so
322c621000-322c622000 rw-p 00021000 fd:01 669659 /usr/lib64/ld-2.16.so
322c622000-322c623000 rw-p 00000000 00:00 0
322c800000-322c9ad000 r-xp 00000000 fd:01 669660 /usr/lib64/libc-2.16.so
322c9ad000-322cbad000 ---p 001ad000 fd:01 669660 /usr/lib64/libc-2.16.so
322cbad000-322cbb1000 r--p 001ad000 fd:01 669660 /usr/lib64/libc-2.16.so
322cbb1000-322cbb3000 rw-p 001b1000 fd:01 669660 /usr/lib64/libc-2.16.so
322cbb3000-322cbb8000 rw-p 00000000 00:00 0
322cc00000-322cc03000 r-xp 00000000 fd:01 669661 /usr/lib64/libdl-2.16.so
322cc03000-322ce02000 ---p 00003000 fd:01 669661 /usr/lib64/libdl-2.16.so
322ce02000-322ce03000 r--p 00002000 fd:01 669661 /usr/lib64/libdl-2.16.so
322ce03000-322ce04000 rw-p 00003000 fd:01 669661 /usr/lib64/libdl-2.16.so
322d000000-322d016000 r-xp 00000000 fd:01 669662 /usr/lib64/libpthread-2.16.so
322d016000-322d216000 ---p 00016000 fd:01 669662 /usr/lib64/libpthread-2.16.so
322d216000-322d217000 r--p 00016000 fd:01 669662 /usr/lib64/libpthread-2.16.so
322d217000-322d218000 rw-p 00017000 fd:01 669662 /usr/lib64/libpthread-2.16.so
322d218000-322d21c000 rw-p 00000000 00:00 0
322d400000-322d407000 r-xp 00000000 fd:01 669663 /usr/lib64/librt-2.16.so
322d407000-322d606000 ---p 00007000 fd:01 669663 /usr/lib64/librt-2.16.so
322d606000-322d607000 r--p 00006000 fd:01 669663 /usr/lib64/librt-2.16.so
322d607000-322d608000 rw-p 00007000 fd:01 669663 /usr/lib64/librt-2.16.so
322dc00000-322dd00000 r-xp 00000000 fd:01 663279 /usr/lib64/libm-2.16.so
322dd00000-322deff000 ---p 00100000 fd:01 663279 /usr/lib64/libm-2.16.so
322deff000-322df00000 r--p 000ff000 fd:01 663279 /usr/lib64/libm-2.16.so
322df00000-322df01000 rw-p 00100000 fd:01 663279 /usr/lib64/libm-2.16.so
322e800000-322e815000 r-xp 00000000 fd:01 669679 /usr/lib64/libgcc_s-4.7.2-20121109.so.1
322e815000-322ea14000 ---p 00015000 fd:01 669679 /usr/lib64/libgcc_s-4.7.2-20121109.so.1
322ea14000-322ea15000 r--p 00014000 fd:01 669679 /usr/lib64/libgcc_s-4.7.2-20121109.so.1
322ea15000-322ea16000 rw-p 00015000 fd:01 669679 /usr/lib64/libgcc_s-4.7.2-20121109.so.1
3230800000-32308e5000 r-xp 00000000 fd:01 669721 /usr/lib64/libstdc++.so.6.0.17
32308e5000-3230ae4000 ---p 000e5000 fd:01 669721 /usr/lib64/libstdc++.so.6.0.17
3230ae4000-3230aec000 r--p 000e4000 fd:01 669721 /usr/lib64/libstdc++.so.6.0.17
3230aec000-3230aee000 rw-p 000ec000 fd:01 669721 /usr/lib64/libstdc++.so.6.0.17
3230aee000-3230b03000 rw-p 00000000 00:00 0
3230c00000-3230d34000 r-xp 00000000 fd:01 669700 /usr/lib64/libX11.so.6.3.0
3230d34000-3230f34000 ---p 00134000 fd:01 669700 /usr/lib64/libX11.so.6.3.0
3230f34000-3230f35000 r--p 00134000 fd:01 669700 /usr/lib64/libX11.so.6.3.0
3230f35000-3230f3a000 rw-p 00135000 fd:01 669700 /usr/lib64/libX11.so.6.3.0
3231000000-3231002000 r-xp 00000000 fd:01 669698 /usr/lib64/libXau.so.6.0.0
3231002000-3231202000 ---p 00002000 fd:01 669698 /usr/lib64/libXau.so.6.0.0
3231202000-3231203000 r--p 00002000 fd:01 669698 /usr/lib64/libXau.so.6.0.0
3231203000-3231204000 rw-p 00003000 fd:01 669698 /usr/lib64/libXau.so.6.0.0
3231400000-323141d000 r-xp 00000000 fd:01 669699 /usr/lib64/libxcb.so.1.1.0
323141d000-323161c000 ---p 0001d000 fd:01 669699 /usr/lib64/libxcb.so.1.1.0
323161c000-323161d000 r--p 0001c000 fd:01 669699 /usr/lib64/libxcb.so.1.1.0
323161d000-323161e000 rw-p 0001d000 fd:01 669699 /usr/lib64/libxcb.so.1.1.0
3231c00000-3231c11000 r-xp 00000000 fd:01 669716 /usr/lib64/libXext.so.6.4.0
3231c11000-3231e10000 ---p 00011000 fd:01 669716 /usr/lib64/libXext.so.6.4.0
3231e10000-3231e11000 r--p 00010000 fd:01 669716 /usr/lib64/libXext.so.6.4.0
3231e11000-3231e12000 rw-p 00011000 fd:01 669716 /usr/lib64/libXext.so.6.4.0
3232c00000-3232c09000 r-xp 00000000 fd:01 669715 /usr/lib64/libXrender.so.1.3.0
3232c09000-3232e08000 ---p 00009000 fd:01 669715 /usr/lib64/libXrender.so.1.3.0
3232e08000-3232e09000 r--p 00008000 fd:01 669715 /usr/lib64/libXrender.so.1.3.0
3232e09000-3232e0a000 rw-p 00009000 fd:01 669715 /usr/lib64/libXrender.so.1.3.0
3233000000-3233002000 r-xp 00000000 fd:01 669729 /usr/lib64/libXinerama.so.1.0.0
3233002000-3233201000 ---p 00002000 fd:01 669729 /usr/lib64/libXinerama.so.1.0.0
3233201000-3233202000 r--p 00001000 fd:01 669729 /usr/lib64/libXinerama.so.1.0.0
3233202000-3233203000 rw-p 00002000 fd:01 669729 /usr/lib64/libXinerama.so.1.0.0
3233c00000-3233c09000 r-xp 00000000 fd:01 669731 /usr/lib64/libXrandr.so.2.2.0
3233c09000-3233e08000 ---p 00009000 fd:01 669731 /usr/lib64/libXrandr.so.2.2.0
3233e08000-3233e09000 r--p 00008000 fd:01 669731 /usr/lib64/libXrandr.so.2.2.0
3233e09000-3233e0a000 rw-p 00009000 fd:01 669731 /usr/lib64/libXrandr.so.2.2.0
3235800000-32358bf000 r-xp 00000000 fd:01 794670 /usr/lib64/catalyst/libGL.so.1.2
32358bf000-32359bf000 ---p 000bf000 fd:01 794670 /usr/lib64/catalyst/libGL.so.1.2
32359bf000-32359e6000 rwxp 000bf000 fd:01 794670 /usr/lib64/catalyst/libGL.so.1.2
32359e6000-3235a08000 rwxp 00000000 00:00 0
3235c00000-3235c0f000 r-xp 00000000 fd:01 794669 /usr/lib64/catalyst/libatiuki.so.1.0
3235c0f000-3235d0e000 ---p 0000f000 fd:01 794669 /usr/lib64/catalyst/libatiuki.so.1.0
3235d0e000-3235d1a000 rw-p 0000e000 fd:01 794669 /usr/lib64/catalyst/libatiuki.so.1.0
323f600000-323f604000 r-xp 00000000 fd:01 669766 /usr/lib64/libXxf86vm.so.1.0.0
323f604000-323f804000 ---p 00004000 fd:01 669766 /usr/lib64/libXxf86vm.so.1.0.0
323f804000-323f805000 r--p 00004000 fd:01 669766 /usr/lib64/libXxf86vm.so.1.0.0
323f805000-323f806000 rw-p 00005000 fd:01 669766 /usr/lib64/libXxf86vm.so.1.0.0
3a2e200000-3a2e276000 r-xp 00000000 fd:01 655591 /usr/lib64/libGLEW.so.1.7.0
3a2e276000-3a2e475000 ---p 00076000 fd:01 655591 /usr/lib64/libGLEW.so.1.7.0
3a2e475000-3a2e47b000 r--p 00075000 fd:01 655591 /usr/lib64/libGLEW.so.1.7.0
3a2e47b000-3a2e47c000 rw-p 0007b000 fd:01 655591 /usr/lib64/libGLEW.so.1.7.0
3a2e47c000-3a2e480000 rw-p 00000000 00:00 0
3c2ce00000-3c2ce7d000 r-xp 00000000 fd:01 663378 /usr/lib64/libGLU.so.1.3.1
3c2ce7d000-3c2d07c000 ---p 0007d000 fd:01 663378 /usr/lib64/libGLU.so.1.3.1
3c2d07c000-3c2d07e000 r--p 0007c000 fd:01 663378 /usr/lib64/libGLU.so.1.3.1
3c2d07e000-3c2d07f000 rw-p 0007e000 fd:01 663378 /usr/lib64/libGLU.so.1.3.1
7f2564000000-7f25644c2000 rw-p 00000000 00:00 0
7f25644c2000-7f2568000000 ---p 00000000 00:00 0
7f25688c3000-7f25688c4000 ---p 00000000 00:00 0
7f25688c4000-7f2568904000 rw-p 00000000 00:00 0
7f2568904000-7f2568905000 rw-s 1cee5000 00:05 19449 /dev/ati/card0
7f2568905000-7f2568966000 rw-s 1cee4000 00:05 19449 /dev/ati/card0
7f2568966000-7f2568986000 rw-s 00004000 00:05 19449 /dev/ati/card0
7f2568986000-7f2568988000 rw-s 00002000 00:05 19449 /dev/ati/card0
7f2568988000-7f256ab96000 r-xp 00000000 fd:01 926157 /opt/AMDAPP/lib/x86_64/libamdocl64.so
7f256ab96000-7f256ad96000 ---p 0220e000 fd:01 926157 /opt/AMDAPP/lib/x86_64/libamdocl64.so
7f256ad96000-7f256afa9000 rw-p 0220e000 fd:01 926157 /opt/AMDAPP/lib/x86_64/libamdocl64.so
7f256afa9000-7f256b0bd000 rw-p 00000000 00:00 0
7f256b2bf000-7f256b308000 rw-p 00000000 00:00 0
7f256b308000-7f256b348000 rw-s 00027000 00:05 19449 /dev/ati/card0
7f256b348000-7f256ba48000 rw-s 00006000 00:05 19449 /dev/ati/card0
7f256ba82000-7f256ba89000 r--s 00000000 fd:01 791548 /usr/lib64/gconv/gconv-modules.cache
7f256ba89000-7f256bd09000 rw-p 00000000 00:00 0
7f256bd09000-7f256bd5a000 r-xp 00000000 fd:01 794075 /usr/lib64/catalyst/libatiadlxx.so
7f256bd5a000-7f256be5a000 ---p 00051000 fd:01 794075 /usr/lib64/catalyst/libatiadlxx.so
7f256be5a000-7f256be66000 rw-p 00051000 fd:01 794075 /usr/lib64/catalyst/libatiadlxx.so
7f256be66000-7f256be76000 rw-p 00000000 00:00 0
7f256be94000-7f256be95000 rw-s 00005000 00:05 19449 /dev/ati/card0
7f256be95000-7f256beb5000 rw-s 00004000 00:05 19449 /dev/ati/card0
7f256beb5000-7f256db10000 r-xp 00000000 fd:01 794085 /usr/lib64/dri/fglrx_dri.so
7f256db10000-7f256dc10000 ---p 01c5b000 fd:01 794085 /usr/lib64/dri/fglrx_dri.so
7f256dc10000-7f256dd76000 rwxp 01c5b000 fd:01 794085 /usr/lib64/dri/fglrx_dri.so
7f256dd76000-7f256de9a000 rwxp 00000000 00:00 0
7f256de9a000-7f256de9b000 ---p 00000000 00:00 0
7f256de9b000-7f256e6a5000 rw-p 00000000 00:00 0 [stack:27487]
7f256e6a5000-7f256e6ab000 r-xp 00000000 fd:01 926159 /opt/AMDAPP/lib/x86_64/libOpenCL.so.1
7f256e6ab000-7f256e8aa000 ---p 00006000 fd:01 926159 /opt/AMDAPP/lib/x86_64/libOpenCL.so.1
7f256e8aa000-7f256e8ab000 rw-p 00005000 fd:01 926159 /opt/AMDAPP/lib/x86_64/libOpenCL.so.1
7f256e8ab000-7f256e8ad000 rw-p 00000000 00:00 0
7f256e8b5000-7f256e8b6000 rw-p 00000000 00:00 0
7f256e8c8000-7f256e8c9000 rw-p 00000000 00:00 0
7f256e8c9000-7f256e8cb000 rw-s 00002000 00:05 19449 /dev/ati/card0
7f256e8cb000-7f256e9a7000 r-xp 00000000 fd:01 656113 /usr/local/lib/libSDL2-2.0.so.0.0.0
7f256e9a7000-7f256eba7000 ---p 000dc000 fd:01 656113 /usr/local/lib/libSDL2-2.0.so.0.0.0
7f256eba7000-7f256ebaa000 r--p 000dc000 fd:01 656113 /usr/local/lib/libSDL2-2.0.so.0.0.0
7f256ebaa000-7f256ebb5000 rw-p 000df000 fd:01 656113 /usr/local/lib/libSDL2-2.0.so.0.0.0
7f256ebb5000-7f256ebb9000 rw-p 00000000 00:00 0
7ffff46c4000-7ffff46e5000 rw-p 00000000 00:00 0 [stack]
7ffff47ff000-7ffff4800000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
Still, I couldn't find the exact reason as to why it should crash. OpenCL, OpenGL and SDL all work as expected before the crash.
So, does anyone know what could possibly cause this kind of crashes with OpenCL?
While running a binary on linux62, the binary took heavy amount of memory.
This particularly happening after it loads java. The same thing is running fine with less memory on earlier versions of Linux.
So i want to know, is there any tools that can list the loaded libraries and their memory size, of a running binary.
I didn't get any utilities to do this, on a binary that is currently running.
ldd and objdump are taken the details only from the object, not from the process that is running.
Since the java library is loaded only after my program is up and running(loading java is optional), i need a tool to list out the set of libraries with their memory details from the running binary. So that i can understand which library takes more memory and i can debug further.
Thanks
Thanga
# pidof init
1
# cat /proc/1/maps
00400000-004d2000 r-xp 00000000 fd:02 9790 /bin/systemd
006d2000-006df000 r--p 000d2000 fd:02 9790 /bin/systemd
006df000-006e0000 rw-p 000df000 fd:02 9790 /bin/systemd
006e0000-006e1000 rw-p 00000000 00:00 0
008df000-008e2000 rw-p 000df000 fd:02 9790 /bin/systemd
0203d000-036b1000 rw-p 00000000 00:00 0 [heap]
3c0c200000-3c0c222000 r-xp 00000000 fd:02 11536 /lib64/ld-2.14.90.so
3c0c421000-3c0c422000 r--p 00021000 fd:02 11536 /lib64/ld-2.14.90.so
3c0c422000-3c0c423000 rw-p 00022000 fd:02 11536 /lib64/ld-2.14.90.so
3c0c423000-3c0c424000 rw-p 00000000 00:00 0
3c0c600000-3c0c7ad000 r-xp 00000000 fd:02 12080 /lib64/libc-2.14.90.so
3c0c7ad000-3c0c9ad000 ---p 001ad000 fd:02 12080 /lib64/libc-2.14.90.so
3c0c9ad000-3c0c9b1000 r--p 001ad000 fd:02 12080 /lib64/libc-2.14.90.so
3c0c9b1000-3c0c9b3000 rw-p 001b1000 fd:02 12080 /lib64/libc-2.14.90.so
3c0c9b3000-3c0c9b8000 rw-p 00000000 00:00 0
3c0ce00000-3c0ce02000 r-xp 00000000 fd:02 10569 /lib64/libdl-2.14.90.so
3c0ce02000-3c0d002000 ---p 00002000 fd:02 10569 /lib64/libdl-2.14.90.so
3c0d002000-3c0d003000 r--p 00002000 fd:02 10569 /lib64/libdl-2.14.90.so
3c0d003000-3c0d004000 rw-p 00003000 fd:02 10569 /lib64/libdl-2.14.90.so
3c0d200000-3c0d217000 r-xp 00000000 fd:02 6336 /lib64/libpthread-2.14.90.so
3c0d217000-3c0d416000 ---p 00017000 fd:02 6336 /lib64/libpthread-2.14.90.so
3c0d416000-3c0d417000 r--p 00016000 fd:02 6336 /lib64/libpthread-2.14.90.so
3c0d417000-3c0d418000 rw-p 00017000 fd:02 6336 /lib64/libpthread-2.14.90.so
3c0d418000-3c0d41c000 rw-p 00000000 00:00 0
3c0da00000-3c0da07000 r-xp 00000000 fd:02 22071 /lib64/librt-2.14.90.so
3c0da07000-3c0dc06000 ---p 00007000 fd:02 22071 /lib64/librt-2.14.90.so
3c0dc06000-3c0dc07000 r--p 00006000 fd:02 22071 /lib64/librt-2.14.90.so
3c0dc07000-3c0dc08000 rw-p 00007000 fd:02 22071 /lib64/librt-2.14.90.so
3c0de00000-3c0de15000 r-xp 00000000 fd:02 16692 /lib64/libgcc_s-4.6.3-20120306.so.1
3c0de15000-3c0e014000 ---p 00015000 fd:02 16692 /lib64/libgcc_s-4.6.3-20120306.so.1
3c0e014000-3c0e015000 rw-p 00014000 fd:02 16692 /lib64/libgcc_s-4.6.3-20120306.so.1
3c0e200000-3c0e21d000 r-xp 00000000 fd:02 28104 /lib64/libselinux.so.1
3c0e21d000-3c0e41d000 ---p 0001d000 fd:02 28104 /lib64/libselinux.so.1
3c0e41d000-3c0e41e000 r--p 0001d000 fd:02 28104 /lib64/libselinux.so.1
3c0e41e000-3c0e41f000 rw-p 0001e000 fd:02 28104 /lib64/libselinux.so.1
3c0e41f000-3c0e420000 rw-p 00000000 00:00 0
3c0ee00000-3c0ee04000 r-xp 00000000 fd:02 63328 /lib64/libcap.so.2.22
3c0ee04000-3c0f003000 ---p 00004000 fd:02 63328 /lib64/libcap.so.2.22
3c0f003000-3c0f004000 rw-p 00003000 fd:02 63328 /lib64/libcap.so.2.22
3c12600000-3c12643000 r-xp 00000000 fd:02 52994 /lib64/libdbus-1.so.3.5.6
3c12643000-3c12842000 ---p 00043000 fd:02 52994 /lib64/libdbus-1.so.3.5.6
3c12842000-3c12843000 r--p 00042000 fd:02 52994 /lib64/libdbus-1.so.3.5.6
3c12843000-3c12844000 rw-p 00043000 fd:02 52994 /lib64/libdbus-1.so.3.5.6
3c1be00000-3c1be17000 r-xp 00000000 fd:02 57102 /lib64/libaudit.so.1.0.0
3c1be17000-3c1c017000 ---p 00017000 fd:02 57102 /lib64/libaudit.so.1.0.0
3c1c017000-3c1c018000 r--p 00017000 fd:02 57102 /lib64/libaudit.so.1.0.0
3c1c018000-3c1c019000 rw-p 00018000 fd:02 57102 /lib64/libaudit.so.1.0.0
3c1c019000-3c1c01d000 rw-p 00000000 00:00 0
3c1c600000-3c1c604000 r-xp 00000000 fd:02 13766 /lib64/libattr.so.1.1.0
3c1c604000-3c1c803000 ---p 00004000 fd:02 13766 /lib64/libattr.so.1.1.0
3c1c803000-3c1c804000 rw-p 00003000 fd:02 13766 /lib64/libattr.so.1.1.0
3c1d200000-3c1d20d000 r-xp 00000000 fd:02 76182 /lib64/libpam.so.0.83.1
3c1d20d000-3c1d40c000 ---p 0000d000 fd:02 76182 /lib64/libpam.so.0.83.1
3c1d40c000-3c1d40d000 r--p 0000c000 fd:02 76182 /lib64/libpam.so.0.83.1
3c1d40d000-3c1d40e000 rw-p 0000d000 fd:02 76182 /lib64/libpam.so.0.83.1
3c1d600000-3c1d617000 r-xp 00000000 fd:02 18152 /lib64/libnsl-2.14.90.so
3c1d617000-3c1d816000 ---p 00017000 fd:02 18152 /lib64/libnsl-2.14.90.so
3c1d816000-3c1d817000 r--p 00016000 fd:02 18152 /lib64/libnsl-2.14.90.so
3c1d817000-3c1d818000 rw-p 00017000 fd:02 18152 /lib64/libnsl-2.14.90.so
3c1d818000-3c1d81a000 rw-p 00000000 00:00 0
3c1ea00000-3c1ea0e000 r-xp 00000000 fd:02 14124 /lib64/libudev.so.0.12.0
3c1ea0e000-3c1ec0e000 ---p 0000e000 fd:02 14124 /lib64/libudev.so.0.12.0
3c1ec0e000-3c1ec0f000 r--p 0000e000 fd:02 14124 /lib64/libudev.so.0.12.0
3c1ec0f000-3c1ec10000 rw-p 0000f000 fd:02 14124 /lib64/libudev.so.0.12.0
3c27000000-3c27008000 r-xp 00000000 fd:02 76173 /lib64/libwrap.so.0.7.6
3c27008000-3c27208000 ---p 00008000 fd:02 76173 /lib64/libwrap.so.0.7.6
3c27208000-3c27209000 rw-p 00008000 fd:02 76173 /lib64/libwrap.so.0.7.6
3c27209000-3c2720a000 rw-p 00000000 00:00 0
7febd3c96000-7febd3ca2000 r-xp 00000000 fd:02 45355 /lib64/libnss_files-2.14.90.so
7febd3ca2000-7febd3ea1000 ---p 0000c000 fd:02 45355 /lib64/libnss_files-2.14.90.so
7febd3ea1000-7febd3ea2000 r--p 0000b000 fd:02 45355 /lib64/libnss_files-2.14.90.so
7febd3ea2000-7febd3ea3000 rw-p 0000c000 fd:02 45355 /lib64/libnss_files-2.14.90.so
7febd3ea3000-7febd403c000 rw-p 00000000 00:00 0
7febd40ca000-7febd40d2000 rw-p 00000000 00:00 0
7febd40f9000-7febd40fc000 rw-p 00000000 00:00 0
7fffce1cd000-7fffce1ee000 rw-p 00000000 00:00 0 [stack]
7fffce1ff000-7fffce200000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]