CN106648546A - 用于gpu寄存器分配和并行度管理的协同优化编译方法 - Google Patents
用于gpu寄存器分配和并行度管理的协同优化编译方法 Download PDFInfo
- Publication number
- CN106648546A CN106648546A CN201610805632.4A CN201610805632A CN106648546A CN 106648546 A CN106648546 A CN 106648546A CN 201610805632 A CN201610805632 A CN 201610805632A CN 106648546 A CN106648546 A CN 106648546A
- Authority
- CN
- China
- Prior art keywords
- register
- thread
- tlp
- gpu
- combination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30138—Extension of register space, e.g. register cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
Abstract
本发明公布了一种协同优化编译方法,所述方法用于GPU寄存器分配和并行度管理协同优化的编译,使得寄存器的分配和并行度管理的优化同时进行,且不引起缓存的竞争;包括:收集寄存器分配参数、线程级并行参数和缓存性能参数;列出所有可能的线程块数量TLP和寄存器数量Reg的组合;删除导致缓存竞争的组合和导致寄存器浪费的组合;对剩下的组合进行寄存器分配;使用性能模型进行预测并选择性能最佳的组合,作为寄存器分配编译的结果。本发明技术方案可在不引起缓存竞争的前提下,最大化寄存器的使用率,最终提升整个程序的性能。
Description
技术领域
本发明涉及寄存器分配编译技术,尤其涉及一种用于GPU寄存器分配和并行度管理的协同优化编译方法。
背景技术
寄存器的分配是计算机领域一种常见的编译问题。对于每一个程序,寄存器的数量往往是有限的,而程序所要使用的变量的数量可能会远远超过寄存器的数量。因此如果尽可能的程序的变量放到寄存器中、从而获得最大的性能,一直是计算机领域一个重要的基本问题。
寄存器的分配被认为是一个K染色问题。假设我们有N个变量和K个寄存器。通常,编译器首先通过数据流和控制流分析,获得所有N各变量的活跃时间。然后构建一个大小为N的图,每个顶点代表一个变量。如果两个变量的活跃时间有重叠,那么就在对应的两个顶点之间连一条线。最后,使用K种颜色对该图进行染色,并规定两个连接的顶点不能使用同一种颜色。如果染色成功,那么K个寄存器足以放入所有变量。如果染色失败,则需要删除一些顶点。被删除的顶点将会被放入到内存中。因此,寄存器的分配问题就被转化成了K染色问题。
但是,现有传统的寄存器分配算法仅适用于单线程程序。GPU(graphicsprocessing unit),也就是图形处理器是中核架构。为了支撑大量线程的并发执行,GPU配备了大容量的寄存器堆。因此,GPU的寄存器分配不仅要考虑K个寄存器是否能够容纳N个变量,还要考虑给每个线程分配具体多少寄存器,也就是决定K的大小。而这是现有传统的寄存器分配算法没有考虑的,因此,现有寄存器分配算法无法支撑大量线程的并发执行。
发明内容
为了克服上述现有技术的不足,本发明提供一种GPU上寄存器分配的方法,是一种用于GPU的编译方法,涉及到寄存器分配和并行度管理两个方面的协同优化;该方法能够使得寄存器分配和并发度管理的优化同时进行,并且不引起缓存的竞争。在编译时,本发明同时考虑线程数、寄存器分配、缓存性能多个指标。
本发明提供的技术方案是:
一种寄存器分配编译方法,所述方法用于GPU寄存器分配和并行度管理协同优化的编译,使得寄存器的分配和并行度管理的优化同时进行,且不引起缓存的竞争;包括如下步骤:
A)收集寄存器分配参数、并行度参数和缓存性能参数;
B)通过步骤A中所获得的参数,列出所有可能的线程块数量TLP和寄存器数量Reg的组合;删除导致缓存竞争的组合和导致寄存器浪费的组合;
C)对剩下的组合进行寄存器分配,在寄存器的分配过程中,当出现部分变量无法放入寄存器时,尽量将这些寄存器放在共享内存中;当共享内存空间不足时,再把他们放置到片下存储中;
D)使用性能模型预测得到各个组合的性能,并选择性能最佳的组合,作为寄存器分配编译的结果。
针对上述寄存器分配编译方法,进一步地,A)所述寄存器分配参数包括每个线程至少获得的寄存器数量MinReg和每个线程最多需要的寄存器数量MaxReg;所述并行度参数包括不考虑寄存器的情况下每个GPU核上最多的的线程块数量MaxTLP和不引起缓存竞争的最多线程块数量OptTLP;缓存性能参数包括每个线程块在不引起线程数下降的情况下可获得的最多共享内存数量ShmSize。
针对上述寄存器分配编译方法,进一步地,B)所述导致缓存竞争的组合为每个GPU核心上的并发线程块数量TLP大于不引起缓存竞争的最多线程块数量OptTLP的组合;所述导致寄存器浪费的组合为寄存器Reg没有达到对应的TLP最大的寄存器数量的组合。
针对上述寄存器分配编译方法,进一步地,D)所述性能模型为:
TPSC=TLPgain×Spillcost
Spillcost=Numlocal×Costlocal+Numshm×Costshm+Numothers
其中,TPSC指的是最终的执行时间,越小越好。BlockSize指每个thread block的大小。Numlocal,Numshm,Numothers分别指本地存储指令(local memory)、共享存储指令和其他指令的数量。Costlocal,Costshm分别指本地存储指令、共享存储指令的周期数。性能最佳为所述最终的执行时间TPSC值最小。
与现有技术相比,本发明的有益效果是:
现有的寄存器分配技术只考虑单线程性能,本发明技术方案同时考虑单线程性能、并发线程数和缓存性能以达到最佳性能。因此,本发明方法可以在不引起缓存竞争的前提下,最大化寄存器的使用率,并获得一个最佳的寄存器和并行度的这种方案,最终提升整个程序的性能。
附图说明
图1是本发明提供的用于GPU寄存器分配和并行度管理的协同优化编译方法的流程框图。
图2是本发明方法的寄存器分配部分的算法流程框图。
具体实施方式
下面结合附图,通过实施例进一步描述本发明,但不以任何方式限制本发明的范围。
本发明提供一种GPU上寄存器分配的方法,该方法能够使得寄存器的分配和并行度管理的优化同时进行,并且不引起缓存的竞争。在编译时,本发明同时考虑线程数、寄存器分配、缓存性能多个指标。
图1是本发明提供的用于GPU寄存器分配和并行度管理协同优化的编译方法的流程框图,包括如下步骤:
A)首先收集寄存器分配、并行度和缓存性能的参数。
A1.MinReg,MaxReg.MinReg指每个线程至少可以获得多少寄存器,这个参数是由硬件制定的,一般是寄存器的总数量除以最大线程数。MaxReg指此线程最多需要多少寄存器,MaxReg个寄存器足以将整个图进行染色。
A2.MaxTLP,OptTLP。MaxTLP指的是在不考虑寄存器的情况下每个GPU核上最多的的线程块数量。OptTLP指的是不引起缓存竞争的最多线程块数量。OptTLP小于等于MaxTLP,如果在每个核上放置多于OptTLP个线程块,会因为缓存竞争导致性能下降。本专利中,TLP指每个GPU核心上的并发线程块数量。
A3.ShmSize,每个线程块在不引起线程数下降的情况下,可获得的最多的共享内存数量。
B)首先通过步骤A中获得的参数,我们列出所有可能的线程块数量(TLP)和寄存器数量(Reg)的组合。然后两类组合会被删除。
B1.TLP大于OptTLP的组合。这类组合会导致缓存竞争。
B2.Reg没有达到对应的TLP最大的寄存器数量的组合。这类组合会导致寄存器浪费。
C)然后我们会对剩下的线程块数量(TLP)和寄存器数量(Reg)的组合进行寄存器分配。在寄存器的分配过程中,我们使用染色算法将该程序的所有变量放入数量为Reg的寄存器中。如果出现部分变量无法放入到Reg个寄存器中的情况,我们会将这些变量放在共享内存中。如果出现共享内存空间不足的情况,再把这些变量放置到片下存储中。
D)最后,使用性能模型预测各个组合的性能,并选择性能最佳的组合。
本发明使用的性能模型如下:
(1)
(2)Spillcost=Numlocal×Costlocal+Numshm×Costshm+Numothers
(3)TPSC=TLPgain×Spillcost
该模型共包含三个公式。首先该模型根据公式(1)计算出参数TLPgain。TLPgain表示由于每个GPU核心上的并发线程块数量(TLP)的提高,GPU程序的执行时间的变化。它可以通过(1)右侧的公式计算得到。其中,TLP表示该组合的线程并行度,BlockSize值该GPU程序中每个线程块(Thread block)的大小。MaxThread表示该GPU中每个核心所允许的最大并发线程数。
然后根据公式(2)计算出参数Spillcost,该参数表示寄存器分配对于GPU应用执行时间的影响。公式(2)右侧是计算方法,计算方法是把不同种指令的数量和执行时间相乘后进行累加。其中Numlocal,Numshm,Numothers分别指本地存储指令(local memory)、共享存储指令和其他指令的数量。Costlocal,Costshm分别指本地存储指令、共享存储指令的周期数。
最后,本模型通过公式(3)计算出参数TPSC,TPSC指的是最终的执行时间,越小越好,通过将公式(1)的TLPgain和公式(2)的Spillcost相乘获得。最终,TPSC最小的[TLP,Reg]组合成为本技术选取的寄存器分配和并行度的优化方案。
下面通过实例对本发明做进一步说明。
实施例一:
假定一个GPU的核函数不存在缓存竞争问题(OptTLP为最大值),经过步骤A收集参数之后,存在[MinReg,MaxReg]个寄存器分配可能,[MinTLP,MaxTLP]个并发度分配可能。共存在(MaxReg-MinReg)*[MaxTLP-MinTLP]种寄存器和并发度分配组合(每种组合用(Reg,TLP)表示,其中Reg表示每个线程的寄存器数量,TLP表示每个GPU核心上的线程块数量)。
列出所有可能的线程块数量(TLP)和寄存器数量(Reg)的组合,通过步骤B将如上各种组合中,寄存器利用率不是最大的组合删除,经过这一步骤,一般会剩余3~5种不同组合。
通过步骤C对剩下的组合进行寄存器分配,在寄存器分配的过程中,根据需要,可能会将被分配到本地存储中的变量,重新分配到共享存储中,以减少对本地存储的访问。
通过步骤D,根据性能模型,并根据几种不同(Reg,TLP)所产生的代码,预测不同配置的性能,并选择TPSC值最小的组合。
实施例二:
假定一个GPU的核函数存在缓存竞争问题,经过步骤A收集参数之后,存在[MinReg,MaxReg]个寄存器分配可能,[MinTLP,MaxTLP]个并发度分配可能。共存在(MaxReg-MinReg)*[MaxTLP-MinTLP]种寄存器和并发度分配组合(每种组合用(Reg,TLP)表示,其中Reg表示每个线程的寄存器数量,TLP表示每个GPU核心上的线程块数量)。
步骤B首先将如上几种组合中,寄存器利用率不是最大的、而且TLP大于OptTLP的组合删除,经过这一步骤,一般会剩余1~3种不同组合。如果最终组合只剩一种,直接结束算法,并输出这一组合。如果剩余组合多于一种,仿照实施例一,继续步骤C和步骤D,最终选择TPSC值最小的组合。
需要注意的是,公布实施例的目的在于帮助进一步理解本发明,但是本领域的技术人员可以理解:在不脱离本发明及所附权利要求的精神和范围内,各种替换和修改都是可能的。因此,本发明不应局限于实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
Claims (5)
1.一种协同优化编译方法,所述方法用于GPU寄存器分配和并行度管理协同优化的编译,使得寄存器的分配和并行度管理的优化同时进行,且不引起缓存的竞争;包括如下步骤:
A)收集寄存器分配参数、并行度管理参数和缓存性能参数;
B)通过步骤A中所获得的参数,列出所有可能的线程块数量TLP和寄存器数量Reg的组合;删除导致缓存竞争的组合和导致寄存器浪费的组合;
C)对剩下的线程块数量TLP和寄存器数量Reg的组合进行寄存器分配,在寄存器的分配过程中,用染色算法将该程序的所有变量放入数量为Reg的寄存器中;当出现部分变量无法放入到Reg个寄存器时,将所述部分变量放在共享内存中;当共享内存空间不足时,再把所述部分变量放置到片下存储中;
D)使用性能模型预测得到各个组合的性能,并选择性能最佳的组合,作为寄存器分配编译的结果。
2.如权利要求1所述协同优化编译方法,其特征是,A)所述寄存器分配参数包括每个线程至少获得的寄存器数量MinReg和每个线程最多需要的寄存器数量MaxReg;所述并行度参数包括不考虑寄存器的情况下每个GPU核上最多的的线程块数量MaxTLP和不引起缓存竞争的最多线程块数量OptTLP;缓存性能参数包括每个线程块在不引起线程数下降的情况下可获得的最多共享内存数量ShmSize。
3.如权利要求1所述协同优化编译方法,其特征是,B)所述导致缓存竞争的组合为每个GPU核心上的并发线程块数量TLP大于不引起缓存竞争的最多线程块数量OptTLP的组合;所述导致寄存器浪费的组合为寄存器Reg没有达到对应的TLP最大的寄存器数量的组合。
4.如权利要求1所述协同优化编译方法,其特征是,D)所述性能模型为:
(2)Spillcost=Numlocal×Costlocal+Numshm×Costshm+Numothers
(3)TPSC=TLPgain×Spillcost
其中:公式(1)中,TLPgain表示由于每个GPU核心上的并发线程块数量(TLP)的提高,GPU程序的执行时间的变化;TLP表示该组合的线程并行度;BlockSize值该GPU程序中每个线程块(Thread block)的大小;MaxThread表示该GPU中每个核心所允许的最大并发线程数;公式(2)中,参数Spillcost表示寄存器分配对于GPU应用执行时间的影响;Num-local、Numshm、Numothers分别指本地存储指令(local memory)、共享存储指令和其他指令的数量;Costlocal,Costshm分别指本地存储指令、共享存储指令的周期数;公式(3)中,参数TPSC是最终的执行时间。
5.如权利要求4所述协同优化编译方法,其特征是,所述性能最佳为所述最终的执行时间TPSC值最小[TLP,Reg]组合,作为寄存器分配和并行度的优化结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610805632.4A CN106648546A (zh) | 2016-09-07 | 2016-09-07 | 用于gpu寄存器分配和并行度管理的协同优化编译方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610805632.4A CN106648546A (zh) | 2016-09-07 | 2016-09-07 | 用于gpu寄存器分配和并行度管理的协同优化编译方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106648546A true CN106648546A (zh) | 2017-05-10 |
Family
ID=58851723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610805632.4A Pending CN106648546A (zh) | 2016-09-07 | 2016-09-07 | 用于gpu寄存器分配和并行度管理的协同优化编译方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106648546A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019000435A1 (zh) * | 2017-06-30 | 2019-01-03 | 华为技术有限公司 | 任务处理方法、装置、介质及其设备 |
CN109740747A (zh) * | 2018-12-29 | 2019-05-10 | 北京中科寒武纪科技有限公司 | 运算方法、装置及相关产品 |
CN110308982A (zh) * | 2018-03-20 | 2019-10-08 | 华为技术有限公司 | 一种共享内存复用方法及装置 |
CN110516795A (zh) * | 2019-08-28 | 2019-11-29 | 北京达佳互联信息技术有限公司 | 一种为模型变量分配处理器的方法、装置及电子设备 |
CN110908667A (zh) * | 2019-11-18 | 2020-03-24 | 北京迈格威科技有限公司 | 神经网络联合编译的方法、装置和电子设备 |
CN116795514A (zh) * | 2023-06-30 | 2023-09-22 | 荣耀终端有限公司 | 应用程序的线程标识方法、电子设备以及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101114243A (zh) * | 2006-07-25 | 2008-01-30 | 辉达公司 | 用以加速识别硬件平台类别的系统和方法 |
CN102831005A (zh) * | 2012-07-13 | 2012-12-19 | 天津国芯科技有限公司 | 针对C*core处理器寄存器分配的编译方法及编译器 |
CN102981807A (zh) * | 2012-11-08 | 2013-03-20 | 北京大学 | 一种基于cuda并行环境的gpu程序优化方法 |
US20130339671A1 (en) * | 2012-06-14 | 2013-12-19 | Gerard R. Williams, III | Zero cycle load |
CN103631660A (zh) * | 2013-09-23 | 2014-03-12 | 中国科学院数据与通信保护研究教育中心 | 在gpu中进行大整数计算时的存储资源分配方法及装置 |
-
2016
- 2016-09-07 CN CN201610805632.4A patent/CN106648546A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101114243A (zh) * | 2006-07-25 | 2008-01-30 | 辉达公司 | 用以加速识别硬件平台类别的系统和方法 |
US20130339671A1 (en) * | 2012-06-14 | 2013-12-19 | Gerard R. Williams, III | Zero cycle load |
CN102831005A (zh) * | 2012-07-13 | 2012-12-19 | 天津国芯科技有限公司 | 针对C*core处理器寄存器分配的编译方法及编译器 |
CN102981807A (zh) * | 2012-11-08 | 2013-03-20 | 北京大学 | 一种基于cuda并行环境的gpu程序优化方法 |
CN103631660A (zh) * | 2013-09-23 | 2014-03-12 | 中国科学院数据与通信保护研究教育中心 | 在gpu中进行大整数计算时的存储资源分配方法及装置 |
Non-Patent Citations (1)
Title |
---|
XIE等: "Enabling coordinated register allocation and thread-level parallelism optimization for GPUs", 《IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICRO ARCHITECTURE》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110088730B (zh) * | 2017-06-30 | 2021-05-18 | 华为技术有限公司 | 任务处理方法、装置、介质及其设备 |
WO2019000435A1 (zh) * | 2017-06-30 | 2019-01-03 | 华为技术有限公司 | 任务处理方法、装置、介质及其设备 |
CN110088730A (zh) * | 2017-06-30 | 2019-08-02 | 华为技术有限公司 | 任务处理方法、装置、介质及其设备 |
CN110308982B (zh) * | 2018-03-20 | 2021-11-19 | 华为技术有限公司 | 一种共享内存复用方法及装置 |
CN110308982A (zh) * | 2018-03-20 | 2019-10-08 | 华为技术有限公司 | 一种共享内存复用方法及装置 |
CN109740747B (zh) * | 2018-12-29 | 2019-11-12 | 北京中科寒武纪科技有限公司 | 运算方法、装置及相关产品 |
CN109740747A (zh) * | 2018-12-29 | 2019-05-10 | 北京中科寒武纪科技有限公司 | 运算方法、装置及相关产品 |
US11893414B2 (en) | 2018-12-29 | 2024-02-06 | Cambricon Technologies Corporation Limited | Operation method, device and related products |
CN110516795A (zh) * | 2019-08-28 | 2019-11-29 | 北京达佳互联信息技术有限公司 | 一种为模型变量分配处理器的方法、装置及电子设备 |
CN110516795B (zh) * | 2019-08-28 | 2022-05-10 | 北京达佳互联信息技术有限公司 | 一种为模型变量分配处理器的方法、装置及电子设备 |
CN110908667A (zh) * | 2019-11-18 | 2020-03-24 | 北京迈格威科技有限公司 | 神经网络联合编译的方法、装置和电子设备 |
CN110908667B (zh) * | 2019-11-18 | 2021-11-16 | 北京迈格威科技有限公司 | 神经网络联合编译的方法、装置和电子设备 |
CN116795514A (zh) * | 2023-06-30 | 2023-09-22 | 荣耀终端有限公司 | 应用程序的线程标识方法、电子设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106648546A (zh) | 用于gpu寄存器分配和并行度管理的协同优化编译方法 | |
Chen et al. | Regional eco-innovation in China: An analysis of eco-innovation levels and influencing factors | |
Zhu et al. | The impact of cross-region industrial structure optimization on economy, carbon emissions and energy consumption: A case of the Yangtze River Delta | |
Lin et al. | Energy and carbon intensity in China during the urbanization and industrialization process: A panel VAR approach | |
Qin et al. | An improved iterated greedy algorithm for the energy-efficient blocking hybrid flow shop scheduling problem | |
Nie et al. | A GEP-based reactive scheduling policies constructing approach for dynamic flexible job shop scheduling problem with job release dates | |
CN102981807B (zh) | 一种基于cuda并行环境的gpu程序优化方法 | |
DE69831344T2 (de) | Effiziente verarbeitung von gebündelten sprungbefehlen | |
CN103607466B (zh) | 一种基于云计算的广域多级分布式并行电网分析方法 | |
CN105893319A (zh) | 一种多车道/多核系统和方法 | |
CN104156269B (zh) | 一种基于时间自动机的软硬件最优划分的可视化方法 | |
CN109242298A (zh) | 一种智能派工过程中的工单分配方法及装置 | |
Woitaszek et al. | Parallel high-resolution climate data analysis using swift | |
Nagesha | Role of energy efficiency in sustainable development of small-scale industry clusters: an empirical study | |
CN105653243B (zh) | 一种通用图形处理器多任务并发执行的任务派发方法 | |
CN106055862A (zh) | 一种新型高效的启发式两阶段并行分支定界方法 | |
Zhang et al. | An improvement of resource-constrained multi-project scheduling model based on priority-rule based heuristics | |
Wang et al. | Efficiency measures and influencing factors for rural land outsourcing: Evidence from China, 2003–2015 | |
Kalinowski | Crisis management and the varieties of capitalism: Fiscal stimulus packages and the transformation of East Asian state-led capitalism since 2008 | |
CN106354433A (zh) | 分布式内存存储系统的热点数据挖掘方法及装置 | |
Zhu et al. | A multi-objective model for multi-skill project scheduling problem considering perform efficiency | |
Kasztelan | Eco-innovation as a driver of regional smart specialization: the case of Lublin province | |
Prokopenko et al. | Complex method of strategic decision-making in management of technological complexes of continuous type | |
CN106775595B (zh) | Mips平台数据访问方法和装置 | |
Komkov et al. | Information technology for the development and management of innovative projects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170510 |
|
WD01 | Invention patent application deemed withdrawn after publication |