Hi Steve, Does x265 already queue tasks for execution in the processing pool with CU granularity or with row of CUs granularity?
RAUL On Wed, Apr 9, 2014 at 3:21 AM, Nicolas Morey-Chaisemartin <[email protected] > wrote: > Hi Steve, > >> Our plan is to write a custom encoder core optimized for our platform and >>> use it as an accelerator for x265 running on a x86 processor. >>> This should look something like that >>> >>> /-------------------------\ /---------------------\ >>> | x86 | | 1 or more MPPA-256 | >>> | || | >>> | x265 preAnalysis + |<= PCI Link => | Kalray Encoder Core | >>> | Rate Control || | >>> | || | >>> \-------------------------/ \---------------------/ >>> >>> The idea for the encoder core is to implement a CTU encoder. >>> This leaves us some flexibilty on how we want to dispatch the CTU accross >>> the cores (Tiles, frame parallelism, etc.) >>> >> Yes, at first guess is you would want to move TEncCu::processCU() to >> your remote cores, and perhaps distribute that work to as many cores >> as possible, and allow the main CPU to manage the wave-front and frame >> threading data dependencies and the higher level tasks (slice >> decisions and rate control) >> > The issue with this approach is that the feedback loop between our > accelerator and the x86 would be too tight to get maximum performances. > Streaming all the required data back and forth, and synchronizing will > become a bottleneck very fast. > That's why our first approach is centered on tiles as we can push more > work at once. > However the Encoder core running on our platform is about the same > function as processCU so we can move in one direction or another later. > > >> -- > Nicolas Morey Chaisemartin > Phone : +33 6 42 46 68 87 > > > _______________________________________________ > x265-devel mailing list > [email protected] > https://mailman.videolan.org/listinfo/x265-devel >
_______________________________________________ x265-devel mailing list [email protected] https://mailman.videolan.org/listinfo/x265-devel
