发明名称 Apparatus and method for thread scheduling and lock acquisition order control based on deterministic progress index
摘要 Provided is a method and apparatus for ensuring a deterministic execution characteristic of an application program to perform data processing and execute particular functions in a computing environment using a micro architecture. A lock controlling apparatus based on a deterministic progress index (DPI) may include a loading unit to load a DPI of a first core and a DPI of a second core among DPIs of a plurality of cores at a lock acquisition point in time of each thread, a comparison unit to compare the DPI of the first core and the DPI of the second core, and a controller to assign a lock to a thread of the first core when the DPI of the first core is less than the DPI of the second core and when the second core corresponds to a last core to be compared among the plurality of cores.
申请公布号 US9047138(B2) 申请公布日期 2015.06.02
申请号 US201113099453 申请日期 2011.05.03
申请人 Samsung Electronics Co., Ltd. 发明人 Shin Young Sam;Lee Seung Won;Son Min Young;Lee Shi Hwa
分类号 G06F9/46;G06F9/52;G06F9/48 主分类号 G06F9/46
代理机构 NSIP Law 代理人 NSIP Law
主权项 1. A lock controlling apparatus for threads, based on a deterministic progress index (DPI), the apparatus comprising: a tracker to track, for each thread of a plurality of threads of a predetermined thread group executing on a multi-core system, a thread DPI comprising a value which is incremented at regular intervals during deterministic sections of the thread's execution and which is not incremented during non-deterministic sections of the thread's execution, where a nondeterministic section comprises a section whose execution period is unpredictable, where the threads of the predetermined thread group are each assigned to execute on a corresponding one of the cores of the multi-core system such that each core is assigned at least one of the threads and at least one of the cores is assigned at least two of the threads; storage to store, for each of the cores, a core DPI at a shared memory location accessible by each of the cores, where the core DPI of a core comprises an accumulative total of the thread DPIs of the threads of the predetermined thread group assigned to the core; a loader to load the stored core DPIs in response to a first thread of the thread group assigned to a first core of the multi-core system attempting to acquire a lock; a comparator to compare the DPI of the first core to each of the other loaded core DPIs; and a controller to assign the lock to the first thread when the loaded core DPI of the first core is less than the other loaded core DPIs.
地址 Suwon-si KR