Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

metrics_monitor doesn't work in MSS 2017R2

Mindaugas_R_
Beginner
995 Views

Hello,

recently I have installed MSS 2017R2 on a new supermicro system X11SSV-M4F ( CPU: intel xeon E3-1585 v5, chipset: intel C236, OS CentOS 7.2.1511).

All works fine except metrics_monitor tool, which fails with this message: ERROR: Failed to subscribe for metrics, error code 1

And I can't find out what is wrong.

For example, I have another system running MSS 2017R2, it is intel NUC6i7KYK (mini pc) and here metrics_monitor runs fine. The graphics on both systems is the same Iris Pro 580.

Bellow you will find additional information:

[root@transcoder2 sample]# cat /etc/centos-release
CentOS Linux release 7.2.1511 (Core)

[root@transcoder2 sample]# uname -ar
Linux transcoder2 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

[root@transcoder2 sample]# lspci -nn -s 00:02.0
00:02.0 VGA compatible controller [0300]: Intel Corporation Device [8086:193a] (rev 09)

[root@transcoder2 sample]# lsmod | grep 'i915'
i915                 1325693  9
drm_ukmd_kms_helper   141060  1 i915
drm_ukmd              369649  3 i915,drm_ukmd_kms_helper
drm_ukmd_compat       109279  1 i915
i2c_algo_bit           13413  3 ast,igb,i915
video                  24400  1 i915
i2c_core               40582  11 ast,drm,igb,i915,i2c_i801,i2c_hid,ipmi_ssif,drm_kms_helper,i2c_algo_bit,drm_ukmd,drm_ukmd_kms_helper

[root@transcoder2 sample]# vainfo | grep -v unknown
error: can't connect to X server!
libva info: VA-API version 0.99.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.99 (libva 1.67.0.pre1)
vainfo: Driver version: 16.5.1.59511-ubit
vainfo: Supported profile and entrypoints
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileVP8Version0_3          : VAEntrypointEncSlice
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSlice
      VAProfileNone                   : VAEntrypointVideoProc

[root@transcoder2 sample]# ./run.sh
ERROR: Failed to subscribe for metrics, error code 1

It will be nice to receive some suggestions from an expert

Regards,

Mindaugas

 

 

0 Kudos
14 Replies
rasko_N_
Beginner
995 Views

Hello,

I have the same problem with the same proccessor (1585) but with E3-1275 no problems, works very well. Very strange, why anybody from Intel do not answer?

Regards,

Rashad

0 Kudos
rasko_N_
Beginner
995 Views

Dear all,

Problem solved! Please try to update or downgrade gcc and g++ to version 4.9 and problem will solved.

Rashad

 

 

0 Kudos
Mindaugas_R_
Beginner
995 Views

Hi Rashad,

glad to hear it. Could you give some more details, what have you changed step by step.

I have installed devtoolset-3 which includes gcc and g++ 4.9.2 and have recompiled metrics_monitor with that version but nothing have changed.

Regards,

Mindaugas

 

0 Kudos
rasko_N_
Beginner
995 Views

hi Mindaugas,

