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.

VPP then Encode speed slow ?

l_k_1
Beginner
418 Views

I get VPP then Encode slow situation in my code,

then I tried Intel Media SDK R2 example, Media SDK 2013 R2\samples\sample_encode, find the same thing 

Please help how should I set  parms in situations below :

1.  I add some code to test time:
#ifdef ENABLE_BENCHMARK
    LARGE_INTEGER tStart, tEnd;
    QueryPerformanceFrequency(&tStart);
    double freq = (double)tStart.QuadPart;
    QueryPerformanceCounter(&tStart);
#endif
#ifdef ENABLE_BENCHMARK
    QueryPerformanceCounter(&tEnd);
    double duration = ((double)tEnd.QuadPart - (double)tStart.QuadPart)  / freq;
    printf("\nExecution time: %3.2fs (%3.2ffps)\n", duration, frames/duration);
#endif

2. test results:
a.  -d3d h264 -i "d:\\samples\\out\\00000.track_4113.264_1920x1080.yuv" -o "d:\\samples\\out\\out_Intel__.264" -w 1920 -h 1080 -hw -dstw 1920 -dsth 1180

 Frame number: 614, Execution time: 65.42s (9.39fps)

b. -d3d h264 -i "d:\\samples\\out\\00000.track_4113.264_1920x1080.yuv" -o "d:\\samples\\out\\out_Intel__.264" -w 1920 -h 1080 -hw -dstw 2020 -dsth 1080

Frame number: 614 Execution time: 6.13s (100.21fps)

And It seem if out put width big then 1920, then speed will down significantly.

Please Give me some suggestions.

Regards,

LK

 

 

0 Kudos
4 Replies
Petter_L_Intel
Employee
418 Views

Hi LK,

I suspect the issue is that you are falling back on SW implementation of the encoder. Older generations of Intel processors did not support HW accelerated encode or resize beyond the 1920p resolution threshold (greater resolution content is instead processed using SW codec).

You should be able to verify if this is the case by looking at your CPU utilization while executing the two workloads you mentioned above.

Regards,
Petter

0 Kudos
l_k_1
Beginner
418 Views

Hi Petter,

Thanks for the tip about gpu falling back on SW. 

Here is infomation of my computer:

Intel Media SDK System Analyzer (64 bit)

The following versions of Media SDK API are supported by platform/driver:

        Version Target  Supported       Dec     Enc
        1.0     HW      Yes             X       X
        1.0     SW      Yes             X       X
        1.1     HW      Yes             X       X
        1.1     SW      Yes             X       X
        1.3     HW      Yes             X       X
        1.3     SW      Yes             X       X
        1.4     HW      Yes             X       X
        1.4     SW      Yes             X       X
        1.5     HW      Yes             X       X
        1.5     SW      Yes             X       X
        1.6     HW      Yes             X       X
        1.6     SW      Yes             X       X
        1.7     HW      Yes             X       X
        1.7     SW      Yes             X       X

Graphics Devices:
        Name                                         Version             State
        NVIDIA GeForce GT 640                        9.18.13.3158        08
        Intel(R) HD Graphics 4000                    10.18.10.3345       Active
        AMD Radeon HD 6800 Series                    13.152.1.8000       Active

System info:
        CPU:    Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
        OS:     Microsoft Windows 7


Is i7-3770 that old can not support encode size big than 1080p in HW ?

Simple change to -dstw 1940 ,  

-d3d h264 -i "d:\\samples\\out\\00000.track_4113.264_1920x1080.yuv" -o "d:\\samples\\out\\out_Intel__.264" -w 1920 -h 1080 -hw -dstw 1940 -dsth 1080

run    sts = m_pmfxENC->Init(&m_mfxEncParams);  get warning WARNING: partial acceleration !

Frame number: 614 , Execution time: 16.74s (36.67fps)  

The problem is what parameters should I set to avoid this ? Please give  some suggestions, Thanks.

Regards,

LK

 

0 Kudos
Petter_L_Intel
Employee
418 Views

Hi LK,

Right, your processor is an Intel 3rd generation Core processor which does not support HW accelerated encode for resolutions greater than 1920x1200.

Intel 4th generation Core processors supports up to typical 4K resolution encode.

The "partial acceleration" warning you get essentially means that the SDK fell back on SW encoder implementation, thus the degraded performance.

Regards,
Petter

0 Kudos
l_k_1
Beginner
418 Views

Got it.

Thanks, Petter

0 Kudos
Reply