VideoHelp Forum
+ Reply to Thread
Results 1 to 11 of 11
Thread
  1. Member
    Join Date: Apr 2014
    Location: Pawtucket, RI
    Search PM
    So after watching this:
    x265: Open Source H.265/HEVC Video Encoder

    I have a better understanding about why existing single / few GPU video adapters are poorly situated to do the kind of analysis required for the future direction of video encoding.

    Here's what I still don't get.

    Why wouldn't it be possible to change the architecture away from a single very expensive GPU that does everything to having many less expensive GPUs on the same card / chip that are specifically designed to handle parallel tasks and share memory that would allow for significant offloading of the CPU for video encoding?

    I just used AviUtl yesterday to try encoding a two hour 1080p movie, and running Win7 x64 with my AMD FX-8150 8-Core processor the task took over 16 hours with the cores running at near full tilt.

    There's bound to be a better way of doing this with dedicated hardware and software that will exploit it.
    Quote Quote  
  2. Member bendixG15's Avatar
    Join Date: Aug 2004
    Location: United States
    Search Comp PM
    No market for what you propose ...... stuff is made to make money ..... not to satisfy a need for a few.
    Quote Quote  
  3. Member
    Join Date: Apr 2014
    Location: Pawtucket, RI
    Search PM
    bendixG15: There are some very spendy workstation graphics adapter cards out there but I don't know to what extent they are just multi-threading oriented vs multi-processor oriented. I understand that consumer grade cards won't be able to do what I want for a long time, but once H.265 becomes widely adopted for things like 4k and 8k, I think it will inevitably generate a demand that is not now present.
    Quote Quote  
  4. Banned
    Join Date: Nov 2005
    Location: United States
    Search Comp PM
    Originally Posted by lasitter View Post
    I have a better understanding about why existing single / few GPU video adapters are poorly situated to do the kind of analysis required for the future direction of video encoding.
    no, what you have is a better understanding why everyone at MultiCoreWare is full of crap. you can easily refute anyone who claims that gpu's are either incapable of matching cpu based encoders in quality or claims that somehow video cards are poorly suited for video encoding by going to looking at Elemental and seeing the gpu powered h265 encoder they have that is capable of doing real time 4k encoding.

    Tom was asked over on the doom9 forums if it would be possible to do real time encoding with x265 if one were to build a massive intel based 48 core monster server. Tom replied that they are working on it and that they are trying to accomplish this using multiple servers working together in a segmented video encoding scheme.

    Tom and friends are more interested in making excuses than actually coding something that the general public will want to use.
    Quote Quote  
  5. Member johns0's Avatar
    Join Date: Jun 2002
    Location: canada
    Search Comp PM
    48 core is nothing compared the the government computer with a million cores,get that to encode with.
    I think,therefore i am a hamster.
    Quote Quote  
  6. Banned
    Join Date: Nov 2005
    Location: United States
    Search Comp PM
    Originally Posted by johns0 View Post
    48 core is nothing compared the the government computer with a million cores,get that to encode with.
    a 48 core haswell is capable of fetching, executing and retiring up to 6 x86 instructions per cycle per core, has 4 alu's per core for a total of 192 alu's, using avx/2 each simd unit within each core is capable of executing 32 8bit integer instructions per cycle, 8 32bit floating point instructions, so a 48 core haswell based server is a beast of a computer and would cost a ridiculous amount of money.

    in comparison an AMD R7 260x costs $140, has 896 cores and since AMD changed from the previous VLIW architecture to the GCN architecture all AMD cards are designed with gpu compute in mind from the ground up.

    but it's not just the x265 people, the main concept people also seem to have given up on gpu compute, i asked over at the divx forums if there was any plans to add gpu acceleration to DivX265 and they said nope and main concept has removed the OCL and CUDA encoders from the new Total Code Studio 3, so i think these guys may be conceding the gpu powered encoder market to Elemental.

    or perhaps they have some inside information that intel or nvidia is planning on releasing gpu's with built in hevc and they're waiting for that, who knows.
    Quote Quote  
  7. Member bendixG15's Avatar
    Join Date: Aug 2004
    Location: United States
    Search Comp PM
    Originally Posted by lasitter View Post
    bendixG15: ........ but once H.265 becomes widely adopted for things like 4k and 8k, I think it will inevitably generate a demand that is not now present.
    Ah, the crystal ball peering into the future as to what's going to be. Do you really think that development is going to stop with H.265 ?
    Quote Quote  
  8. Member
    Join Date: Apr 2014
    Location: Pawtucket, RI
    Search PM
    deadrats: So who was the guy in the video with all the slide that said "AMD", and why is he part of the problem vs part of the solution?
    Quote Quote  
  9. Member
    Join Date: Sep 2007
    Location: Canada
    Search Comp PM
    Originally Posted by deadrats View Post

    but it's not just the x265 people, the main concept people also seem to have given up on gpu compute, i asked over at the divx forums if there was any plans to add gpu acceleration to DivX265 and they said nope and main concept has removed the OCL and CUDA encoders from the new Total Code Studio 3, so i think these guys may be conceding the gpu powered encoder market to Elemental.
    Whoa that sucks. HEVC was supposed to be very amenable to parallelization - WTF happened ?

    Forget about the Elemental blah blah blah - Yes, they did a realtime 4K 60FPS stream, but there was no quality measurement or analysis. You're comparing consumer level AMD cards, but the cost of a Elemental setup hardware & license isn't exactly cheap. It's geared for Enterprise markets and has an Enterprise price tag. Apples and Oranges
    Quote Quote  
  10. Banned
    Join Date: Nov 2005
    Location: United States
    Search Comp PM
    Originally Posted by lasitter View Post
    deadrats: So who was the guy in the video with all the slide that said "AMD", and why is he part of the problem vs part of the solution?
    that was steve borho, i believe he's one of the lead x265 developers. he's part of the problem, and in fact the entire x265 team over at multicoreware is part of the problem because they have copied x264's idiotic programming model.

    when you want to write parallelized code you can do one of two things: either code using what's known as instruction level parallelism or thread level parallelism. the easy way of thinking about it is that ISP can be thought of as micro-managing the execution of the code and TLP can be thought of as macro-managing the execution of the code.

    ISP is accomplished by having an intimate knowledge of the execution units on a given processor and you use lots of assembler and/or simd instructions, with TLP you break up the tasks into threads that can be executed independently of another.

    ISP style programming requires that you understand how the cpu functions on a basic level in order to get maximum performance, you need to have multiple code paths for each target architecture, it adds to code complexity, but because you're using assembler and hand tuning the code you can get maximum performance out of the cpu.

    TLP has the benefit of being easier to maintain, much easier to scale with core count, easier to implement (some programming languages make it easier than others), the code is portable since it's not tied to any one specific architecture and while execution is typically slower, a good optimizing compiler will negate most of the speed lose, on my X6 1045t, the difference between x264 with asm and without is typically 20fps when the typical frame rates are 130fps with asm (i.e. 130fps asm vs 110fps no-asm).

    the x265 people are run by barely literate chimps, they claim they have 200+ engineers that specialize in gpu acceleration yet the code using x86 specific assembler, have used as the foundation an encoder (x264) designed from the ground up to be anything but gpu friendly and seem to be hell bent on ensuring that the only gpu acceleration x265 sees is if someone pounds them in the ass.

    they seem to think that they are position x265 to be the defacto standard in hevc, the goto encoder that everyone reaches for, what they are ensuring is that x265 will be the encoder of choice when one wishes to print out the source code and wipe their ass.
    Quote Quote  
  11. Banned
    Join Date: Nov 2005
    Location: United States
    Search Comp PM
    Originally Posted by poisondeathray View Post
    Whoa that sucks. HEVC was supposed to be very amenable to parallelization - WTF happened ?

    Forget about the Elemental blah blah blah - Yes, they did a realtime 4K 60FPS stream, but there was no quality measurement or analysis. You're comparing consumer level AMD cards, but the cost of a Elemental setup hardware & license isn't exactly cheap. It's geared for Enterprise markets and has an Enterprise price tag. Apples and Oranges
    hevc is geared for high thread counts but when your programming model is based on instruction level parallelism versus thread level parallelism then you're not going to be able to run it on a gpu, not with any real efficiency.

    as for Elemental, yes they are expensive, but the point isn't cost, the point is disproving the jerkoffs that say "it can't be done".

    DS spend years convincing the average user that gpus were ill suited for video encoding, he and said users chose to ignore encoders like ATI AVIVO that existed from back in the 9600pro days, was 8 times faster than the x264 of the day running on a pentium d 820, they chose to ignore GPEG2, a DX9 HLSL coded mpeg-2 gpu powered encoder that offered great quality and was fast.

    if you want to know about the quality of Elemental's encoders go ask Blue Misfit, a definite x264 cheerleader (he used to use the tagline "use x264, seriously, use it now") who has said that both their h264 and h265 encoder offers great quality.

    with regards to cost, you're right, it's rumored that their system uses 2 geforce titans and cost about 30 grand, the question is can you put together any system, with any combination of cpu's, for less than 30 grand that will allow x265 to encode hevc 4k 60fps video in real time?

    i think we both know the answer to that.
    Quote Quote