欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于GPU排序的MapReduce優(yōu)化方法與流程

文檔序號(hào):12550306閱讀:345來(lái)源:國(guó)知局
基于GPU排序的MapReduce優(yōu)化方法與流程

本發(fā)明涉及MapReduce技術(shù),尤其涉及一種MapReduce的優(yōu)化處理方法。



背景技術(shù):

MapReduce是一種分布式編程框架,在云計(jì)算和大數(shù)據(jù)處理中應(yīng)用非常廣泛。MapReduce流程如圖1所示,分為Map、Shuffle和Reduce三個(gè)階段,Map和Reduce階段分別執(zhí)行用戶(hù)編寫(xiě)的Map()和Reduce()程序,而Shuffle階段介于Map階段和Reduce階段中間,用于對(duì)Map階段產(chǎn)生的中間結(jié)果進(jìn)行處理,為Reduce階段準(zhǔn)備數(shù)據(jù)。具體而言,Map階段包括如下幾個(gè)步驟:

數(shù)據(jù)讀入(Read):從分布式文件系統(tǒng)中讀入數(shù)據(jù);

Map執(zhí)行(Map):執(zhí)行用戶(hù)編寫(xiě)的Map()函數(shù);

數(shù)據(jù)收集(Collect):將Map產(chǎn)生的結(jié)果存入緩沖區(qū);

緩存溢寫(xiě)(Spill):當(dāng)緩存中數(shù)據(jù)量超過(guò)閾值時(shí),將緩存中的數(shù)據(jù)寫(xiě)入本地硬盤(pán);

溢寫(xiě)合并(Merge):多次緩存溢寫(xiě)會(huì)產(chǎn)生多個(gè)溢寫(xiě)文件,需要將所有的溢寫(xiě)文件合并成一個(gè)輸出文件。

Shuffle階段的詳細(xì)操作如下:

中間數(shù)據(jù)傳輸(Copy):將Map端的中間結(jié)果通過(guò)網(wǎng)絡(luò)傳輸?shù)絉educe端的緩沖區(qū);

緩存溢寫(xiě)(Spill):Reduce端的緩沖區(qū)數(shù)據(jù)量超過(guò)閾值時(shí),將緩沖區(qū)數(shù)據(jù)寫(xiě)入本地硬盤(pán),每次寫(xiě)入形成一個(gè)shuffle文件;

Reduce階段的具體流程如下:

Shuffle文件合并(Merge):在Reduce端將大量的shuffle文件合并形成少量的大文件,并將大文件合并形成一個(gè)有序的大文件;

Reduce執(zhí)行(Reduce):執(zhí)行用戶(hù)編寫(xiě)的Reduce()函數(shù);

數(shù)據(jù)輸出(Output):將Reduce產(chǎn)生的結(jié)果輸出到分布式文件系統(tǒng)。

從以上分析可以看出MapReduce框架對(duì)中間結(jié)果的處理非常復(fù)雜,需要花費(fèi)大量的處理時(shí)間,尤其是其中包含的四次排序操作:①M(fèi)ap階段的Spill過(guò)程中,每次溢寫(xiě)時(shí)需要將溢寫(xiě)文件進(jìn)行排序,一般采用快速排序方法;②Map階段的Merge過(guò)程中,溢寫(xiě)文件合并步驟采用歸并排序的方法;③Reduce階段的Merge過(guò)程中,采用歸并排序方法將大量的shuffle文件合并成少量的大文件;④Reduce階段的Merge過(guò)程中,采用堆排序方法將多個(gè)大文件合并成為一個(gè)有序的大文件。由于常用的基于CPU的排序算法的時(shí)間復(fù)雜度通常為O(N·logN),其中N為待排序數(shù)據(jù)個(gè)數(shù)或記錄條數(shù),當(dāng)數(shù)據(jù)量很大時(shí)排序操作消耗的時(shí)間很長(zhǎng),而MapReduce通常用于大數(shù)據(jù)處理。

