[FFmpeg-user] CPU and GPU
Mark Filipak
markfilipak.windows+ffmpeg at gmail.com
Mon Mar 2 06:34:58 EET 2020
On 03/01/2020 11:01 PM, Ted Park wrote:
> Hi,
>
>> So codec engineering companies like NGCodec, MainConcept, Beamr and MulticoreWare turn open source-based, ffmpeg workflows into FPGAs that, when mature firmware implementations, chip companies like Intel & NVIDIA turn into real hardware: masked GPUs. Do I have that right?
>
> I think that is a bit of a stretch… It almost makes it sound like they copy paste a bunch of code from open source projects into a box that turns them into custom silicon designs...
What is implemented in FPGAs is not solely so-called
software-in-silicon. Sometimes it is software-in-silicon -- marginal
speedup -- but usually software algorithms are realized as systems of
FSMs (finite state machines) -- huge speedup -- that simply mimic the
original software processes.
I presume that what is implemented in GPUs (CUDA cores, for example) are
the FSMs with custom hardware tool blocks (transform processors and the
like) operating as slaved coprocessors shared by the cores -- even
bigger speedup.
> ...Besides, I think the way Intel or NVIDIA might use FPGAs (other than in their FPGA products) is probably very different from the way a software codec is accelerated using an FPGA.
That is undoubtedly true. Some are implemented using a client-server
model and some are implemented as subprocesses (just as a main program
uses subroutines). So long as the implementation is via FPGA, it doesn't
matter whether its done in the own FPGA product or licensed from a
software-in-silicon vendor like MGCodec.
More information about the ffmpeg-user
mailing list