OpenVisualCloud / SVT-VP9

SVT VP9 encoder. Scalable Video Technology (SVT) is a software-based video coding technology that is highly optimized for Intel® Xeon® processors. Using the open source SVT-VP9 encoder, it is possible to spread video encoding processing across multiple Intel® Xeon® processors to achieve a real advantage of processing efficiency.
Other
222 stars 48 forks source link

Don't use AVX2 instructions on unsupported cpus #9

Open inferrna opened 5 years ago

inferrna commented 5 years ago

My CPU is Xeon 2665 v1

Program terminated with signal SIGILL, Illegal instruction.
#0  0x00007fcf8c41f6b2 in avc_style_luma_interpolation_filter_horizontal_avx2_intrin ()

$ cpuid | grep -i avx

   AVX/YMM features (0xd/2):
      AVX/YMM save state byte size             = 0x00000100 (256)
      AVX/YMM save state byte offset           = 0x00000240 (576)
      AVX: advanced vector extensions         = true
      AVX2: advanced vector extensions 2       = false
      AVX512F: AVX-512 foundation instructions = false
      AVX512DQ: double & quadword instructions = false
      AVX512IFMA: fused multiply add           = false
      AVX512PF: prefetch instructions          = false
      AVX512ER: exponent & reciprocal instrs   = false
      AVX512CD: conflict detection instrs      = false
      AVX512BW: byte & word instructions       = false
      AVX512VL: vector length                  = false
      AVX512VBMI: vector byte manipulation     = false
      AVX512_4VNNIW: neural network instrs     = false
      AVX512_4FMAPS: multiply acc single prec  = false
         XCR0 supported: AVX state            = true
         XCR0 supported: AVX-512 opmask       = false
         XCR0 supported: AVX-512 ZMM_Hi256    = false
         XCR0 supported: AVX-512 Hi16_ZMM     = false
hassount commented 5 years ago

@inferrna Thank you for your feedback, at this point SVT-VP9 does not support non-avx2 cpus. However, we welcome contributions enabling such support.

gnafuthegreat commented 5 years ago

For example, there was this patch for SVT-AV1 if someone wanted to try and adapt it:

https://github.com/OpenVisualCloud/SVT-AV1/pull/3

davidebeatrici commented 5 months ago

Related: #172