GPU因其強(qiáng)大的計(jì)算能力以及相對(duì)較低的性能價(jià)格比,通常用GPU替代CPU用以提高任務(wù)處理性能。使用GPU對(duì)MapReduce進(jìn)行優(yōu)化的方法主要有兩類(lèi),一是與用戶(hù)程序相關(guān)的優(yōu)化方法,即對(duì)MapReduce框架進(jìn)行擴(kuò)展,使MapReduce程序執(zhí)行過(guò)程中可以使用GPU設(shè)備替代CPU,提高程序執(zhí)行效率;二是與用戶(hù)程序無(wú)關(guān)的優(yōu)化方法,即修改MapReduce框架或者組件,使MapReduce框架更好的發(fā)揮GPU性能,從而提高效率。用戶(hù)程序相關(guān)的優(yōu)化方法需要用戶(hù)參與進(jìn)行任務(wù)分配,需要用戶(hù)對(duì)程序的處理流程和GPU的編程規(guī)范非常熟悉,并且不同的用戶(hù)程序之間優(yōu)化方法不可重用。而現(xiàn)有的基于GPU排序的MapReduce優(yōu)化方法只針對(duì)第一次排序過(guò)程的優(yōu)化,即將基于CPU的快速排序算法替換成基于GPU的快速排序算法或者基于GPU的雙調(diào)排序算法,而對(duì)于其他三次排序操作并不關(guān)注,對(duì)MapReduce性能的提升有限。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提出一種基于GPU排序的MapReduce優(yōu)化方法,將MapReduce執(zhí)行流程中的四次排序操作全部使用GPU執(zhí)行,并分別使用基于GPU的快速排序和歸并排序算法替代傳統(tǒng)的基于CPU的快速排序、歸并排序和堆排序算法,提高中間數(shù)據(jù)處理速度,進(jìn)而提升MapReduce的性能。為實(shí)現(xiàn)本發(fā)明的目的,本發(fā)明的基于GPU排序的MapReduce優(yōu)化方法中,MapReduce包含:Map階段、Shuffle階段、以及Reduce階段,Map階段包含Spill過(guò)程和Merge過(guò)程,Reduce階段包含Merge過(guò)程,其中,在Map階段的Spill過(guò)程中采用基于GPU的快速排序流程,在Map階段的Merge過(guò)程中和Reduce階段的Merge過(guò)程中采用基于GPU的歸并排序流程,其中:

基于GPU的快速排序流程包含步驟:

(1.1)將數(shù)據(jù)存入GPU的全局存儲(chǔ)空間,并劃分成m個(gè)互不重疊的數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊由一個(gè)線程塊處理;

(1.2)m個(gè)線程塊并行地遍歷對(duì)應(yīng)的數(shù)據(jù)塊,每個(gè)線程塊內(nèi)部n個(gè)線程并行地遍歷相應(yīng)數(shù)據(jù)塊的一部分,并記錄大于和小于分界值的元素的個(gè)數(shù);

(1.3)依次統(tǒng)計(jì)每個(gè)線程塊內(nèi)部的每個(gè)線程的相對(duì)計(jì)數(shù)值;

(1.4)依次統(tǒng)計(jì)每個(gè)線程塊的計(jì)數(shù)值和相對(duì)計(jì)數(shù)值;

(1.5)所有線程進(jìn)行數(shù)據(jù)交換,序列分成大于分界值和小于分界值的兩個(gè)子序列:子序列1,、子序列2;

(1.6)對(duì)步驟(1.5)中產(chǎn)生的子序列1、子序列2分別再采用步驟(1.1)-(1.5)進(jìn)行排序,直到最終排序完成,即可實(shí)現(xiàn)對(duì)原始序列的排序,

基于GPU的歸并排序流程包含步驟:

(2.1)將待歸并的序列兩兩分組,分成h組,每組序列包含Ai和Bi兩個(gè)序列,每次對(duì)一組序列Ai和Bi進(jìn)行歸并,其中1≤i≤h,Ai和Bi表示第i個(gè)分組包含的兩個(gè)序列;

(2.2)分別將Ai和Bi劃分成m個(gè)子序列,每個(gè)線程塊對(duì)Ai的一個(gè)子序列和Bi的一個(gè)子序列進(jìn)行歸并,共需進(jìn)行l(wèi)og2 m+1輪子序列的歸并即可將序列Ai和Bi歸并為一個(gè)有序序列Ci;

(2.3)重復(fù)步驟(2.2),直到所有分組的序列Ai和Bi歸并完成,分別產(chǎn)生每個(gè)分組的歸并結(jié)果C1、C2、……、Ch;其中1≤i≤h,Ai和Bi表示第i個(gè)分組包含的兩個(gè)序列,Ci為Ai和Bi歸并完成后產(chǎn)生的有序序列;