i`m using Ubuntu 16.04 LTS  with gcc and g++ 4.9 

Rashad

0 Kudos
rasko_N_
Beginner
995 Views

After upgraded gcc and g++ try to remove libdrm, libva and recompile again from /opt/intel/mediasdk/opensource/lib..

0 Kudos
rasko_N_
Beginner
995 Views

After reboot same problem again. Very strange :(

0 Kudos
Mark_L_Intel1
Moderator
995 Views

This is more like a software issue since the other people on the old platform got it.

https://software.intel.com/en-us/forums/intel-media-sdk/topic/540163#comment-1905526

Mark

0 Kudos
koby_s_
Beginner
995 Views

Hi
I am having a similar problem on an Intel(R) Xeon(R) CPU E3-1285L v4 @ 3.40GHz machine, OS: CentOS 7.2.1511.
Hardware acceleration (decoding/vpp/encoding) is working well. Metrics query always fails to subscribe.

On the other hand, it works perfectly fine on a newer machine: Intel(R) Xeon(R) CPU E3-1275 v5 @ 3.60GHz, OS: CentOS 7.2.1511.

It can't be a GCC version problem (at least not on CentOS 7.2.1511) since it's working on that OS.

Did someone made a progress and managed to fix that issue?

Thank you

Koby

0 Kudos
Mark_L_Intel1
Moderator
995 Views

Hi guys,

Any of you could try the following command to and post the log file?

[root@localhost _bin]# strace ./metrics_monitor

Mark

0 Kudos
benjamin_d_3
New Contributor I
995 Views

Hello, here is strace ./metrics_monitor:

[root@gputest2 _bin]# strace ./metrics_monitor
execve("./metrics_monitor", ["./metrics_monitor"], 0x7ffe9a633c20 /* 31 vars */) = 0
brk(NULL)                               = 0x1db7000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7ea2718000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=84042, ...}) = 0
mmap(NULL, 84042, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f7ea2703000
close(3)                                = 0
open("/lib64/tls/x86_64/libcttmetrics.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/lib64/tls/x86_64", 0x7ffc381c61f0) = -1 ENOENT (No such file or directory)
open("/lib64/tls/libcttmetrics.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/lib64/tls", {st_mode=S_IFDIR|0555, st_size=4096, ...}) = 0
open("/lib64/x86_64/libcttmetrics.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/lib64/x86_64", 0x7ffc381c61f0)   = -1 ENOENT (No such file or directory)
open("/lib64/libcttmetrics.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\r\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=14624, ...}) = 0
mmap(NULL, 2112176, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f7ea22f1000
mprotect(0x7f7ea22f4000, 2093056, PROT_NONE) = 0
mmap(0x7f7ea24f3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f7ea24f3000
close(3)                                = 0
open("/lib64/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\270\10\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1590720, ...}) = 0
mmap(NULL, 3699296, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f7ea1f69000
mprotect(0x7f7ea20e1000, 2097152, PROT_NONE) = 0
mmap(0x7f7ea22e1000, 49152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x178000) = 0x7f7ea22e1000
mmap(0x7f7ea22ed000, 12896, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f7ea22ed000
close(3)                                = 0
open("/lib64/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 W\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1169408, ...}) = 0
mmap(NULL, 3178728, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f7ea1c60000
mprotect(0x7f7ea1d68000, 2093056, PROT_NONE) = 0
mmap(0x7f7ea1f67000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x107000) = 0x7f7ea1f67000
close(3)                                = 0
open("/lib64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240*\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=92872, ...}) = 0
mmap(NULL, 2188336, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f7ea1a49000
mprotect(0x7f7ea1a5f000, 2093056, PROT_NONE) = 0
mmap(0x7f7ea1c5e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7f7ea1c5e000
close(3)                                = 0
open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \5\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2115824, ...}) = 0
mmap(NULL, 3955040, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f7ea1683000
mprotect(0x7f7ea1840000, 2093056, PROT_NONE) = 0
mmap(0x7f7ea1a3f000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1bc000) = 0x7f7ea1a3f000
mmap(0x7f7ea1a45000, 14688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f7ea1a45000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7ea2701000
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7ea26fe000
arch_prctl(ARCH_SET_FS, 0x7f7ea26fe740) = 0
mprotect(0x7f7ea1a3f000, 16384, PROT_READ) = 0
mprotect(0x7f7ea1c5e000, 4096, PROT_READ) = 0
mprotect(0x7f7ea1f67000, 4096, PROT_READ) = 0
mprotect(0x7f7ea22e1000, 40960, PROT_READ) = 0
mprotect(0x7f7ea24f3000, 4096, PROT_READ) = 0
mprotect(0x601000, 4096, PROT_READ)     = 0
mprotect(0x7f7ea271a000, 4096, PROT_READ) = 0
munmap(0x7f7ea2703000, 84042)           = 0
brk(NULL)                               = 0x1db7000
brk(0x1de9000)                          = 0x1de9000
rt_sigaction(SIGINT, {sa_handler=0x401020, sa_mask=[INT], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f7ea16b8990}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
getuid()                                = 0
open("/sys/bus/pci/devices", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
getdents(3, /* 23 entries */, 32768)    = 720
open("/sys/bus/pci/devices/0000:00:00.0/class", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "0x060000\n", 4096)             = 9
close(4)                                = 0
open("/sys/bus/pci/devices/0000:00:02.0/class", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "0x038000\n", 4096)             = 9
close(4)                                = 0
open("/sys/bus/pci/devices/0000:00:02.0/vendor", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "0x8086\n", 4096)               = 7
close(4)                                = 0
close(3)                                = 0
open("/sys/kernel/debug/dri/0/i915_ringstats", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/sys/kernel/debug/dri/128/i915_ringstats", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "render ring:0:-1:-1:-1:-1:-1\nbsd"..., 4096) = 152
read(3, "", 4096)                       = 0
close(3)                                = 0
open("/sys/class/drm/card0/gt_act_freq_mhz", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, "ERROR: Failed to subscribe for m"..., 53ERROR: Failed to subscribe for metrics, error code 1
) = 53
exit_group(1)                           = ?
+++ exited with 1 +++
0 Kudos
Mark_L_Intel1
Moderator
995 Views

Thanks so much,

We have found this problem and the solution will be available in the next release.

The problem is: 

("/sys/class/drm/card0/gt_act_freq_mhz") is not exist on Intel(R) Xeon(R) E3-1285 v4 , so the configuration failed.

As a work around before the new release, you can apply the attached patch to cttmetrics_sample.cpp and recompile it.

Mark

0 Kudos
benjamin_d_3
New Contributor I
995 Views

Thank you for the patch Mark.

Any idea when the MSS R3 will be released ? 

0 Kudos
Mindaugas_R_
Beginner
995 Views

Thank you very much for the patch, Mark. At least I can see the GPU load now.

0 Kudos
Mark_L_Intel1
Moderator
995 Views

Hi Benjamin,

I am glad to see the issue is fixed, Let me know if there is still a problem.

As far as I can see, it should be release quite soon, I can't tell you the exact date, but it should be within a month or two.

Mark

0 Kudos
Reply