发明名称 Memory allocation in a multi-core processing system based on a threshold amount of memory
摘要 A processing system comprises plural processing cores and a task allocator for allocating tasks to the processing cores. The processing cores perform the tasks that are allocated to them so as to produce results for the tasks, the results being stored by the processing cores in a buffer. The task allocator indicates to the processing cores memory portions within the buffer in which to store the results. When the processing cores determine that a given memory portion is becoming full, the processing cores request that the task allocator indicates a new memory portion in which to store its results. The processing system allows the task allocator to dynamically and efficiently allocate memory portions to plural processing cores without the task allocator 40 needing to know the sizes of the results being produced by the processing cores.
申请公布号 US9612949(B2) 申请公布日期 2017.04.04
申请号 US201313916722 申请日期 2013.06.13
申请人 ARM LIMITED 发明人 Flordal Oskar;Persson Hakan;Engh-Halstvedt Andreas
分类号 G06F12/00;G06F12/02;G06F9/50;G06T1/60 主分类号 G06F12/00
代理机构 Vierra Magen Marcus LLP 代理人 Vierra Magen Marcus LLP
主权项 1. A method of allocating memory to processing cores in a multi-core processing system, the system comprising: plural processing cores for performing processing tasks, each processing core processing each task allocated to that processing core to produce a result for that task; a buffer comprising an allocated amount of memory for storing results that are produced by the plural processing cores; and a task allocator that allocates to the processing cores tasks to be processed, the task allocator indicating to the processing cores memory portions in the buffer for storing the results produced for the tasks; the method comprising: the task allocator allocating to each processing core of the plural processing cores a respective set of tasks to be processed by that processing core, the task allocator also indicating to each processing core of the plural processing cores a respective particular memory portion in the buffer for storing the results produced by that processing core for its set of tasks; the method further comprising each processing core of the plural processing cores, when processing a particular task of the set of tasks to be processed by that processing core: (i) processing the particular task to produce a particular result for the particular task;(ii) storing the particular result in the respective particular memory portion of the allocated memory of the buffer indicated to the processing core by the task allocator;(iii) determining whether there is less than a threshold amount of memory remaining in the respective particular memory portion indicated to the processing core by the task allocator; and(iv) if there is less than the threshold amount of memory remaining in the respective particular memory portion indicated to the processing core by the task allocator, requesting the task allocator to indicate a new memory portion to the processing core; and the method further comprising the task allocator, in response to a new memory portion being requested by a particular processing core of the plural processing cores: indicating a new memory portion to the particular processing core.
地址 Cambridge GB