(2.4)對(duì)h個(gè)分組的歸并結(jié)果C1、C2、……、Ch,重復(fù)步驟(2.1)-(2.3)進(jìn)行歸并,直到產(chǎn)生最終歸并結(jié)果。

進(jìn)一步地,在步驟(1.3)中,線程塊Bk(1≤k≤m)中的每個(gè)線程的計(jì)數(shù)值分別為L(zhǎng)k,1,...,Lk,n和Rk,1,...,Rk,n,則第i(1≤i≤n)個(gè)線程的相對(duì)計(jì)數(shù)值分別為:

其中Lk,1和Rk,1分別表示線程塊Bk中第1個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)個(gè)數(shù)和比分界值大的數(shù)據(jù)個(gè)數(shù),Lk,n和Rk,n分別表示線程塊Bk中第n個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)個(gè)數(shù)和比分界值大的數(shù)據(jù)個(gè)數(shù),Lk,j和Rk,j分別表示線程塊Bk中第j個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)個(gè)數(shù)和比分界值大的數(shù)據(jù)個(gè)數(shù),BLk,i和BRk,i分別表示線程塊Bk中第i個(gè)線程的相對(duì)計(jì)數(shù)值,即該線程塊中前i-1個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)總量和比分界值大的數(shù)據(jù)總量。

進(jìn)一步地,在步驟(1.4)中,線程塊Bk(1≤k≤m)的計(jì)數(shù)值分別為和線程塊Bk的相對(duì)計(jì)數(shù)值分別為和其中Lk、Lj和Rk、Rj分別表示線程塊Bk和Bj遍歷的數(shù)據(jù)塊內(nèi)小于分界值的數(shù)據(jù)總量和大于分界值的數(shù)據(jù)總量,SLk和SRk分別表示線程塊Bk之前的k-1個(gè)線程塊遍歷的數(shù)據(jù)塊中小于分界值的數(shù)據(jù)總量和大于分界值的數(shù)據(jù)總量。

進(jìn)一步地,在步驟(1.5)中,每個(gè)線程塊中每個(gè)線程將其遍歷的小于分界值的數(shù)據(jù)依次交換到分界值左側(cè),大于分界值的數(shù)據(jù)依次交換到分界值右側(cè),然后每個(gè)線程塊將對(duì)應(yīng)位置的數(shù)據(jù)塊寫(xiě)入輔助單元,加入分界值并根據(jù)分界值將序列分成比分界值小和比分界值大的兩個(gè)子序列:子序列1和子序列2。

進(jìn)一步地,在步驟(2.2)中,包含以下子步驟:

(2.21)對(duì)于Ai和Bi的第k輪歸并(0≤k≤log2 m),產(chǎn)生m/2k個(gè)歸并結(jié)果R1,R2,……,Rkr,并將每個(gè)歸并結(jié)果Rp(1≤p≤kr)劃分為2k個(gè)子序列Rp,1,Rp,2,……,Rp,km;其中kr(kr=m/2k)表示序列Ai和Bi的第k輪歸并產(chǎn)生的歸并結(jié)果數(shù)量,R1、R2和Rkr分別表示第1個(gè)、第2個(gè)以及第kr個(gè)歸并結(jié)果,km(其中km=2k)表示序列Ai和Bi的第k輪歸并產(chǎn)生的每個(gè)歸并結(jié)果劃分的子序列個(gè)數(shù),Rp,1、Rp,2和Rp,km分別表示第p(1≤p≤kr)個(gè)歸并結(jié)果劃分后的第1個(gè)、第2個(gè)和第km個(gè)子序列;

(2.22)對(duì)于Ai和Bi的第k+1輪歸并(0≤k<log2 m),將第k輪產(chǎn)生的m/2k個(gè)歸并結(jié)果依次兩兩分組(R1,R2),...,(Rkr-1,Rkr),每一組歸并結(jié)果(Ri-1,Ri)(1≤i≤m/2k)相同位置的子序列由同一線程塊進(jìn)行歸并,即子序列Ri-1,1和Ri,1、Ri-1,2和Ri,2、...、Ri-1,km和Ri,km分別由一個(gè)線程塊進(jìn)行歸并,本輪參與歸并操作的線程塊數(shù)量為m;

