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.
3075 Discussions

Still get exceptions when running several encode instances

OTorg
New Contributor III
368 Views

This topic is a continuation of https://software.intel.com/en-us/forums/topic/475624 topic.

If you run multiple encoding sessions in parallel, you'll get an exception at libmfx*.dll after some time.

Below is a description of test with IMSDK 1.11 (w_inde_2015.0.011.exe), x86, MFX_IMPL_SOFTWARE, run under WinDbg.

 

(b88.f68): Access violation - code c0000005 (first chance)
eax=fffffc80 ebx=00000000 ecx=00000000 edx=00000000 esi=00453d18 edi=00000000
eip=6bf154aa esp=00d4f898 ebp=00d4f90c iopl=0         nv up ei pl nz na pe nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010206
libmfxsw32!MFXVideoVPP_GetVPPStat+0x20489a:
6bf154aa 0381c0000000    add     eax,dword ptr [ecx+0C0h] ds:002b:000000c0=????????

Code around it (offset 0x002154AA from libmfxsw32.dll begin):

6bf15476 6a00            push    0
6bf15478 6a00            push    0
6bf1547a ff75fc          push    dword ptr [ebp-4]
6bf1547d 0fbec9          movsx   ecx,cl
6bf15480 8bc7            mov     eax,edi
6bf15482 83e003          and     eax,3
6bf15485 51              push    ecx
6bf15486 50              push    eax
6bf15487 8bc3            mov     eax,ebx
6bf15489 83e003          and     eax,3
6bf1548c 50              push    eax
6bf1548d 8b45d8          mov     eax,dword ptr [ebp-28h]
6bf15490 0fbe1401        movsx   edx,byte ptr [ecx+eax]
6bf15494 8b45f4          mov     eax,dword ptr [ebp-0Ch]
6bf15497 8b0c8e          mov     ecx,dword ptr [esi+ecx*4]
6bf1549a 8b806c030000    mov     eax,dword ptr [eax+36Ch]
6bf154a0 c1ff02          sar     edi,2
6bf154a3 0faf7df0        imul    edi,dword ptr [ebp-10h]
6bf154a7 8b0490          mov     eax,dword ptr [eax+edx*4]
6bf154aa 0381c0000000    add     eax,dword ptr [ecx+0C0h] ds:002b:000000c0=???????? ******** it is here ********
6bf154b0 037df8          add     edi,dword ptr [ebp-8]
6bf154b3 8b55f0          mov     edx,dword ptr [ebp-10h]
6bf154b6 6a10            push    10h
6bf154b8 ff7510          push    dword ptr [ebp+10h]
6bf154bb 8d0c38          lea     ecx,[eax+edi]
6bf154be c1fb02          sar     ebx,2
6bf154c1 03cb            add     ecx,ebx
6bf154c3 e81860faff      call    libmfxsw32!MFXVideoVPP_GetVPPStat+0x1aa8d0 (6bebb4e0)
6bf154c8 83c428          add     esp,28h
6bf154cb 5f              pop     edi
6bf154cc 5e              pop     esi
6bf154cd 5b              pop     ebx
6bf154ce 8be5            mov     esp,ebp
6bf154d0 5d              pop     ebp
6bf154d1 c3              ret
6bf154d2 ff35dce3c06c    push    dword ptr [libmfxsw32!MFXVideoVPP_GetVPPStat+0xefd7cc (6cc0e3dc)]
6bf154d8 8b4dec          mov     ecx,dword ptr [ebp-14h]
6bf154db ff35d8e3c06c    push    dword ptr [libmfxsw32!MFXVideoVPP_GetVPPStat+0xefd7c8 (6cc0e3d8)]
6bf154e1 8a01            mov     al,byte ptr [ecx]
6bf154e3 8b4d08          mov     ecx,dword ptr [ebp+8]
6bf154e6 8b75e0          mov     esi,dword ptr [ebp-20h]
6bf154e9 0fbf5902        movsx   ebx,word ptr [ecx+2]
6bf154ed 0fbf11          movsx   edx,word ptr [ecx]
6bf154f0 0fbec8          movsx   ecx,al
6bf154f3 6a00            push    0
6bf154f5 6a00            push    0

Call stack:

 # ChildEBP RetAddr  Args to Child              
00 00d4f90c 6bf01376 068ae260 068c7760 0047a280 libmfxsw32!MFXVideoVPP_GetVPPStat+0x20489a
01 00d4fb40 6bf0448b 00000001 6bf0448b 000003b7 libmfxsw32!MFXVideoVPP_GetVPPStat+0x1f0766
02 00d4fb70 6bd34bd7 02d40020 00000002 00000002 libmfxsw32!MFXVideoVPP_GetVPPStat+0x1f387b
03 00d4fbd4 6bd35f1f 081b15c8 081f6d48 003d8bb0 libmfxsw32!MFXVideoVPP_GetVPPStat+0x23fc7
04 00d4fc34 6bd1be9c 02d40020 081f7940 00000003 libmfxsw32!MFXVideoVPP_GetVPPStat+0x2530f
05 00d4fd6c 6bf9cf72 003d8bb0 13a30729 00000000 libmfxsw32!MFXVideoVPP_GetVPPStat+0xb28c
06 00d4fda4 6bf9d09a 00000000 00d4fdbc 766a338a libmfxsw32!MFXVideoVPP_GetVPPStat+0x28c362
07 00d4fdb0 766a338a 003e9018 00d4fdfc 77de9f72 libmfxsw32!MFXVideoVPP_GetVPPStat+0x28c48a
08 00d4fdbc 77de9f72 003e9018 745b4e68 00000000 kernel32!BaseThreadInitThunk+0x12
09 00d4fdfc 77de9f45 6bf9d01e 003e9018 00000000 ntdll!RtlInitializeExceptionChain+0x63
0a 00d4fe14 00000000 6bf9d01e 003e9018 00000000 ntdll!RtlInitializeExceptionChain+0x36

Similar exceptions occur when using hardware libmfx, etc.

 

So, Intel declares a high-grade product (including server roles), which is flatly inapplicable for professional usage.
This bug has been discovered (at least) 1.5 years ago, but Intel still not able to correct it.

To be continued...

0 Kudos
0 Replies
Reply