发明名称 Prioritizing instances of programs for execution based on input data availability
摘要 Systems and methods provide an extensible, multi-stage, realtime application program processing load adaptive, manycore data processing architecture shared dynamically among instances of parallelized and pipelined application software programs, according to processing load variations of said programs and their tasks and instances, as well as contractual policies. The invented techniques provide, at the same time, both application software development productivity, through presenting for software a simple, virtual static view of the actually dynamically allocated and assigned processing hardware resources, together with high program runtime performance, through scalable pipelined and parallelized program execution with minimized overhead, as well as high resource efficiency, through adaptively optimized processing resource allocation.
申请公布号 US9400694(B2) 申请公布日期 2016.07.26
申请号 US201615042159 申请日期 2016.02.12
申请人 THROUGHPUTER, INC. 发明人 Sandstrom Mark Henrik
分类号 G06F9/46;G06F7/38;H04L12/28;G06F9/50 主分类号 G06F9/46
代理机构 代理人
主权项 1. A method periodically arranging a set of N executables of a given software program in an execution priority order, where N is a positive integer, the method comprising: buffering input data at an array of executable specific input port buffers, with said array including up to M buffers for each of the N executables, where M is a positive integer, and wherein a buffer within said array buffers such input data that is directed to the executable associated with the buffer; calculating numbers of non-empty buffers associated with each of the executables; ranking the executables in their descending execution priority order at least in part according to their descending numbers of non-empty buffers through populating a binary matrix of at least M rows by N columns, wherein there is a column associated with each of the N executables, and wherein there is a row corresponding to each of the M possible positive numbers of non-empty buffers per an executable, such that a bit at a given column and a chosen row of the matrix indicates whether the executable associated with the given column has non-empty buffers corresponding to the chosen row; and executing the executables on one or more processing cores of a processor according to the ranking.
地址 Jersey City NJ US