(2.23)重復(fù)子步驟(2.21)-(2.22),直到序列Ai和Bi歸并完成,輸出該分組的歸并結(jié)果Ci。

在本發(fā)明中,通過(guò)在Map階段的Spill過(guò)程中將基于CPU的快速排序替換為基于GPU的快速排序;在Map階段的Merge過(guò)程中將基于CPU的歸并排序替換為基于GPU的歸并排序;在Reduce階段的Merge過(guò)程中,將基于CPU的歸并排序和堆排序均替換為基于GPU的歸并排序。由GPU實(shí)現(xiàn)的歸并排序的性能比堆排序的性能更優(yōu),且Merge過(guò)程中的堆排序本質(zhì)上是將有序的大文件合并為一個(gè)大文件。因此本發(fā)明的基于GPU排序的MapReduce優(yōu)化方法充分利用了GPU設(shè)備強(qiáng)大的計(jì)算能力替代CPU完成MapReduce對(duì)中間結(jié)果的排序,將MapReduce中四次基于CPU的排序操作(包括一次快速排序、兩次歸并排序和一次堆排序)替換為基于GPU的快速排序和歸并排序操作,加快排序的速度,進(jìn)而很大程度地提高了MapReduce的性能。

相比傳統(tǒng)的入侵檢測(cè)系統(tǒng)中網(wǎng)絡(luò)日志采集和存儲(chǔ)方法,本發(fā)明具有如下優(yōu)點(diǎn):

①用基于GPU的排序算法替代基于CPU的排序算法,充分利用GPU的強(qiáng)大計(jì)算能力,提高中間數(shù)據(jù)處理速度,進(jìn)而提升MapReduce性能;

②不需要對(duì)MapReduce框架進(jìn)行修改,只替換對(duì)中間結(jié)果的排序算法,實(shí)現(xiàn)難度較??;

③可以與其他基于用戶(hù)程序的優(yōu)化方法以及基于MapReduce框架的優(yōu)化方法同時(shí)使用,適用范圍廣泛;

④由于GPU設(shè)備的應(yīng)用越來(lái)越多,很多服務(wù)器和個(gè)人計(jì)算機(jī)均已配置GPU設(shè)備,因此本發(fā)明可以充分發(fā)揮現(xiàn)有GPU設(shè)備的計(jì)算能力,即便新購(gòu)買(mǎi)GPU設(shè)備的硬件成本也不高。

附圖說(shuō)明

下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步描寫(xiě)和闡述。

圖1是現(xiàn)有技術(shù)中MapReduce的流程圖。

圖2是本發(fā)明首選實(shí)施方式的優(yōu)化方法中基于GPU的快速排序流程。

圖3是本發(fā)明首選實(shí)施方式的優(yōu)化方法中基于GPU的歸并排序流程的一個(gè)流程示例。

具體實(shí)施方式

如現(xiàn)有技術(shù)中所述,MapReduce包含:Map階段、Shuffle階段、以及Reduce階段,Map階段包含Spill過(guò)程和Merge過(guò)程,Reduce階段包含Merge過(guò)程。

本發(fā)明的基于GPU排序的MapReduce優(yōu)化方法中,采用GPU快速排序替代Map階段的Spill過(guò)程中基于CPU的快速排序;采用基于GPU的歸并排序替代Map階段的Merge過(guò)程中基于CPU的歸并排序;采用基于GPU的歸并排序替代Reduce階段的Merge過(guò)程中基于CPU的歸并排序。

基于GPU的快速排序流程包含:

(1.1)將數(shù)據(jù)存入GPU的全局存儲(chǔ)空間,并劃分成m個(gè)互不重疊的數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊由一個(gè)線程塊處理;如圖2中a序列劃分和b線程遍歷所示;

(1.2)m個(gè)線程塊并行地遍歷對(duì)應(yīng)的數(shù)據(jù)塊,每個(gè)線程塊內(nèi)部n個(gè)線程并行地遍歷相應(yīng)數(shù)據(jù)塊的一部分,并記錄大于和小于分界值的元素的個(gè)數(shù);如圖2中c遍歷計(jì)數(shù)所示;

