專利名稱:利用優(yōu)化地球模型表示進(jìn)行計(jì)算的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本公開(kāi)一般涉及地球模型數(shù)據(jù)的處理,尤其涉及利用地球模型表示來(lái)提高計(jì)算效率的系統(tǒng)和方法。
背景技術(shù):
諸如正演模擬和偏移的地震處理運(yùn)算需要存儲(chǔ)諸如速度、密度、各向異性參數(shù)等的地球模型參數(shù)。對(duì)于復(fù)雜模擬問(wèn)題,地球模型參數(shù)的最佳存儲(chǔ)需要大量的數(shù)據(jù)存儲(chǔ)容量。復(fù)雜地球模擬問(wèn)題的已知方法使用諸如小波或JPEG壓縮的標(biāo)準(zhǔn)壓縮方法。然而,傳統(tǒng)壓縮方法主要是為了使所需數(shù)據(jù)存儲(chǔ)的量最小而開(kāi)發(fā)的,而不是為了使地球模擬的精度和計(jì)算效率最高或使解壓的成本最低。這樣,需要在計(jì)算中使用地球模型數(shù)據(jù)集的最佳壓縮和解壓。通過(guò)最佳地解壓和有選擇地解壓數(shù)據(jù),能夠在提高計(jì)算效率的同時(shí)降低數(shù)據(jù)存儲(chǔ)要求和成本。
發(fā)明內(nèi)容
本發(fā)明公開(kāi)了一種由訪問(wèn)原始地球模型數(shù)據(jù)集的第一計(jì)算機(jī)處理器利用地球模型表示進(jìn)行計(jì)算的方法。舉例來(lái)說(shuō),原始地球模型數(shù)據(jù)集可包括未壓縮或先前壓縮的地球模型數(shù)據(jù)。第一處理器可操作與至少兩個(gè)存儲(chǔ)器通信,即,第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器,其中,第二級(jí)存儲(chǔ)器比第一級(jí)存儲(chǔ)器慢但具有更大的存儲(chǔ)容量。依照本發(fā)明的一個(gè)實(shí)施例,該方法包括通過(guò)使用第一處理器來(lái)壓縮地球模型數(shù)據(jù)集以生成查找表和多個(gè)數(shù)據(jù)索引(即,查找表和索引被統(tǒng)稱為“壓縮地球模型表示”)的步驟,其中,所述查找表包括量化數(shù)據(jù)值。所述查找表被存儲(chǔ)在第一級(jí)存儲(chǔ)器中,以及所述索引被存儲(chǔ)在第二級(jí)存儲(chǔ)器中。然后,該方法包括從第一級(jí)存儲(chǔ)器中訪問(wèn)所述查找表和從第二級(jí)存儲(chǔ)器中訪問(wèn)所述索引,以在第一處理器處有選擇地解壓所述壓縮地球模型表示和使得第一處理器能夠經(jīng)由利用解壓后的地球模型表示進(jìn)行計(jì)算的步驟。本發(fā)明的方法允許原始地球模型數(shù)據(jù)集的單次壓縮,使得它可被存儲(chǔ)在計(jì)算機(jī)處理器的本地存儲(chǔ)器中,并在需要時(shí)使用查找表被重復(fù)地有選擇地解壓。通過(guò)訪問(wèn)查找表和索引以及處理器處的解壓,解壓后的地球模型數(shù)據(jù)只駐留在進(jìn)行計(jì)算的處理器上,因此決不會(huì)從外部存儲(chǔ)器讀取。這樣,與傳統(tǒng)上從/到外部存儲(chǔ)設(shè)備存儲(chǔ)和訪問(wèn)地球模型數(shù)據(jù)或跨越相互通信的多個(gè)計(jì)算節(jié)點(diǎn)或處理器來(lái)分解和分配地球模擬問(wèn)題相比,大大增加了能夠駐留在處理設(shè)備的本地存儲(chǔ)器中的地球模型的尺寸、提高了能夠訪問(wèn)地球模型數(shù)據(jù)的速率、以及提高了計(jì)算性能。依照本發(fā)明,在計(jì)算期間可以訪問(wèn)地球模型數(shù)據(jù)的某個(gè)所選子集而不解壓整個(gè)數(shù)據(jù)集。有利的是,本發(fā)明可被用于提高需要使用地震模型數(shù)據(jù)的計(jì)算的速度和降低計(jì)算的成本,所述計(jì)算包括但不限于地震成像、正演模擬、地震偏移、波形反演和道內(nèi)插。由于解壓只需要使用第一級(jí)(快速)存儲(chǔ)器來(lái)執(zhí)行單次查找,所以該方法最適合能夠在處理器處重復(fù)地和有效地進(jìn)行的解 壓。倘若結(jié)果是查找表和多個(gè)索引值,則壓縮被執(zhí)行一次并且可以是任意復(fù)雜的。地球模型數(shù)據(jù)集的壓縮可以包括用于優(yōu)化要在計(jì)算中使用的重要或優(yōu)選地球模型數(shù)據(jù)值的表示的非均勻量化。根據(jù)采用的地球模型的類型,非均勻量化技術(shù)可以包括立方、自適應(yīng)或引導(dǎo)自適應(yīng)技術(shù)中的一種或其組合。查找表的地球模型數(shù)據(jù)值可以代表所選地球模型參數(shù),并包括導(dǎo)出值、標(biāo)量值和矢量值中的一種或多種。地球模型數(shù)據(jù)集的壓縮還可以包括用于隨機(jī)化查找表的量化數(shù)據(jù)值的抖動(dòng)步驟。該抖動(dòng)可被執(zhí)行以提高可能與實(shí)際正被壓縮的地球模型數(shù)據(jù)值不同的地下介質(zhì)的大規(guī)模屬性的精度。例如,在地球模型速度數(shù)據(jù)的壓縮中,可以使用抖動(dòng)來(lái)更好地保留通過(guò)地下介質(zhì)的慢度的分布,或更好地保留各向異性參數(shù)之間的關(guān)系??蛇x地,以及依照本發(fā)明的另一個(gè)實(shí)施例,提供具有第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器的第二“加速”處理器,第二級(jí)存儲(chǔ)器比第一級(jí)存儲(chǔ)器大而慢。有利的是,所述查找表被取而代之地存儲(chǔ)在第二處理器的第一級(jí)存儲(chǔ)器中,所述索引被取而代之地存儲(chǔ)在第二處理器的第二級(jí)存儲(chǔ)器中。然后,分別從第二處理器的第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器中訪問(wèn)查找表和索引,以便取代第一處理器而在第二處理器處有選擇地解壓壓縮地球模型表示。這使第二處理器能夠利用地球模型表示來(lái)提供更有效計(jì)算。依照本發(fā)明的另一個(gè)實(shí)施例,一種利用地球模型表示進(jìn)行計(jì)算的系統(tǒng)包括第一級(jí)存儲(chǔ)器、比第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量的第二級(jí)存儲(chǔ)器、和訪問(wèn)地球模型數(shù)據(jù)集的第一處理器,其中,第一處理器可操作與第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器通信。所述系統(tǒng)進(jìn)一步包括可被第一處理器訪問(wèn)并包括計(jì)算機(jī)可讀代碼的計(jì)算機(jī)可讀介質(zhì),以便:(1)在第一處理器處壓縮地球模型數(shù)據(jù)集以生成壓縮地球模型表示,其中,所述壓縮地球模型表示包括多個(gè)數(shù)據(jù)索引和具有量化數(shù)據(jù)值的查找表;(2)將查找表存儲(chǔ)在第一級(jí)存儲(chǔ)器中;(3)將索引存儲(chǔ)在第二級(jí)存儲(chǔ)器中;以及(4)從第一級(jí)存儲(chǔ)器訪問(wèn)查找表和從第二級(jí)存儲(chǔ)器訪問(wèn)索引,以在第一處理器處有選擇地解壓所述壓縮地球模型表示,以便第一處理器能夠利用解壓后的地球模型表示進(jìn)行計(jì)算。
第一處理器可以是中央處理單元(CPU),第一級(jí)存儲(chǔ)器可以是諸如一級(jí)(LI)高速緩沖存儲(chǔ)器的高速緩沖存儲(chǔ)器,以及第二級(jí)存儲(chǔ)器可以是隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)。在另一個(gè)實(shí)施例中,所述系統(tǒng)進(jìn)一步包括與第一處理器通信的第二處理器,第二處理器具有第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器,第二處理器的第二級(jí)存儲(chǔ)器比第一處理器的第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量。第一和第二處理器之一或兩者可訪問(wèn)計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)進(jìn)一步包括計(jì)算機(jī)可讀代碼,以便:(I)取代第一處理器的第一級(jí)存儲(chǔ)器,將查找表存儲(chǔ)在第二處理器的第一級(jí)存儲(chǔ)器中;(2)取代第一處理器的第二級(jí)存儲(chǔ)器,將索引存儲(chǔ)在第二處理器的第二級(jí)存儲(chǔ)器中;以及(3)分別從第二處理器的第一級(jí)和第二級(jí)存儲(chǔ)器訪問(wèn)查找表和索引,以取代第一處理器在第二處理器處有選擇地解壓所述壓縮地球模型表示,以便取代第一處理器能夠由第二處理器來(lái)進(jìn)行所述計(jì)算。第二處理器可以是圖形處理單元(GPU),第一級(jí)存儲(chǔ)器可以包括共享存儲(chǔ)器,以及第二級(jí)存儲(chǔ)器可以包括全局存儲(chǔ)器。或者,第二處理器可以是現(xiàn)場(chǎng)可編程門陣列(FPGA),第一級(jí)存儲(chǔ)器可以包括塊RAM (BRAM),以及第二級(jí)存儲(chǔ)器可以包括動(dòng)態(tài)RAM (DRAM)存儲(chǔ)器。依照本發(fā)明的又一個(gè)實(shí)施例,一種制品包括具有計(jì)算機(jī)可讀代碼的計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀代碼用于執(zhí)行利用地球模型表示進(jìn)行計(jì)算的方法。該方法包含:(1)在第一處理器處壓縮地球模型數(shù)據(jù)集以生成壓縮地球模型表示,其中,壓縮地球模型表示包括多個(gè)數(shù)據(jù)索引和具有量化數(shù)據(jù)值的查找表;(2)將查找表存儲(chǔ)在第一級(jí)存儲(chǔ)器中;(3)將索引存儲(chǔ)在第二級(jí)存儲(chǔ)器中;以及(4)從第一級(jí)存儲(chǔ)器訪問(wèn)查找表和從第二級(jí)存儲(chǔ)器訪問(wèn)索弓丨,以在第一處理器處有選擇地解壓所述壓縮地球模型表示,以便第一處理器能夠進(jìn)行計(jì)
笪
ο可選地,該制品還可以包括計(jì)算機(jī)可讀代碼,用于:(I)取代第一處理器的第一級(jí)存儲(chǔ)器,將查找表存儲(chǔ)在第二處理器的第一級(jí)存儲(chǔ)器中;(2)取代第一處理器的第二級(jí)存儲(chǔ)器,將索引存儲(chǔ)在第二處理器的第二級(jí)存儲(chǔ)器中;以及(3)分別從第二處理器的第一級(jí)和第二級(jí)存儲(chǔ)器訪問(wèn)查找表和索引,以取代第一處理器,在第二處理器處有選擇地解壓所述壓縮地球模型表示,以便取代第一處理器,能夠由第二處理器進(jìn)行計(jì)算。
本發(fā)明的詳細(xì)描述將參照如例示在附圖中的本發(fā)明特定實(shí)施例作出。附圖只描繪了本發(fā)明的典型實(shí)施例,因此不應(yīng)該認(rèn)為限制其范圍。圖1例示了依照本發(fā)明的實(shí)施例,被配置成通過(guò)利用地球模型表示來(lái)提高計(jì)算的效率的系統(tǒng);圖2是依照本發(fā)明的實(shí)施例,利用地球模型表示進(jìn)行計(jì)算的方法的流程圖;圖3是示出當(dāng)量化未壓縮的地球模型數(shù)據(jù)時(shí)應(yīng)用加權(quán)隨機(jī)抖動(dòng)的效果的圖形;圖4示出了采樣原始(未壓縮)地球模型數(shù)據(jù)參數(shù)、解壓后的地球模型表示(無(wú)抖動(dòng))、和解壓后的地球模型表示(有 抖動(dòng));圖5示出了圖5的采樣原始(未壓縮)地球模型數(shù)據(jù)參數(shù)以及與解壓后的地球模型表示(無(wú)抖動(dòng))之間和與解壓后的地球模型表示(有抖動(dòng))之間的差異;圖6是示出不同量化方案對(duì)地球模型數(shù)據(jù)箱分布的影響的圖形;以及圖7是利用量化方案不同的地球模型表示的聲學(xué)正演模擬結(jié)果的誤差的比較。
具體實(shí)施例方式本發(fā)明可在要由計(jì)算機(jī)執(zhí)行的系統(tǒng)和計(jì)算機(jī)方法的一般背景下描述和實(shí)現(xiàn)。這樣的計(jì)算機(jī)可執(zhí)行指令可以包括可被用于執(zhí)行特定任務(wù)和處理抽象數(shù)據(jù)類型的程序、例程、對(duì)象、部件、數(shù)據(jù)結(jié)構(gòu)、和計(jì)算機(jī)軟件技術(shù)。本發(fā)明的軟件實(shí)現(xiàn)可以用不同語(yǔ)言編碼以便應(yīng)用在各種計(jì)算平臺(tái)和環(huán)境中。應(yīng)該懂得,本發(fā)明的范圍和基本原理不局限于任何特定的計(jì)算機(jī)軟件技術(shù)。此外,本領(lǐng)域的普通技術(shù)人員應(yīng)該懂得,本發(fā)明可以使用硬件和軟件配置的任何一種或其組合來(lái)實(shí)施,包括但不限于具有單處理器和/或多處理器計(jì)算機(jī)處理系統(tǒng)的系統(tǒng)、手持設(shè)備、可編程消費(fèi)電子產(chǎn)品、小型計(jì)算機(jī)、大型計(jì)算機(jī)、超級(jí)計(jì)算機(jī)等,本發(fā)明也可在由通過(guò)一個(gè)或多個(gè)數(shù)據(jù)通信網(wǎng)絡(luò)鏈接的服務(wù)器或其它處理設(shè)備執(zhí)行任務(wù)的分布式計(jì)算環(huán)境中實(shí)施。在分布式計(jì)算環(huán)境中,程序模塊可以處在包括存儲(chǔ)設(shè)備的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)兩者中。此外,諸如⑶、預(yù)記錄盤或其它等效設(shè)備的與計(jì)算機(jī)處理器一起使用的制品可以包括計(jì)算機(jī)程序存儲(chǔ)介質(zhì)和記錄在上面引導(dǎo)計(jì)算機(jī)處理器來(lái)促進(jìn)本發(fā)明的實(shí)現(xiàn)和實(shí)施的程序。這樣的設(shè)備和制品也在本發(fā)明的精神和范圍之內(nèi)?,F(xiàn)在參照附圖描述本發(fā)明的實(shí)施例。本發(fā)明可以以許多方式實(shí)現(xiàn),包括,例如,系統(tǒng)(包括計(jì)算機(jī)處理系統(tǒng))、方法(包括計(jì)算機(jī)實(shí)現(xiàn)方法)、裝置、計(jì)算機(jī)可讀介質(zhì)、計(jì)算機(jī)程序產(chǎn)品、圖形用戶界面、門戶網(wǎng)站、或有形地固定在計(jì)算機(jī)可讀存儲(chǔ)器中的數(shù)據(jù)結(jié)構(gòu)。下面討論本發(fā)明的幾個(gè)實(shí)施例。附圖只例示了本發(fā)明的典型實(shí)施例,因此不應(yīng)該認(rèn)為限制其范圍和寬度。圖1是被配置成提高諸如正演模擬和偏移的利用地球模型數(shù)據(jù)的計(jì)算的效率的計(jì)算系統(tǒng)100的方框圖。計(jì)算系統(tǒng)100包括至少一個(gè)計(jì)算設(shè)備或處理器芯片10,其具有與第一級(jí)存儲(chǔ)設(shè)備14和外部的第二級(jí)存儲(chǔ)設(shè)備20耦合的諸如中央處理單元(CPU)12的通用計(jì)算機(jī)處理器12,其中,第二級(jí)存儲(chǔ)設(shè)備20比第一級(jí)存儲(chǔ)設(shè)備14慢但具有更大的存儲(chǔ)容量。舉例來(lái)說(shuō),第一級(jí)存儲(chǔ)設(shè)備14可以是CPU12的芯片上一級(jí)高速緩沖存儲(chǔ)器。第一級(jí)存儲(chǔ)設(shè)備14優(yōu)選的是可用于CPU12的最快存儲(chǔ)設(shè)備,并且能夠存儲(chǔ)至少千字節(jié)的數(shù)據(jù)。舉例來(lái)說(shuō),第二級(jí)存儲(chǔ)設(shè)備20可以是與第一處理器芯片10耦合的隨機(jī)訪問(wèn)存儲(chǔ)設(shè)備。系統(tǒng)10進(jìn)一步包括存儲(chǔ)原始地球模型數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)設(shè)備或數(shù)據(jù)庫(kù)40、和允許計(jì)算設(shè)備10和數(shù)據(jù)庫(kù)40之間的通信的總線50。舉例來(lái)說(shuō)但非限制性地,來(lái)自數(shù)據(jù)庫(kù)40的地球模型數(shù)據(jù)可以包含聲學(xué)模型參數(shù)、垂直橫向各向同性(VTI)模型參數(shù)、傾斜橫向各向同性(TTI)模型參數(shù)、可變密度TTI模型參數(shù)、彈性模型參數(shù)、或粘彈性模型參數(shù)??蛇x地,“加速”卡30可以經(jīng)由總線50可操作地與處理器芯片10和數(shù)據(jù)庫(kù)40耦合。加速卡30包括加速芯片32,加速芯片32又包括計(jì)算設(shè)備或第二處理器34、芯片上存儲(chǔ)設(shè)備36、和與芯片上存儲(chǔ)設(shè)備36耦合的加速卡存儲(chǔ)設(shè)備38。加速芯片上存儲(chǔ)設(shè)備36是第一級(jí)存儲(chǔ)器,以及加速卡存儲(chǔ)設(shè)備3 8是第二級(jí)存儲(chǔ)器,其中,第二加速卡存儲(chǔ)設(shè)備38比芯片上存儲(chǔ)設(shè)備36慢但具有更大的存儲(chǔ)容量。在本發(fā)明的一個(gè)實(shí)施例中,加速計(jì)算設(shè)備32是圖形處理單元(GPU),第一級(jí)存儲(chǔ)器36是GPU共享存儲(chǔ)器,以及第二級(jí)存儲(chǔ)器38是GPU全局存儲(chǔ)器。在本發(fā)明的另一個(gè)實(shí)施例中,加速計(jì)算設(shè)備32是現(xiàn)場(chǎng)可編程門陣列(FPGA),第一級(jí)存儲(chǔ)器36是塊RAM (BRAM),以及第二級(jí)存儲(chǔ)器38是動(dòng)態(tài)(DRAM)存儲(chǔ)器。圖2是可以通過(guò)參照?qǐng)D1所述的系統(tǒng)100實(shí)現(xiàn)的利用地球模型表示進(jìn)行計(jì)算的方法200的流程圖。依照本發(fā)明的一個(gè)實(shí)施例,方法200包括從數(shù)據(jù)源40訪問(wèn)原始地球模型數(shù)據(jù)集的步驟210,舉例來(lái)說(shuō),原始地球模型數(shù)據(jù)集可以是未壓縮或先前壓縮的地球模型數(shù)據(jù)集;以及壓縮地球模型數(shù)據(jù)集的步驟220。由CPU12所執(zhí)行的壓縮步驟220生成具有量化數(shù)據(jù)值的查找表和感興趣體積中的每個(gè)點(diǎn)的多個(gè)數(shù)據(jù)索引。依照本發(fā)明,壓縮形式的地球模型參數(shù)可以用查找表和對(duì)于體積中的每個(gè)點(diǎn)進(jìn)入該表的索引來(lái)表示(其中查找表和索引被統(tǒng)稱為“壓縮地球模型表示”。例如,當(dāng)將以IEEE單精度浮點(diǎn)(4個(gè)字節(jié))存儲(chǔ)的地球模型參數(shù)量化成256個(gè)值時(shí),則體積中的每個(gè)點(diǎn)將需要8-位索引(I個(gè)字節(jié)),給出接近4:1的有效壓縮比。這樣,利用C-條目表格壓縮N3-點(diǎn)模型所需的實(shí)際存儲(chǔ)器將等于[1g2(C)] XN3個(gè)位。查找表的數(shù)據(jù)值可以是標(biāo)量值、矢量值和導(dǎo)出值中的一種或其組合,并代表數(shù)據(jù)庫(kù)40中的未壓縮地球模型數(shù)據(jù)的均勻或非均勻量化值。標(biāo)量值是單個(gè)量,矢量值是有關(guān)聯(lián)并且能夠被并行地“共同壓縮”或“共同解壓”的多個(gè)量,以及導(dǎo)出值是從查找表和單個(gè)索弓丨(q)中確定的多個(gè)值(例如,sine q, cosine q)。非均勻量化值可以,例如,通過(guò)使用如下參照?qǐng)D6所述的立方、自適應(yīng)、引導(dǎo)自適應(yīng)量化技術(shù)來(lái)確定。量化值也可以在壓縮步驟220期間被隨機(jī)化,以防止未壓縮地球模型數(shù)據(jù)集中的梯度被變換成壓縮地球模型表示中的人為銳利邊緣。對(duì)于地球模型數(shù)據(jù)集的某些地球模型參數(shù),壓縮算法可以考慮有關(guān)那些參數(shù)之間的一致性的約束和/或物理規(guī)則。地球模型數(shù)據(jù)集的矢量值可被并行地壓縮(“共同壓縮”,以及壓縮地球模型表示的矢量值可被并行地解壓(“共同解壓”)。再次參照?qǐng)D2,然后將查找表存儲(chǔ)在第一級(jí)存儲(chǔ)器14中(步驟230),以及將索引存儲(chǔ)在第二級(jí)存儲(chǔ)器20中(步驟240)。然后,由CPU12從它們各自的存儲(chǔ)器中訪問(wèn)查找表和索引,并且將兩者用于有選擇地解壓所述壓縮地球模型表示(步驟250)。然后在CPU12處使用解壓后的地球模型表示來(lái)進(jìn)行諸如正演模擬和偏移的計(jì)算。在配備加速卡30的情況下,可以將查找表存儲(chǔ)在加速芯片32的第一級(jí)存儲(chǔ)器36中,以及將索引存儲(chǔ)在加速芯片32的第二級(jí)存儲(chǔ)器38中。優(yōu)選的是,例如,在FPGA是加速處理器34的情況下,F(xiàn)PGA處理器34將查找表和索引用于解壓地球模型表示,以便在FPGA處理器34處進(jìn)行本身利用解壓后的地球模型表示的計(jì)算。在,例如,使用諸如速度、密度、各向異性參數(shù)等的許多地球模型參數(shù)的情況下,如參照?qǐng)D2所述的方法200有利于進(jìn)行諸如正演模擬或偏移的地震處理運(yùn)算。對(duì)于復(fù)雜地球模擬問(wèn)題,解壓后的模型參數(shù)需要本地存儲(chǔ)器中的大量數(shù)據(jù)存儲(chǔ)。本發(fā)明的方法比傳統(tǒng)方法更有效在于能夠只進(jìn)行一次壓縮,而在計(jì)算(例如,正演模擬、偏移等)的過(guò)程中,通過(guò)從第一級(jí)(快速)存儲(chǔ)器中訪問(wèn)查找表能夠有效地進(jìn)行多次解壓。因?yàn)樵诶玫厍蚰P蛿?shù)據(jù)的計(jì)算期間通常不改變地球模型,所以可將壓縮方案設(shè)計(jì)成復(fù)雜的并只執(zhí)行一次,而可將解壓方案設(shè)計(jì)成簡(jiǎn)單的并盡可能地快。壓縮方案還允許隨機(jī)訪問(wèn)壓縮體,而不要求解壓整個(gè)體積(或體積塊)以便訪問(wèn)地球模型的單個(gè)點(diǎn)。依照本發(fā)明的一個(gè)實(shí)施例,壓縮步驟220可以實(shí)現(xiàn)將給定點(diǎn)的地球模型參數(shù)量化成通過(guò)8-位查找索引在查找表中表示的至少256個(gè)唯一值的4:1壓縮。因此,取代存儲(chǔ)整個(gè)32-位值,只需為每個(gè)點(diǎn)存儲(chǔ)8-位索引,從而在存儲(chǔ)要求方面實(shí)現(xiàn)4倍降低。使用更少數(shù)量的索引位能夠?qū)崿F(xiàn)更高的壓縮比,而在查找索引中使用更多數(shù)量的位能夠?qū)崿F(xiàn)更低的壓縮比。解壓只需單次表 查找一非常廉價(jià)的操作。在CPU上,能夠?qū)⒉檎冶泶鎯?chǔ)在高速緩存中,在GPU上,能夠?qū)⒉檎冶泶鎯?chǔ)在共享存儲(chǔ)器中,或在FPGA上,能夠?qū)⒉檎冶泶鎯?chǔ)在單個(gè)“塊RAM”中。舉例來(lái)說(shuō),利用8-位索弓丨,能夠使用具有芯片上雙端口 BRAM的諸如Xilinx Virtex-5FGPA的單加速處理芯片來(lái)進(jìn)行兩個(gè)并行解壓操作。利用這樣的BRAM,能夠通過(guò)每個(gè)周期兩次并行存儲(chǔ)器訪問(wèn)來(lái)存儲(chǔ)512個(gè)32-位值。利用4:1壓縮比,每個(gè)BRAM能夠存儲(chǔ)兩個(gè)不同的256-尺寸地球模型解壓查找表。例如,單個(gè)BRAM能夠被用于解壓B (浮力)地球模型陣列的一個(gè)點(diǎn)和K (體積模量)地球模型陣列的一個(gè)點(diǎn)。由于各個(gè)地球模型點(diǎn)是獨(dú)立的,所以并行地解壓多個(gè)點(diǎn)僅僅需要使用多個(gè)BRAM,例如,4個(gè)BRAM可被用于并行地解壓4個(gè)B和K值。因?yàn)樵贑PU上(或可替代地在加速處理器上)進(jìn)行原始地球模型數(shù)據(jù)集的壓縮,所以可以針對(duì)特定地球模型優(yōu)化壓縮方案。下面將描述用于所選地球模型的示范性“定制”壓縮方案。然而,與模型相關(guān)壓縮方案無(wú)關(guān),可以在壓縮步驟220期間應(yīng)用抖動(dòng),以避免由于地球模型的量化而大量引入假象。
圖3是示出當(dāng)量化來(lái)自數(shù)據(jù)庫(kù)40的原始地球模型數(shù)據(jù)集時(shí)應(yīng)用加權(quán)隨機(jī)抖動(dòng)的效果的圖形。當(dāng)原始數(shù)據(jù)300代表梯度時(shí),簡(jiǎn)單的量化產(chǎn)生能夠?qū)е氯?02所示的地球物理假象的壓縮地球模型表示。應(yīng)用抖動(dòng)304對(duì)這些假象加以校正。依照本發(fā)明的實(shí)施例,抖動(dòng)步驟如下工作。當(dāng)在量化空間中不能精確地表示地球模型數(shù)據(jù)集值的情況下,利用隨機(jī)值概率性地確定兩個(gè)最近值之間的選擇。這樣的隨機(jī)取舍防止了原始數(shù)據(jù)中的梯度被變換成壓縮地球模型表示中的銳利邊緣,并且在這樣的人為銳利邊緣產(chǎn)生的輸出中避免假象。在特定區(qū)域,例如,平均波長(zhǎng)上,能夠保持介質(zhì)的整體屬性,這能夠大大地提高地球模擬的總體精度。圖4示出了原始地球模型數(shù)據(jù)集400以及“無(wú)抖動(dòng)離散化”402和“有抖動(dòng)離散化”404對(duì)地球模型表示的影響。注意,區(qū)域412中的人為銳利邊緣與區(qū)域410中的較平滑過(guò)渡。借助于抖動(dòng),如區(qū)域414所示,使銳利過(guò)渡最小化。圖5示出了原始地球模型數(shù)據(jù)500與解壓后的地球模型表示(無(wú)抖動(dòng))502和解壓后的地球模型表示(有抖動(dòng))504之間的
誤差(差異)。再次參照?qǐng)D2,壓縮步驟220可以利用均勻和非均勻量化。一種簡(jiǎn)單壓縮方案可以利用均勻量化從32-位浮點(diǎn)轉(zhuǎn)換成壓縮格式,例如,8-位。然而,對(duì)于這樣的做法,地球模擬中的誤差可能部分由于,例如,體積模量和浮力地球模型參數(shù)的均勻壓縮而引起。例如,均勻地量化體積模量的影響能夠?qū)е缕渲懈静皇褂迷S多倉(cāng)的數(shù)值的高度不均勻分布。已經(jīng)發(fā)現(xiàn)體積模量與具有大約3倍范圍的速度相比,具有大約為最小值的25倍的范圍(即,最小值與最大值之差)。這意味著通過(guò)均勻量化,每個(gè)倉(cāng)必須代表更多的值,這引起利用地球模型表示的計(jì)算的精度的顯著損失。這樣,在壓縮步驟220期間可以使用非均勻量化,以便最小化導(dǎo)致利用解壓后的地球模型表示的計(jì)算的誤差的壓縮精度損失。依照本發(fā)明的一個(gè)實(shí)施例,可以將立方量化方法用作壓縮步驟220的一部 分。在聲學(xué)各向同性模擬的情況下,例如,立方量化可以包括如下步驟:使用體積模量的最小值和最大值的立方根;在立方根域中均勻地定義倉(cāng);然后,求倉(cāng)值的立方以導(dǎo)出體積模量的真實(shí)值。這種做法被設(shè)計(jì)成利用能夠?qū)Ⅲw積模量與聲學(xué)各向同性模型中的波速的立方相關(guān)聯(lián)的事實(shí)。可替代地,可將自適應(yīng)量化用作非均勻量化的一種形式。舉例來(lái)說(shuō),自適應(yīng)量化做法可以包括如下步驟:把所有未壓縮地球數(shù)據(jù)點(diǎn)放在一個(gè)倉(cāng)中;以及重復(fù)地把包含最多(平方)誤差的倉(cāng)分成兩個(gè),直到達(dá)到期望倉(cāng)數(shù)。還公開(kāi)了一種能夠經(jīng)由若干用戶指定參數(shù)值,例如,水速度和鹽速度被啟動(dòng)的引導(dǎo)自適應(yīng)量化方法。將這些值指定給量化倉(cāng),并將與這些值不匹配的所有數(shù)據(jù)點(diǎn)放置在另一個(gè)倉(cāng)中。接著,對(duì)每個(gè)倉(cāng)計(jì)算總平方誤差(即,量化值與原始值之間的平方絕對(duì)差之和),并將誤差最大的量化倉(cāng)分成兩個(gè)倉(cāng)。然后,在兩個(gè)新倉(cāng)之間重新分配來(lái)自原始倉(cāng)的數(shù)值,以及重復(fù)該方法,直到已經(jīng)達(dá)到期望量化倉(cāng)數(shù),或者直到所有倉(cāng)中的總誤差都是零。這種方法保證了諸如水速度的特別重要數(shù)值的精確表示,以及體積中的其它數(shù)值的總誤差最小。自適應(yīng)方案與引導(dǎo)自適應(yīng)方案之間的差異在于:后者實(shí)現(xiàn)了重復(fù)地把包含最多(平方)誤差的倉(cāng)分成兩個(gè)直到達(dá)到期望倉(cāng)數(shù),但另外指定某些壓縮值到任何給定參數(shù)范圍的自適應(yīng)策略。壓縮值代表通過(guò)提供開(kāi)始條件來(lái)引導(dǎo)自適應(yīng)過(guò)程的地球參數(shù)的先驗(yàn)知識(shí)。這樣,能夠在間隔基礎(chǔ)上調(diào)節(jié)壓縮密度和容限。該方案可以帶或不帶如上所述的隨機(jī)抖動(dòng)取舍而運(yùn)行。由于能夠任意選擇代表值,這種方法還特別利用了查表解壓方法的簡(jiǎn)單。類似邏輯可被應(yīng)用于諸如彈性參數(shù)的其它地球模型參數(shù),以使用更少位數(shù)來(lái)表示它們。并且,能夠任意地選擇多維參數(shù)空間中的代表值,以防止表示非物理參數(shù)值或?qū)е掠?jì)算不穩(wěn)定的數(shù)值。圖6示出了依照本發(fā)明實(shí)施例,由均勻、立方和自適應(yīng)量化方案產(chǎn)生的倉(cāng)分布的比較。曲線610示出了均勻量化的代表性倉(cāng)分布,曲線620示出了立方量化的代表性倉(cāng)分布,以及曲線630示出了自適應(yīng)量化的代表性倉(cāng)分布。圖7示出了通過(guò)上述的均勻700、立方702和自適應(yīng)量化方案,在利用地球模型表示的計(jì)算中引入的誤差的比較。圖7示出了通過(guò)三種不同壓縮方案的地球模型壓縮,CPU與CPU之間的差異(X 100)。當(dāng)使用誤差度量評(píng)價(jià)時(shí),立方方案702與均勻量化700相比在誤差方面提供了 2.1倍減小,而自適應(yīng)方案704與均勻量化700相比在誤差方面提供了 7.2倍減小?,F(xiàn)在針對(duì)VTI各向異性、TT1、和可變密度TTI地球模型公開(kāi)了示范性壓縮方案。對(duì)于VTI模擬的情況,三個(gè)地球模型參數(shù)需要量化:速度、η和Λ。η和Λ具有能夠被用來(lái)提高它們的壓縮比的有限范圍和精度。因此,如下表I中所示,能夠使用所示的不超過(guò)16位的壓縮模型數(shù)據(jù)來(lái)存儲(chǔ)所有三個(gè)VTI各向異性地球模型參數(shù)。η和Λ參數(shù)是非精確地已知的,并且對(duì)于它們的表示,只需低精度。
權(quán)利要求
1.一種利用地球模型表示進(jìn)行計(jì)算的方法,所述方法經(jīng)由具有訪問(wèn)地球模型數(shù)據(jù)集的第一處理器的計(jì)算系統(tǒng)來(lái)執(zhí)行,所述第一處理器可操作地與第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器通信,第二級(jí)存儲(chǔ)器比第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量,所述方法包含: 經(jīng)由第一處理器壓縮地球模型數(shù)據(jù)集以生成壓縮地球模型表示,所述壓縮地球模型表示包含多個(gè)數(shù)據(jù)索引和包含量化數(shù)據(jù)值的查找表; 將所述查找表存儲(chǔ)在第一級(jí)存儲(chǔ)器中; 將所述索引存儲(chǔ)在第二級(jí)存儲(chǔ)器中;以及 從第一級(jí)存儲(chǔ)器中訪問(wèn)所述查找表以及從第二級(jí)存儲(chǔ)器中訪問(wèn)所述索引,以在第一處理器處有選擇地解壓所述壓縮地球模型表示,以使第一處理器能夠進(jìn)行所述計(jì)算。
2.按照權(quán)利要求1所述的方法,其中,所述壓縮步驟包含非均勻地量化地球模型數(shù)據(jù)集以生成至少一個(gè)數(shù)據(jù)值。
3.按照權(quán)利要求2所述的方法,其中,所述非均勻量化步驟包含使用立方量化。
4.按照權(quán)利要求2所述的方法,其中,所述非均勻量化步驟包含使用自適應(yīng)量化。
5.按照權(quán)利要求2所述的方法,其中,所述非均勻量化步驟包含使用引導(dǎo)自適應(yīng)量化。
6.按照權(quán)利要求1所述的方法,其中,所述壓縮步驟包含均勻地量化地球模型數(shù)據(jù)集以生成至少一個(gè)數(shù)據(jù)值。
7.按照權(quán)利要求1所述的方法,其中,所述地球模型數(shù)據(jù)集包含多個(gè)地球模型參數(shù),以及其中,所述壓縮步驟包含壓縮至少兩個(gè)地球模型參數(shù)以保證與約束的一致性。
8.按照權(quán)利要求1所述 的方法,其中,所述地球模型數(shù)據(jù)集包含通過(guò)多個(gè)矢量值表示的多個(gè)地球模型參數(shù),以及其中,所述壓縮步驟包含并行地壓縮所述矢量值。
9.按照權(quán)利要求1所述的方法,其中,所述壓縮地球模型表示包含多個(gè)矢量值,以及其中,并行地解壓所述矢量值。
10.按照權(quán)利要求1所述的方法,其中,所述壓縮步驟進(jìn)一步包含:抖動(dòng)查找表的量化數(shù)據(jù)值以提高計(jì)算的精度。
11.按照權(quán)利要求1所述的方法,其中,第一處理器包含中央處理單元(CPU),以及第一級(jí)存儲(chǔ)器包含高速緩沖存儲(chǔ)器。
12.按照權(quán)利要求1所述的方法,進(jìn)一步包含: 與第一處理器通信的第二處理器,所述第二處理器具有第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器,所述第二處理器的第二級(jí)存儲(chǔ)器比第二處理器的第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量;以及 其中,改為將所述查找表存儲(chǔ)在第二處理器的第一級(jí)存儲(chǔ)器中,改為將所述索引存儲(chǔ)在第二處理器的第二級(jí)存儲(chǔ)器中,以及其中,改為分別從第二處理器的第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器中訪問(wèn)所述查找表和索引,以取代第一處理器,在第二處理器處有選擇地解壓所述壓縮地球模型表示,以及取代第一處理器,使第二處理器能夠進(jìn)行所述計(jì)算。
13.按照權(quán)利要求12所述的方法,其中,第二處理器包含圖形處理單元(GPU),以及第一級(jí)存儲(chǔ)器包含共享存儲(chǔ)器。
14.按照權(quán)利要求12所述的方法,其中,第二處理器包含現(xiàn)場(chǎng)可編程門陣列(FPGA),以及第一級(jí)存儲(chǔ)器包含塊RAM (BRAM)0
15.按照權(quán)利要求1所述的方法,其中,所述查找表的數(shù)據(jù)值包含導(dǎo)出、標(biāo)量和矢量值中的一種或多種。
16.按照權(quán)利要求1所述的方法,其中,所述地球模型數(shù)據(jù)集包含聲學(xué)模型參數(shù)。
17.按照權(quán)利要求1所述的方法,其中,所述地球模型數(shù)據(jù)集包含垂直橫向各向同性(VTI)模型參數(shù)。
18.按照權(quán)利要求1所述的方法,其中,所述地球模型數(shù)據(jù)集包含傾斜橫向各向同性(TTI)模型參數(shù)。
19.按照權(quán)利要求1所述的方法,其中,所述地球模型數(shù)據(jù)集包含可變密度TTI模型參數(shù)。
20.按照權(quán)利要求1所述的方法,其中,所述地球模型數(shù)據(jù)集包含彈性模型參數(shù)。
21.按照權(quán)利要求1所述的方法,其中,所述地球模型數(shù)據(jù)集包含粘彈性模型參數(shù)。
22.按照權(quán)利要求1所述的方法,其中,所述計(jì)算包含地震處理。
23.一種利用地球模型表示進(jìn)行計(jì)算的系統(tǒng),包含: 第一級(jí)存儲(chǔ)器; 比第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量的第二級(jí)存儲(chǔ)器; 訪問(wèn)地球模型數(shù)據(jù)集的第一處理器,第一處理器可操作地與第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器通信; 可被第一處理器訪問(wèn)的計(jì)算機(jī)可讀介質(zhì),所述計(jì)算機(jī)可讀介質(zhì)包含計(jì)算機(jī)可讀代碼,用于: 在第一處理器處壓縮所述地球模型數(shù)據(jù)集以生成壓縮地球模型表示,所述壓縮地球模型表示包含多個(gè)數(shù)據(jù)索引和包含量化數(shù)據(jù)值的查找表; 將所述查找表存儲(chǔ)在第一級(jí)存儲(chǔ)器中; 將所述索引存儲(chǔ)在第二級(jí)存儲(chǔ)器中;以及 從第一級(jí)存儲(chǔ)器中訪問(wèn)所述查找表以及從第二級(jí)存儲(chǔ)器中訪問(wèn)所述索引,以在第一處理器處有選擇地解壓所述壓縮地球模型表示,以使得第一處理器能夠進(jìn)行所述計(jì)算。
24.按照權(quán)利要求23所述的系統(tǒng),其中,第一處理器包含中央處理單元(CPU),以及第一級(jí)存儲(chǔ)器包含一級(jí)(LI)高速緩沖存儲(chǔ)器。
25.按照權(quán)利要求23所述的系統(tǒng),進(jìn)一步包含: 與第一處理器通信的第二處理器,第二處理器具有第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器,第二處理器的第二級(jí)存儲(chǔ)器比第二處理器的第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量;以及其中,第一處理器和第二處理器之一或兩者可訪問(wèn)所述計(jì)算機(jī)可讀介質(zhì),以及其中,所述計(jì)算機(jī)可讀介質(zhì)進(jìn)一步包含計(jì)算機(jī)可讀代碼,用于: 取代第一處理器的第一級(jí)存儲(chǔ)器,將所述查找表存儲(chǔ)在第二處理器的第一級(jí)存儲(chǔ)器中; 取代第一處理器的第二級(jí)存儲(chǔ)器,將所述索引存儲(chǔ)在第二處理器的第二級(jí)存儲(chǔ)器中;以及 分別從第二處理器的第一級(jí)和第二級(jí)存儲(chǔ)器中訪問(wèn)所述查找表和索引,以取代第一處理器在第二處理器處有選擇地解壓所述壓縮地球模型表示,以取代第一處理器使得第二處理器能夠進(jìn)行所述計(jì)算。
26.按照權(quán)利要求25所述的系統(tǒng), 其中,第二處理器包含圖形處理單元(GPU),以及第一級(jí)存儲(chǔ)器包含共享存儲(chǔ)器。
27.按照權(quán)利要求25所述的系統(tǒng),其中,第二處理器包含現(xiàn)場(chǎng)可編程門陣列(FPGA),以及第一級(jí)存儲(chǔ)器包含塊RAM (BRAM)0
28.一種包含具有包含在其中的計(jì)算機(jī)可讀代碼的計(jì)算機(jī)可讀介質(zhì)的制品,所述計(jì)算機(jī)可讀代碼適于被執(zhí)行以實(shí)現(xiàn)利用地球模型表示進(jìn)行計(jì)算的方法,所述方法包含: 在第一處理器處壓縮地球模型數(shù)據(jù)集以生成壓縮地球模型表示,所述壓縮地球模型表示包括多個(gè)數(shù)據(jù)索引和包含量化數(shù)據(jù)值的查找表; 將所述查找表存儲(chǔ)在第一級(jí)存儲(chǔ)器中; 將所述壓縮地球模型表示存儲(chǔ)在第二級(jí)存儲(chǔ)器中,第二級(jí)存儲(chǔ)器比第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量;以及 從第一級(jí)存儲(chǔ)器中訪問(wèn)所述查找表以及從第二級(jí)存儲(chǔ)器中訪問(wèn)所述索引,以在第一處理器處有選擇地解壓所述壓縮地球模型表示,以使得第一處理器能夠進(jìn)行所述計(jì)算。
29.按照權(quán)利要求28所述的制品,其中,所述方法進(jìn)一步包含: 取代第一處理器的第一級(jí)存儲(chǔ)器,將所述查找表存儲(chǔ)在第二處理器的第一級(jí)存儲(chǔ)器中; 取代第一處理器的第二級(jí)存儲(chǔ)器,將所述索引存儲(chǔ)在第二處理器的第二級(jí)存儲(chǔ)器中,第二處理器的第二級(jí)存儲(chǔ)器比第二處理器的第一級(jí)存儲(chǔ)器慢但具有更大存儲(chǔ)容量;以及分別從第二處理器的第一級(jí)存儲(chǔ)器和第二級(jí)存儲(chǔ)器中訪問(wèn)所述查找表和索引,以取代第一處理器,在第二處理 器處有選擇地解壓所述壓縮地球模型表示,以取代第一處理器,使得第二處理器能夠進(jìn)行所述計(jì)算。
全文摘要
提供了經(jīng)由具有訪問(wèn)地球模型數(shù)據(jù)集的第一處理器的計(jì)算系統(tǒng)利用地球模型表示進(jìn)行計(jì)算的方法和相應(yīng)系統(tǒng)。該方法包括在第一處理器處壓縮地球模型數(shù)據(jù)集以生成查找表和一組數(shù)據(jù)索引(即,被統(tǒng)稱為“壓縮地球模型表示”),其中,該查找表包括量化數(shù)據(jù)值。然后,通過(guò)將查找表存儲(chǔ)在第一級(jí)(“快速”)存儲(chǔ)器中,以及將索引存儲(chǔ)在第二級(jí)(“較慢”、較大存儲(chǔ)容量)存儲(chǔ)器中,能夠訪問(wèn)查找表和索引,以在第一處理器處有選擇地解壓壓縮地球模型表示,使得第一處理器能夠有效地進(jìn)行所述計(jì)算。
文檔編號(hào)G01V1/28GK103229180SQ201280003865
公開(kāi)日2013年7月31日 申請(qǐng)日期2012年2月28日 優(yōu)先權(quán)日2011年3月30日
發(fā)明者R·埃伽斯, O·佩爾, T·尼姆西 申請(qǐng)人:雪佛龍美國(guó)公司