OpenCL* for CPU
Ask questions and share information on Intel® SDK for OpenCL™ Applications and OpenCL™ implementations for Intel® CPU.
Announcements
This forum covers OpenCL* for CPU only. OpenCL* for GPU questions can be asked in the GPU Compute Software forum. Intel® FPGA SDK for OpenCL™ questions can be ask in the FPGA Intel® High Level Design forum.
1719 Discussions

Some Weird Problem with OpenCL of HD 530 Mobile

Billy_Cao
Beginner
617 Views

I have been using a screen recorder to record gameplay videos. But recently, I encountered this weird problem that other will not encounter. Details below:

So it's about codec, but has something to do with the OpenCL function. I had been using a software to capture my computer screen and have been using the x264 codec(CPU software Encode), and it uses A HELL LOT of CPU, so I am trying to find solutions. I tried enabling this function called "OpenCL", and when I enable it, the screen recorder will just freeze for a while and start to record.

Now here is the ODD thing. When it says it is recording and the timer also started, I see NO CHANGE in CPU usage as compared to before recording, which should be impossible as I am NOT using Quick Sync Codec. Also, after I pressed "stop", it will not stop until I use Force Stop. And, NO VIDEO WAS ACTUALLY RECORDED! Not even a file been created! The same thing will not happen if I disable the "OpenCL" function, and of course the CPU usage went up again.

SO......could someone please explain why the "OpenCL" won't work? Is the mobile HD 530 just not compatible with codec hardware acceleration(or was it?)?

Thanks so much again!

 

Additional Info:

Screen recorder used: OBS Studio 0.17.0.2(Latest Version at the date of posting)

Current recording Settings:Encoder: Intel Quick Sync QSV 1920x1080 VBR 12333Kbps, max 14500Kbps. Preset 1 (Quility) No other special settings.

Rig: HP Pavilion 15 bc009tx. I7-6700HQ, GTX 960M, Intel HD 530 iGPU, 128G SSD, 1000GB HDD 7200RPM, and  8GB DDR4 2133Mhz RAM

If you need more info, feel free to ask. I may not be replying on time, please excuse me.

Thanks a lot to any replies!

0 Kudos
1 Solution
Jeffrey_M_Intel1
Employee
617 Views

Sorry for the delayed reply.  There are several ways to accelerate codecs with Intel processors.

  1. CPU code optimization.  The x264 project is highly optimized.
  2. Standard OpenCL.  This would run on the execution units of Intel processor graphics only.  (I am not an expert on the OpenCL in x264 but from what I can see from a quick read of the code it is in this category.)
  3. Access to specialized codec HW via Media SDK and OpenCL media extensions.   Another name for the hardware features is Quick Sync Video.  These HW acceleration features provide a performance boost/lower CPU usage.

OBS has Media SDK optimizations but you must select Quick Sync Video as your encoder.  The OpenCL option does not appear to be the same thing.  

The HD Graphics 530 GPU in your i7-6700HQ processor has QSV hardware.  An easy way to check (for Core processors) is the "Intel Quick Sync Video" row under "Graphics Specifications" on ark.intel.com. 

These slides give more info on the hardware design, names to look for, and where to go next for more info about the hardware:

https://software.intel.com/sites/default/files/managed/89/f1/develop-media-latest-intel-processors-webinar.pdf

Other than that, OBS operation is a bit out of the scope of this forum.   You may get more help specific to OBS operation at the OBS forum.

 

View solution in original post

0 Kudos
3 Replies
Jeffrey_M_Intel1
Employee
618 Views

Sorry for the delayed reply.  There are several ways to accelerate codecs with Intel processors.

  1. CPU code optimization.  The x264 project is highly optimized.
  2. Standard OpenCL.  This would run on the execution units of Intel processor graphics only.  (I am not an expert on the OpenCL in x264 but from what I can see from a quick read of the code it is in this category.)
  3. Access to specialized codec HW via Media SDK and OpenCL media extensions.   Another name for the hardware features is Quick Sync Video.  These HW acceleration features provide a performance boost/lower CPU usage.

OBS has Media SDK optimizations but you must select Quick Sync Video as your encoder.  The OpenCL option does not appear to be the same thing.  

The HD Graphics 530 GPU in your i7-6700HQ processor has QSV hardware.  An easy way to check (for Core processors) is the "Intel Quick Sync Video" row under "Graphics Specifications" on ark.intel.com. 

These slides give more info on the hardware design, names to look for, and where to go next for more info about the hardware:

https://software.intel.com/sites/default/files/managed/89/f1/develop-media-latest-intel-processors-webinar.pdf

Other than that, OBS operation is a bit out of the scope of this forum.   You may get more help specific to OBS operation at the OBS forum.

 

0 Kudos
Billy_Cao
Beginner
617 Views

Jeffrey M. (Intel) wrote:

Sorry for the delayed reply.  There are several ways to accelerate codecs with Intel processors.

  1. CPU code optimization.  The x264 project is highly optimized.
  2. Standard OpenCL.  This would run on the execution units of Intel processor graphics only.  (I am not an expert on the OpenCL in x264 but from what I can see from a quick read of the code it is in this category.)
  3. Access to specialized codec HW via Media SDK and OpenCL media extensions.   Another name for the hardware features is Quick Sync Video.  These HW acceleration features provide a performance boost/lower CPU usage.

OBS has Media SDK optimizations but you must select Quick Sync Video as your encoder.  The OpenCL option does not appear to be the same thing.  

The HD Graphics 530 GPU in your i7-6700HQ processor has QSV hardware.  An easy way to check (for Core processors) is the "Intel Quick Sync Video" row under "Graphics Specifications" on ark.intel.com. 

These slides give more info on the hardware design, names to look for, and where to go next for more info about the hardware:

https://software.intel.com/sites/default/files/managed/89/f1/develop-media-latest-intel-processors-webinar.pdf

Other than that, OBS operation is a bit out of the scope of this forum.   You may get more help specific to OBS operation at the OBS forum.

 

Thanks for the well-explained reply! I already enabled Quick Sync Video, and there is an improvement. Just another small question: will bitrate affect the speed of encoding? What will cause my video to me SUPER BLOCKY with more than high bitrate? This kind of blocky is like very colourful, not the normal block. You can check out the video to see: https://youtu.be/ELofMQcV4Ak Please start from 1:04.

Anyway thanks a lot for the support and help!

0 Kudos
Jeffrey_M_Intel1
Employee
617 Views

For QSV the bitrate usually does not affect encode speed.  However, there are cases (especially at relatively low bitrates) where frames could be re-encoded to maintain HRD conformance which could cause slower FPS.  Thanks for the example.  I can definitely see the artifacts.  I'm not an expert in OBS but as I recall there are several options for bitrate control mode.  CQP should have the least BRC issues since it means you are not using bitrate control at all.  AVBR and ICQ (Intelligent CQ, a bit like x264 CRF) have some properties which could work well for games.

0 Kudos
Reply