(1.3)依次統(tǒng)計(jì)每個(gè)線程塊內(nèi)部的每個(gè)線程的相對(duì)計(jì)數(shù)值;在圖2中d技術(shù)累加中進(jìn)行;其中線程塊Bk(1≤k≤m)中的每個(gè)線程的計(jì)數(shù)值分別為L(zhǎng)k,1,...,Lk,n和Rk,1,...,Rk,n,則第i(1≤i≤n)個(gè)線程的相對(duì)計(jì)數(shù)值分別為:

其中Lk,1和Rk,1分別表示線程塊Bk中第1個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)個(gè)數(shù)和比分界值大的數(shù)據(jù)個(gè)數(shù),Lk,n和Rk,n分別表示線程塊Bk中第n個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)個(gè)數(shù)和比分界值大的數(shù)據(jù)個(gè)數(shù),Lk,j和Rk,j分別表示線程塊Bk中第j個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)個(gè)數(shù)和比分界值大的數(shù)據(jù)個(gè)數(shù),BLk,i和BRk,i分別表示線程塊Bk中第i個(gè)線程的相對(duì)計(jì)數(shù)值,即該線程塊中前i-1個(gè)線程遍歷的數(shù)據(jù)中比分界值小的數(shù)據(jù)總量和比分界值大的數(shù)據(jù)總量。

(1.4)依次統(tǒng)計(jì)每個(gè)線程塊的計(jì)數(shù)值和相對(duì)計(jì)數(shù)值;在圖2中d技術(shù)累加中進(jìn)行;線程塊Bk(1≤k≤m)的計(jì)數(shù)值分別為和線程塊Bk的相對(duì)計(jì)數(shù)值分別為和

其中Lk、Lj和Rk、Rj分別表示線程塊Bk和Bj遍歷的數(shù)據(jù)塊內(nèi)小于分界值的數(shù)據(jù)總量和大于分界值的數(shù)據(jù)總量,SLk和SRk分別表示線程塊Bk之前的k-1個(gè)線程塊遍歷的數(shù)據(jù)塊中小于分界值的數(shù)據(jù)總量和大于分界值的數(shù)據(jù)總量。

(1.5)所有線程進(jìn)行數(shù)據(jù)交換,序列分成大于分界值和小于分界值的兩個(gè)子序列:子序列1,、子序列2;如圖2中所示e數(shù)據(jù)交換、f數(shù)據(jù)回寫(xiě)、g劃分子序列,其中e數(shù)據(jù)交換后進(jìn)行f數(shù)據(jù)回寫(xiě),數(shù)據(jù)回寫(xiě)完畢形成兩子序列,即g劃分子序列;更具體一點(diǎn),首先每個(gè)線程塊中每個(gè)線程將其遍歷的小于分界值的數(shù)據(jù)依次交換到分界值左側(cè),大于分界值的數(shù)據(jù)依次交換到分界值右側(cè),如第k個(gè)線程塊的第i個(gè)線程中小于分界值的數(shù)據(jù)從序列的SLk+BLk,i位置依次存放至SLk+BLk,i+Lk,i位置,然后每個(gè)線程塊將對(duì)應(yīng)位置的數(shù)據(jù)塊寫(xiě)入輔助單元,加入分界值并根據(jù)分界值將序列分成比分界值小和比分界值大的兩個(gè)子序列:子序列1和子序列2。

(1.6)對(duì)步驟(1.5)中產(chǎn)生的子序列1、子序列2分別再采用步驟(1.1)-(1.5)進(jìn)行排序,直到最終排序完成,即可實(shí)現(xiàn)對(duì)原始序列的排序。

為了提高GPU的利用率,基于GPU的歸并排序方法的具體操作步驟如下:

(2.1)將待歸并的序列兩兩分組,分成h組,每組序列包含Ai和Bi兩個(gè)序列,每次對(duì)一組序列Ai和Bi進(jìn)行歸并,其中1≤i≤h,Ai和Bi表示第i個(gè)分組包含的兩個(gè)序列;

(2.2)分別將Ai和Bi劃分成m個(gè)子序列,每個(gè)線程塊對(duì)Ai的一個(gè)子序列和Bi的一個(gè)子序列進(jìn)行歸并,共需進(jìn)行l(wèi)og2 m+1輪子序列的歸并即可將序列Ai和Bi歸并為一個(gè)有序序列Ci;更具體地,步驟(2.2)細(xì)化為下面子步驟:

