CN103942084A - 虚拟化环境中应用共存分析方法及装置 - Google Patents
虚拟化环境中应用共存分析方法及装置 Download PDFInfo
- Publication number
- CN103942084A CN103942084A CN201310023493.6A CN201310023493A CN103942084A CN 103942084 A CN103942084 A CN 103942084A CN 201310023493 A CN201310023493 A CN 201310023493A CN 103942084 A CN103942084 A CN 103942084A
- Authority
- CN
- China
- Prior art keywords
- application
- resource
- probability
- kinds
- resources
- 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.)
- Granted
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供虚拟化环境应用共存分析方法及设备。首先计算应用A和应用B竞争各类资源的概率,然后根据应用A和应用B竞争各类资源的概率来分析应用A和应用B是否适合共存。该方法对应用进行细粒度量化分析,根据分析结果,按照应用对资源的使用状况确定应用是否可以共存,这样既能达到使用虚拟化技术提高资源利用率的目标,也能为共存状态下应用的性能提供保障。
Description
技术领域
本发明涉及虚拟机的迁移和部署,尤其涉及在虚拟机的迁移和部署中的应用共存分析。
背景技术
虚拟化技术产生于上世纪六十年代,到目前为止,已经被应用于很多行业和领域,并且在未来将有更广泛的使用。通过虚拟化技术,可以提高服务器的利用率,提高服务的稳定性和健壮性以及软件的可移植性。
应用共存分析在虚拟机的部署和迁移中始终占据重要地位。其分析粒度直接影响应用部署、迁移算法的设计。参考文献1(Anh Vu Do,JunliangChen,,Chen Wang,Young Choon Lee,Albert Y. Zomaya,and Bing Bing Zhou,“ProfilingApplicationsfor Virtual Machine Placement in CloudsProfiling Applicationsfor VirtualMachine Placement in Clouds”,2011IEEE4th International Conference on CloudComputing)中提出基于黑盒模式的CCA统计推理分析方法,但其方法只能静态的得到应用间相互影响的程度,而应用之间的影响是动态的,应用在不同的负载特征下,对资源的利用规律是不是同的,因此,简单的静态分析结果与应用实际运行时的状态是有差异的。并且这样的黑盒分析不能定位到应用间产生影响的具体原因。参考文献2(ChingChuen,Teck Mark,DusitNiyato,Tham Chen-Khong,,“Evolutionary Optimal Virtual Machine PlacementandDemand Forecaster for Cloud Computing",2011International Conference onAdvanced Information Networking and Applications)在解决虚拟机部署问题时提出一种分析应用的模型,但该模型的目标是预测应用执行时对各种资源的需求量,根据两个应用对资源需求量的加和是否超过物理机的资源总量来判断两个应用是否能够共存。这种方法没有考虑到不同应用之间共享资源造成的相互影响,如两个I/O密集型的应用共享同一服务器时,其性能下降可超过10倍。两类应用对于资源的需求总和往往不能进行简单的相加,上下文的切换、存储介质访问规律的打乱都会使得应用性能受到显著影响。参考文献3(Jason Sonnek and Abhishek Chandra,“Virtual Putty:Reshaping thePhysical Footprint of Virtual Machines”,San Diego,CA,for HotCloud'09)通过VM的footprint分析应用间是否在网络通信及内存使用上有交互,选择将具有频繁通信的应用部署在同一服务器上。但在实际情况中,常常需要考虑相对独立的多个应用的部署问题,在这种情况下,使用footprint的方法并不合适。使用这些方法无法解决计算系统的高利用率和应用服务水平协议SLA(Service-Level Agreement)独占要求间的矛盾。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种虚拟化环境应用共存分析方法,既可以提高资源利用率又可以为共存状态下的应用的性能提供保障。
本发明的目的是通过以下技术方案实现的:
一方面,在本发明的一个实施例中,提供一种确定应用之间竞争资源的方法,所述方法包括:
步骤1)从在预定的监控时间段内应用A独占物理机时的执行路径和应用B独占物理机时的执行路径获取应用A和应用B在硬件驱动层对某类资源的请求情况;
步骤2)根据应用A和应用B对该类资源的请求情况,计算应用A和应用B竞争该类资源的概率。
上述方法中,所述步骤1)中所述资源类型可以为处理器、网络、磁盘或内存。
上述方法中,所述步骤1)中应用A或B独占物理机时的执行路径可以是应用A或B在中间件,库,文件,操作系统,硬件驱动这五个层次中的函数调用关系。
上述方法中,所述步骤1)中对某类资源的请求情况可包括应用A或B中的系统调用请求的资源类型、请求该类资源的时间点、占用该类资源的时间段。
上述方法中,所述步骤2)中应用A和应用B竞争某类资源的概率可以等于应用A和应用B同时需要使用该资源的时间段之和除以进行监控的时间段。
又一方面,在本发明的一个实施例中,提供一种虚拟化环境应用共存分析方法,所述方法包括:
步骤a)采用上述的确定应用之间竞争资源的方法来计算应用A和应用B竞争各类资源的概率;
步骤b)根据应用A和应用B竞争各类资源的概率来分析应用A和应用B是否适合共存。
在上述应用共存分析方法中,所述步骤1)中所述资源类型可包括处理器、网络、磁盘、内存。
在上述应用共存分析方法中,所述步骤b)可包括以下步骤:
步骤b1)根据硬件条件,设置各类资源在此次分析中的权重;
步骤b2)根据应用A和应用B竞争各类资源的概率和所设置的各类资源的权重,计算应用A和应用B之间的影响系数;
步骤b3)将应用A和应用B之间的影响系数与预定阈值进行比较,以确定应用A和应用B是否适合共存。
在上述应用共存分析方法中,所述步骤b2)中应用A和应用B之间的影响系数=P内存*m%+P磁盘*d%+P网络*n%+Pcpu*c%,其中,P内存、P网络、P磁盘、Pcpu分别表示应用A和应用B竞争磁盘、网络、内存、处理器的概率,c%+m%+d%+n%=100%。
又一方面,在本发明的一个实施例中,提供一种确定应用之间竞争资源的设备,包括:
用于从在预定的监控时间段内应用A独占物理机时的执行路径和应用B独占物理机时的执行路径获取应用A和应用B在硬件驱动层对某类资源的请求情况的装置;
用于根据应用A和应用B对该类资源的请求情况,计算应用A和应用B竞争该类资源的概率的装置。
又一方面,在本发明的一个实施例中,提供一种虚拟化环境应用共存分析设备,包括:
用于采用上述的确定应用之间竞争资源的方法来计算应用A和应用B竞争各类资源的概率的装置;
用于根据应用A和应用B竞争各类资源的概率来分析应用A和应用B是否适合共存的装置。
与现有技术相比,本发明的优点在于:
对应用的细粒度量化分析,根据分析结果,按照应用对资源的使用状况确定应用是否可以共存,这样既能达到使用虚拟化技术提高资源利用率的目标,也能为共存状态下应用的性能提供保障。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的应用对CPU占用情况示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
根据本发明的一个实施例,提出了一种确定应用之间竞争资源的方法。该方法主要包括下列步骤:
步骤1)、获取预定的监控时间段内应用A独占物理机时的执行路径和应用B独占物理机时的执行路径。
应用独占物理机时的执行路径指该应用在中间件,库,文件,操作系统,硬件驱动这五个层次中的函数调用关系。也就是说应用独占物理机时的执行路径实际上是该应用在执行时的函数调用图。例如,作为一个示例:一个应用层的read操作通过Int80中断触发与处理调用(以下用->表示“调用”)文件系统层的sys_read,sys_read调用fget等,一直调用下去,直到硬件设备做出具体的响应。该函数调用关系可表示为:
read->sys_read->fget->vfs_read->generic_file_read->find_page_nolock->_add_to_page_cache->generic_file_readahead->page_cache_read->Ext2_readpage->mpage_readpage->mpage_bio_submit->submit_bio->generic_make_reqquest->blk_partition_remap->make_requeue_fn->blk_requeue_make_request->__make_requeue->Requeue_fn->设备访问。
通过分析某个应用独占物理机时的执行路径中的系统调用函数能够得到该应用对某种硬件资源的请求情况,如通过上述应用层的read操作的执行路径,可以得到磁盘设备读操作的时间点,通过read的数据量可以分析得到占用磁盘的时间段信息;通过每个函数对应的汇编语句可以分析得到执行这段代码所需要占用的CPU时间片信息等。
其中,应用独占物理机时的执行路径可以利用路径追踪工具来获取。例如,采用CrossWalk(Alexander V.Mirgorodskiy and Barton P.Miller,“CrossWalk:A Tool for Performance Profiling Across the User-KernelBoundary”)、或CodeViz(http://www.csn.ul.ie/~mel/projects/codeviz)等路径追踪工具来获取预定的监控时间段内某个应用独占物理机时的执行路径。
步骤2)、从所获取的应用独占物理机时的执行路径中分别获取应用A和应用B在硬件驱动层对某类资源的请求情况。
例如,获取应用A在硬件驱动层对某类资源的请求状况,可以包括例如从应用A独占物理机时的执行路径获取应用A的系统调用请求的资源类型(cpu、网络、磁盘或内存)、请求该类资源的时间点、占用该类资源的时间段。获取应用B在硬件驱动层对某类资源的请求状况,可以包括从应用B独占物理机时的执行路径获取应用B的系统调用请求的资源类型(cpu、网络、磁盘或内存)、请求该类资源的时间点、占用该类资源的时间段。
步骤3)根据应用A和应用B对该类资源的请求情况,计算应用A和应用B竞争该类资源的概率。其中所述资源类型可以为处理器(CPU)、网络、磁盘或内存。
根据本发明的一个实施例,对于某类资源,可以采用下述方法来计算应用A和应用B竞争该类资源的概率。以计算应用A和应用B竞争CPU的概率为例,可以包括下面的步骤:
步骤3-1)、将应用A和应用B对cpu的利用情况绘图,如图1所示。图1中纵坐标为对cpu资源的占用情况:0表示未占用cpu资源,1表示占用cpu资源;横坐标为时间轴。图1中①部分为应用A对cpu的使用情况,图1中②部分为应用B对cpu的使用情况,图1中③部分为应用A和应用B对cpu资源请求的重合部分。
步骤3-2)、比较应用A对cpu的占用时序图(图1中①部分)和应用B对cpu的占用时序图(图1中②部分),将两个时序图的重叠部分绘制成图1中③部分。图1③中0-t7为进行监控的时间段(即代表所获取的执行路径的时间长度),t1-t2,t3-t4,t5-t6是应用A和应用B均需要使用cpu的时间段,应用A和应用B竞争资源的概率Pcpu=(t2-t1+t4-t3+t6-t5)/t7。
从上述步骤可以看出,应用A和应用B竞争某类资源的概率可以描述为“该概率等于应用A和应用B同时需要使用该资源的时间段之和除以进行监控的时间段”。
同样,采用与上面相同的方法,可以分别计算应用A和应用B竞争磁盘,网络,内存的概率P内存,P网络,P磁盘。
根据本发明的又一个实施例,提出了一种虚拟化环境应用共存分析方法,主要包括下列步骤:
步骤A)、根据上文所述的计算应用竞争资源的概率的方法,来得到应用A和应用B竞争各类资源的概率。其中所述资源类型可以为处理器(CPU)、网络、磁盘、内存。
步骤B)根据应用A和应用B竞争各类资源的概率来分析应用A和应用B是否适合共存。
例如,如果应用A和应用B竞争各类资源的概率都比较小,则可以判断出应用A和应用B适合共存。如果应用A和应用B竞争各类资源的概率都比较大,则可以判断出应用A和应用B不适合共存。
又例如,如果应用A和应用B竞争CPU的概率较大,而应用A和应用竞争磁盘的概率较小,说明这两个应用可能都是计算密集型应用,那么对于CPU资源紧张的硬件平台而言,应用A和应用B不适合共存。如果应用A和应用B竞争磁盘的概率较大,而应用A和应用竞争CPU的概率较小,说明这两个应用可能都是访问密集型应用,那么对于磁盘资源紧张的硬件平台而言,应用A和应用B不适合共存。
在又一个实施例中,提供了一种根据硬件平台的资源状况来定量地分析应用A和应用B是否适合共存的方法。主要包括下列步骤:
(1)、根据硬件平台的资源状况(例如,服务器平台的硬件条件),设置各类资源(例如内存,网络,磁盘,cpu等)的权重。
例如,如果服务器内存的容量较大,则内存成为瓶颈的可能性相对较低,可以将内存的权重调整的较小;如果服务器网络带宽较大,则网络成为瓶颈的可能性相对较低,可以将网络的权重调整的较小;如果服务器磁盘的读写速度较快,则读写磁盘成为瓶颈的可能性相对较低,可以将磁盘的权重调整的较小;如果服务器cpu能力强,则cpu成为瓶颈的可能性相对较低,可以将cpu的权重调整的较小;但无论如何调整,内存,网络,磁盘,cpu这四项资源的权重加和始终为100%,假设内存,网络,磁盘,cpu进行调整后的权重分别为c%,m%,d%,n%。
(2)、根据所获得的应用A和应用B竞争各类资源的概率和所设置的各类资源的权重,计算应用A和应用B之间的影响系数。
例如,应用A和B竞争磁盘,网络,内存,cpu的概率分别表示为P内存,P网络,P磁盘,Pcpu,将磁盘,网络,内存,cpu的权重分别设置为c%、m%、d%、n%,则应用A和应用B之间的影响系数=P内存*m%+P磁盘*d%+P网络*n%+Pcpu*c%。该影响系数介于0~1之间,并且越趋近于1表示影响程度越大。
(3)、根据所得到的应用A和应用B之间的影响系数,来分析应用A和应用B是否适合共存。
例如,可以根据用户对应用性能要求程度来设置一个阈值,如果应用A和应用B之间的影响系数低于该阈值表示应用A和应用B适合共存,反之,如果高于该阈值表示应用A和应用B不适合共存。若用户对应用性能要求高,则可以将该阈值设置低一些,例如在0~0.5之间;反之,则可以将该阈值设置高一些(如0.5~1之间);一般情况可以该阈值设置为0.5。
在本发明的实施例中,实现了对应用的细粒度量化分析,根据分析结果,按照应用对资源的使用状况确定应用是否可以共存,这样既能达到使用虚拟化技术提高资源利用率的目标,也能为共存状态下应用的性能提供保障。
虽然本发明已经通过优选实施例进行了描述,然而本发明并非局限于这里所描述的实施例,在不脱离本发明范围的情况下还包括所作出的各种改变以及变化。
Claims (11)
1.一种确定应用之间竞争资源的方法,该方法包括:
步骤1)从在预定的监控时间段内应用A独占物理机时的执行路径和应用B独占物理机时的执行路径获取应用A和应用B在硬件驱动层对某类资源的请求情况;
步骤2)根据应用A和应用B对该类资源的请求情况,计算应用A和应用B竞争该类资源的概率。
2.根据权利要求1所述的方法,所述步骤1)中所述资源类型为处理器、网络、磁盘或内存。
3.根据权利要求1或2所述的方法,所述步骤1)中应用A或B独占物理机时的执行路径是应用A或B在中间件,库,文件,操作系统,硬件驱动这五个层次中的函数调用关系。
4.根据权利要求1或2所述的方法,所述步骤1)中对某类资源的请求情况包括应用A或B中的系统调用请求的资源类型、请求该类资源的时间点、占用该类资源的时间段。
5.根据权利要求1或2所述的方法,所述步骤2)中应用A和应用B竞争某类资源的概率等于应用A和应用B同时需要使用该资源的时间段之和除以进行监控的时间段。
6.一种虚拟化环境应用共存分析方法,所述方法包括:
步骤a)采用权利要求1-5之一所述的方法来计算应用A和应用B竞争各类资源的概率;
步骤b)根据应用A和应用B竞争各类资源的概率来分析应用A和应用B是否适合共存。
7.根据权利要求6所述的方法,所述步骤1)中所述资源类型包括处理器、网络、磁盘、内存。
8.根据权利要求6或7所述的方法,所述步骤b)包括以下步骤:
步骤b1)根据硬件条件,设置各类资源在此次分析中的权重;
步骤b2)根据应用A和应用B竞争各类资源的概率和所设置的各类资源的权重,计算应用A和应用B之间的影响系数;
步骤b3)将应用A和应用B之间的影响系数与预定阈值进行比较,以确定应用A和应用B是否适合共存。
9.根据权利要求8所述的方法,其中所述步骤b2)中应用A和应用B之间的影响系数=P内存*m%+P磁盘*d%+P网络*n%+Pcpu*c%,其中,P内存、P网络、P磁盘、Pcpu分别表示应用A和应用B竞争磁盘、网络、内存、处理器的概率,c%+m%+d%+n%=100%。
10.一种确定应用之间竞争资源的设备,包括:
用于从在预定的监控时间段内应用A独占物理机时的执行路径和应用B独占物理机时的执行路径获取应用A和应用B在硬件驱动层对某类资源的请求情况的装置;
用于根据应用A和应用B对该类资源的请求情况,计算应用A和应用B竞争该类资源的概率的装置。
11.一种虚拟化环境应用共存分析设备,包括:
用于采用权利要求1-5之一所述的方法来计算应用A和应用B竞争各类资源的概率的装置;
用于根据应用A和应用B竞争各类资源的概率来分析应用A和应用B是否适合共存的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310023493.6A CN103942084B (zh) | 2013-01-22 | 2013-01-22 | 虚拟化环境中应用共存分析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310023493.6A CN103942084B (zh) | 2013-01-22 | 2013-01-22 | 虚拟化环境中应用共存分析方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103942084A true CN103942084A (zh) | 2014-07-23 |
CN103942084B CN103942084B (zh) | 2017-04-12 |
Family
ID=51189760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310023493.6A Active CN103942084B (zh) | 2013-01-22 | 2013-01-22 | 虚拟化环境中应用共存分析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103942084B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106688210A (zh) * | 2014-08-05 | 2017-05-17 | 阿姆多克斯软件系统有限公司 | 用于扩充利用网络功能虚拟化协调器(nfv‑o)的物理系统的系统、方法和计算机程序 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499021A (zh) * | 2008-01-31 | 2009-08-05 | 国际商业机器公司 | 在多个虚拟机上动态分配资源的方法和装置 |
US20090282414A1 (en) * | 2008-05-07 | 2009-11-12 | Branda Steven J | Prioritized Resource Access Management |
CN102156665A (zh) * | 2011-04-13 | 2011-08-17 | 杭州电子科技大学 | 一种虚拟化系统竞争资源差异化服务方法 |
-
2013
- 2013-01-22 CN CN201310023493.6A patent/CN103942084B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499021A (zh) * | 2008-01-31 | 2009-08-05 | 国际商业机器公司 | 在多个虚拟机上动态分配资源的方法和装置 |
US20090282414A1 (en) * | 2008-05-07 | 2009-11-12 | Branda Steven J | Prioritized Resource Access Management |
CN102156665A (zh) * | 2011-04-13 | 2011-08-17 | 杭州电子科技大学 | 一种虚拟化系统竞争资源差异化服务方法 |
Non-Patent Citations (4)
Title |
---|
YING SONG ET AL: "《A Two-Tiered On-Demand Resource Allocation Mechanism for VM-Based Data Centers》", 《IEEE TRANSACTIONS ON SERVICES COMPUTING》 * |
宁刚: "《基于Xen虚拟机的资源管理系统的研究与实现》", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
陈荣征: "《基于主机负载预测的机群动态任务调度策略研究》", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
颜燕娜: "《虚拟机平台下虚拟资源的自适应分配策略与机制研究》", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106688210A (zh) * | 2014-08-05 | 2017-05-17 | 阿姆多克斯软件系统有限公司 | 用于扩充利用网络功能虚拟化协调器(nfv‑o)的物理系统的系统、方法和计算机程序 |
CN106688210B (zh) * | 2014-08-05 | 2020-06-26 | 阿姆多克斯软件系统有限公司 | 用于扩充利用网络功能虚拟化协调器(nfv-o)的物理系统的系统、方法和计算机程序 |
Also Published As
Publication number | Publication date |
---|---|
CN103942084B (zh) | 2017-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ashok et al. | Vehicular cloud computing through dynamic computation offloading | |
US9965324B2 (en) | Process grouping for improved cache and memory affinity | |
CN107431696B (zh) | 用于应用自动化部署的方法和云管理节点 | |
US10025364B2 (en) | GPU power measuring method of heterogeneous multi-core system | |
US8423646B2 (en) | Network-aware virtual machine migration in datacenters | |
US9619378B2 (en) | Dynamically optimizing memory allocation across virtual machines | |
US20200151018A1 (en) | Workload placement and balancing within a containerized infrastructure | |
US9098337B2 (en) | Scheduling virtual central processing units of virtual machines among physical processing units | |
US20110246995A1 (en) | Cache-aware thread scheduling in multi-threaded systems | |
US20140082202A1 (en) | Method and Apparatus for Integration of Virtual Cluster and Virtual Cluster System | |
US20180329737A1 (en) | Virtual machine batch live migration | |
CN116560846A (zh) | 基于计算系统中的利用模式的资源过度订阅 | |
RU2015114568A (ru) | Автоматизированное профилирование использования ресурса | |
US20150007177A1 (en) | Virtual machine management method and information processing apparatus | |
TWI755415B (zh) | 雲端環境下應用集群資源分配的方法、裝置和系統 | |
JP2020194524A (ja) | アクセスリクエストを管理するための方法、装置、デバイス、および記憶媒体 | |
US20170251064A1 (en) | Method and device for scheduling resources | |
US11436231B2 (en) | Continuous query scheduling and splitting in a cluster-based data storage system | |
US9542295B2 (en) | Method to apply perturbation for resource bottleneck detection and capacity planning | |
CN107624181B (zh) | 包括虚拟处理器的闲置和调度的虚拟机管理方法和装备 | |
CN114048006A (zh) | 虚拟机动态迁移方法、装置以及存储介质 | |
US20120054762A1 (en) | Scheduling apparatus and method for a multicore device | |
CN109600272A (zh) | 爬虫检测的方法及装置 | |
Liu et al. | Task offloading with execution cost minimization in heterogeneous mobile cloud computing | |
Chhabra et al. | Qualitative parametric comparison of load balancing algorithms in parallel and distributed computing environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220506 Address after: 100095 room 217, second floor, building 17, Chuangke town community supporting commercial building, Wenquan Town, Haidian District, Beijing Patentee after: Zhongkehai micro (Beijing) Technology Co.,Ltd. Address before: 100190 No. 6 South Road, Zhongguancun Academy of Sciences, Beijing, Haidian District Patentee before: Institute of Computing Technology, Chinese Academy of Sciences |