On IMSS 2017 product page (https://software.intel.com/en-us/intel-media-server-studio/details) following supported features are listed
" 'Hardware-accelerated' and 'GPU-accelerated' HEVC encoders are different because of using different areas on Intel(R) Processor Graphics:
Hardware-accelerated implementation uses fixed functions (FF) - parts of GPU dedicated for special coding purposes. FF for HEVC encoding exists starting Skylake (6th gen of Intel processors) - HEVC encoding is possible only on Skylake now on Linux and on Skylake and KabyLake on Windows with client Media SDK(not MSS). But to have HEVC encoder on earlier generation of processor (Broadwell) GPU-accelerated plugin was developed. It uses GPU's Execution Units (EUs) - general purpose cores."
1st question: Is hardware-accelerated better than GPU-accelerated HEVC(and AVC) transcoding? If better then how much ?
2nd question: If hardware-accelerated is much better. As I understand only following platforms support hardware-accelerated transcoding:
Update to question 2: I wanted to clearify my requirements. After correlating https://software.intel.com/sites/default/files/managed/85/7c/Intel-Xeon-Processor-E3-1500-v5-Performance-May-2016.pdf & http://ark.intel.com/products/codename/37572/Skylake#@server Processor specs it seems only following CPUs support HEVC Encode & Decode (8-bit and 10-bit, Linux and Windows) :
Is it that only those 3 CPUs qualify for my requirements ?
Any Skylake based processor with integrated graphics support hardware accelerated HEVC encode, e.g. any Intel(R) Xeon Processor E3-15* v5 any 6th generation Intel Core, So if your target OS is windows - MSS will work at any of them. Linux is limited almost to Xeon only(validated).Please note that to get integrated graphics support with Xeon Processors you need specific C236 chipset, so pay attention to the motherboard specs. KBL processors(e.g 7th Generation Core) supports 10 bit HW accelerated encode.
To your question about HW Accelerated vs GPU accelerated - it depend on your needs, so GPU accelerated will be pretty fast comparing to pure SW encoder, but realtime won't be reached for 4K resolutions, when HW Accelerated can allow you run transcoding/encoding at realtime. The same time GPU accelerated will have higher encoding quality comparing to HW encoder on Skylake and Kabylake based platforms.
So if I buy and use Skylake Xeon processor then I can achieve hardware acceleration and also get 10bit hevc encode.
Before transcoding can I select between Hardware, GPU or Software acceleration ? So I do performance/quality testing on my own and then decide which mode to use.
On Skylake for HEVC 10 bit encode you will be able to use only SW or GPU accelerated, hardware HEVC 10 bit encode available starting Kabylake(7th generation Intel Core)