(2.21)對(duì)于Ai和Bi的第k輪歸并(0≤k≤log2 m),產(chǎn)生m/2k個(gè)歸并結(jié)果R1,R2,……,Rkr,并將每個(gè)歸并結(jié)果Rp(1≤p≤kr)劃分為2k個(gè)子序列Rp,1,Rp,2,……,Rp,km;其中kr(kr=m/2k)表示序列Ai和Bi的第k輪歸并產(chǎn)生的歸并結(jié)果數(shù)量,R1、R2和Rkr分別表示第1個(gè)、第2個(gè)以及第kr個(gè)歸并結(jié)果,km(其中km=2k)表示序列Ai和Bi的第k輪歸并產(chǎn)生的每個(gè)歸并結(jié)果劃分的子序列個(gè)數(shù),Rp,1、Rp,2和Rp,km分別表示第p(1≤p≤kr)個(gè)歸并結(jié)果劃分后的第1個(gè)、第2個(gè)和第km個(gè)子序列;

(2.22)對(duì)于Ai和Bi的第k+1輪歸并(0≤k<log2 m),將第k輪產(chǎn)生的m/2k個(gè)歸并結(jié)果依次兩兩分組(R1,R2),...,(Rkr-1,Rkr),每一組歸并結(jié)果(Ri-1,Ri)(1≤i≤m/2k)相同位置的子序列由同一線程塊進(jìn)行歸并,即子序列Ri-1,1和Ri,1、Ri-1,2和Ri,2、...、Ri-1,km和Ri,km分別由一個(gè)線程塊進(jìn)行歸并,本輪參與歸并操作的線程塊數(shù)量為m;

(2.23)重復(fù)子步驟(2.21)-(2.22),直到序列Ai和Bi歸并完成,輸出該分組的歸并結(jié)果Ci

(2.3)重復(fù)步驟(2.2),直到所有分組的序列Ai和Bi歸并完成,分別產(chǎn)生每個(gè)分組的歸并結(jié)果C1、C2、……、Ch;其中1≤i≤h,Ai和Bi表示第i個(gè)分組包含的兩個(gè)序列,Ci為Ai和Bi歸并完成后產(chǎn)生的有序序列;

(2.4)對(duì)h個(gè)分組的歸并結(jié)果C1、C2、……、Ch,重復(fù)步驟(2.1)-(2.3)進(jìn)行歸并,直到產(chǎn)生最終歸并結(jié)果。

圖3所示為子序列A1和B1劃分為4個(gè)子序列,采用4個(gè)線程塊進(jìn)行歸并排序的流程示例,其中G1、G2、G3、……、Gn表示用以進(jìn)行子序列歸并的第1、2、3...n個(gè)線程塊,每個(gè)線程塊在每一輪歸并中處理的子序列不同,Ri,j(1≤i≤n,1≤j≤n)表示每輪歸并過(guò)程中產(chǎn)生的第i個(gè)歸并結(jié)果的第j個(gè)子序列。

上述具體實(shí)施方式僅僅對(duì)本發(fā)明的優(yōu)選實(shí)施方式進(jìn)行描述,而并非對(duì)本發(fā)明的保護(hù)范圍進(jìn)行限定。在不脫離本發(fā)明設(shè)計(jì)構(gòu)思和精神范疇的前提下,本領(lǐng)域的普通技術(shù)人員根據(jù)本發(fā)明所提供的文字描述、附圖對(duì)本發(fā)明的技術(shù)方案所作出的各種變形、替代和改進(jìn),均應(yīng)屬于本發(fā)明的保護(hù)范疇。本發(fā)明的保護(hù)范圍由權(quán)利要求確定。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
黑山县| 屏边| 迭部县| 贵溪市| 积石山| 阜南县| 甘泉县| 博罗县| 镇坪县| 贵德县| 迭部县| 洪江市| 靖边县| 九龙城区| 三河市| 长葛市| 洮南市| 筠连县| 仪陇县| 新闻| 安新县| 郁南县| 鄂伦春自治旗| 洪洞县| 嘉禾县| 盖州市| 罗甸县| 南昌县| 定西市| 惠水县| 桐城市| 黄石市| 余江县| 仪陇县| 龙州县| 巨鹿县| 邯郸县| 广东省| 海原县| 苍梧县| 安福县|