同時確定多個參數(shù)變體的設(shè)置的系統(tǒng)、方法
【專利摘要】本發(fā)明涉及同時確定多個參數(shù)變體的設(shè)置的系統(tǒng)、方法并提供了用于同時確定用于多個參數(shù)變體的設(shè)置的系統(tǒng)、方法和計算機程序產(chǎn)品。在使用中,標識與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體。此外,同時確定用于多個參數(shù)變體中的每一個的設(shè)置。
【專利說明】同時確定多個參數(shù)變體的設(shè)置的系統(tǒng)、方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及參數(shù)分析,并且,更具體地,涉及基于參數(shù)分析確定設(shè)置。
【背景技術(shù)】
[0002]今日已有的許多產(chǎn)品包括影響與產(chǎn)品相關(guān)聯(lián)的整體體驗的一個或多個參數(shù)。例如,計算機游戲和其他軟件可具有確定渲染、音頻、玩游戲等的質(zhì)量的許多參數(shù)。然而,用于布置與這些產(chǎn)品相關(guān)聯(lián)的參數(shù)的當前技術(shù)已與各種限制相關(guān)聯(lián)。
[0003]例如,在當前,客戶可能有責任手動調(diào)整與產(chǎn)品相關(guān)聯(lián)的多個參數(shù)以確定用于該產(chǎn)品的適當?shù)脑O(shè)置。這可能導(dǎo)致低于產(chǎn)品的最優(yōu)設(shè)置、由客戶進行的耗時的試錯等。因此存在著解決這些和/或其他與現(xiàn)有技術(shù)相關(guān)聯(lián)的問題的需要。
【發(fā)明內(nèi)容】
[0004]提供了用于同時確定用于多個參數(shù)變體的設(shè)置的系統(tǒng)、方法和計算機程序產(chǎn)品。在使用中,標識了與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體。此外,同時確定了用于多個參數(shù)變體中的每一個的設(shè)置。
【專利附圖】
【附圖說明】
[0005]圖1示出根據(jù)一個實施例的、用于同時確定用于多個參數(shù)變體的設(shè)置的方法。
[0006]圖2示出根據(jù)另一個實施例的、用于同時確定多個最優(yōu)設(shè)置的方法。
[0007]圖3示出根據(jù)另一個實施例的示例性參數(shù)DAG。
[0008]圖4示出其中可實現(xiàn)各種先前實施例的各種架構(gòu)和/或功能性的示例性系統(tǒng)?!揪唧w實施方式】
[0009]圖1示出根據(jù)一個實施例的、用于同時確定用于多個參數(shù)變體的設(shè)置的方法100。如操作102中所示,標識了與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體。在一個實施例中,設(shè)備可包括諸如個人計算機或其他硬件元素的實體。在另一個實施例中,多個參數(shù)變體可包括多個不同參數(shù)的多個唯一變體。
[0010]此外,在一個實施例中,參數(shù)可包括設(shè)備的任何特點。例如,參數(shù)可包括安裝在設(shè)備(例如臺式計算機、膝上型計算機、平板計算機、個人數(shù)字助理、移動電話等)內(nèi)的硬件(例如中央處理單元(CPU)、圖形處理單元(GPU)、隨機存取存儲器(RAM)、主板、顯示器等)、安裝在設(shè)備內(nèi)的軟件(例如操作系統(tǒng)、驅(qū)動程序等)等。
[0011]進一步地,在一個實施例中,參數(shù)中的一個或多個可以是可獨立配置的。例如,參數(shù)中的每一個可以能夠獨立于其他參數(shù)而加以改變。在另一個實施例中,參數(shù)中的每一個可由設(shè)備用以實施一個或多個動作。在又一個實施例中,參數(shù)變體可包括多個不同類型的參數(shù),其可包括與參數(shù)相關(guān)聯(lián)的大小、量、速度等。例如,如果參數(shù)是設(shè)備CPU,那么參數(shù)的變體可包括CPU的制造商、CPU的速度、CPU的高速緩存大小等。在另一個示例中,如果參數(shù)是RAM,那么變體可包括RAM的數(shù)量、RAM的速度、RAM的制造商等。
[0012]仍進一步地,在一個實施例中,可在服務(wù)器處標識多個參數(shù)變體。例如可經(jīng)由網(wǎng)絡(luò)(例如無線網(wǎng)絡(luò)、有線網(wǎng)絡(luò)、蜂窩網(wǎng)絡(luò)、衛(wèi)星網(wǎng)絡(luò)等)將多個參數(shù)變體中的每一個從具有那些參數(shù)變體的用戶設(shè)備發(fā)送到服務(wù)器。在另一個實施例中,多個參數(shù)變體可存儲在數(shù)據(jù)庫中并可從數(shù)據(jù)庫中所檢索。
[0013]并且,在一個實施例中,可基于一個或多個標準標識與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體。例如,確定為最流行用戶參數(shù)變體(例如在用戶設(shè)備中最常使用的參數(shù)變體等)的預(yù)定數(shù)目的參數(shù)變體可被選擇為與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體。
[0014]此外,如操作104中所示,同時確定了用于多個參數(shù)變體中的每一個的設(shè)置。在一個實施例中,所確定的用于多個參數(shù)變體中的每一個的設(shè)置可包括操作多個參數(shù)變體中的一個或多個方面的經(jīng)優(yōu)化的設(shè)置。在另一個實施例中,用于多個參數(shù)變體中的每一個的設(shè)置可包括預(yù)定義設(shè)置(預(yù)設(shè))的單調(diào)集合。例如,用于多個參數(shù)變體中的每一個的設(shè)置可包括關(guān)于第一特點連續(xù)地增加以及關(guān)于第二特點連續(xù)地降低的預(yù)設(shè)的單調(diào)集合。
[0015]在另一個示例中,可排序預(yù)設(shè)的單調(diào)集合,并且當與預(yù)設(shè)的集合內(nèi)的先前預(yù)設(shè)相比較時,預(yù)設(shè)的集合內(nèi)的每個相繼的預(yù)設(shè)可具有提高的第一特點和降低的第二特點。在又一個實施例中,第一特點可與質(zhì)量(例如圖像質(zhì)量、聲音質(zhì)量、體驗質(zhì)量等)相關(guān)聯(lián),并且第二特點可與性能(例如速度、經(jīng)濟、效率等)相關(guān)聯(lián)。例如,軟件元素可在設(shè)備上運行,并且預(yù)設(shè)的集合內(nèi)的每個相繼預(yù)設(shè)可具有軟件元素的提高的圖像質(zhì)量以及軟件元素的降低的性倉泛。
[0016]在另一個實施例中,可利用算法確定設(shè)置。例如,可利用貪婪算法、窮舉算法等確定設(shè)置。在另一個實施例中,可通過針對預(yù)設(shè)的集合中的每一個預(yù)設(shè)關(guān)于第二特點最大化第一特點來確定設(shè)置。例如,用于參數(shù)變體的多個設(shè)置中的每一個可具有與質(zhì)量相關(guān)聯(lián)的第一特點以及與性能相關(guān)聯(lián)的第二特點,并且可關(guān)于第二特點優(yōu)化第一特點。
[0017]進一步地,在一個實施例中,當運行預(yù)定軟件元素時,針對多個參數(shù)變體中的每一個,設(shè)置可包括該參數(shù)變體的配置使得具有該參數(shù)變體的設(shè)備產(chǎn)生最大化輸出(例如圖像質(zhì)量等)同時維持閾值要求(例如最小幀率等)。在另一個實施例中,軟件元素可包括可安裝在或要安裝在設(shè)備內(nèi)的軟件程序。
[0018]仍進一步地,在一個實施例中,同時確定用于多個參數(shù)變體中的每一個的設(shè)置可包括創(chuàng)建包括多個節(jié)點的有向無環(huán)圖(DAG),其中多個節(jié)點中的每一個表示多個參數(shù)變體中的一個。在另一個實施例中,可基于一個或多個標準來定向DAG的節(jié)點。例如,可基于與每個節(jié)點相關(guān)聯(lián)的速度在DAG內(nèi)定向DAG的多個節(jié)點中的每一個,其中基于由節(jié)點所表示的設(shè)備參數(shù)變體確定速度。在另一個實施例中,可在DAG中定向節(jié)點,使得當確定DAG的第二節(jié)點在一個或多個方面(例如關(guān)于處理速度等)確實快于DAG的第一節(jié)點時DAG的第一節(jié)點可指向DAG的第二節(jié)點。
[0019]并且,在一個實施例中,同時確定用于多個參數(shù)變體中的每一個的設(shè)置可包括調(diào)整與多個參數(shù)變體中的每一個相關(guān)聯(lián)的一個或多個設(shè)置。例如,針對多個參數(shù)變體中的每一個,可調(diào)整(例如打開或關(guān)閉、增加、減小等)一個或多個相關(guān)聯(lián)的設(shè)置,以確定第一特點關(guān)于第二特點的最大可能量。在另一個實施例中,所確定的用于多個參數(shù)變體中的每一個的設(shè)置可包括多個參數(shù)變體的用于得到第一特點關(guān)于第二特點的最大可能量的設(shè)置。[0020]另外,在一個實施例中,同時確定用于多個參數(shù)變體中的每一個的設(shè)置可包括同時相繼調(diào)整用于多個參數(shù)變體中的每一個的單個設(shè)置。例如,針對多個參數(shù)變體中的每一個,可調(diào)整第一經(jīng)確定設(shè)置以確定第一特點關(guān)于第二特點的最大可能量。此外,在調(diào)整第一經(jīng)確定設(shè)置之后,可確定要調(diào)整的第二設(shè)置,其中第二經(jīng)確定設(shè)置經(jīng)調(diào)整用于多個參數(shù)變體中的每一個。
[0021]在另一個實施例中,同時確定用于多個參數(shù)變體中的每一個的設(shè)置可包括在用于多個參數(shù)變體中的每一個的最小設(shè)置量開始以及同時相繼增加用于多個參數(shù)變體中的每一個的單個設(shè)置。在又一個實施例中,同時確定用于多個參數(shù)變體中的每一個的設(shè)置可包括在用于多個參數(shù)變體中的每一個的最大設(shè)置量開始以及同時相繼降低用于多個參數(shù)變體中的每一個的單個設(shè)置。
[0022]在又一個實施例中,同時確定用于多個參數(shù)變體中的每一個的設(shè)置可包括,在用于多個參數(shù)變體中的每一個的最大設(shè)置量和最小設(shè)置量二者開始,并且針對多個參數(shù)變體中的每一個同時從最大量相繼降低單個設(shè)置以及從最小量相繼增加單個設(shè)置,直到確定了得到第一特點關(guān)于第二特點的最大可能量的最優(yōu)設(shè)置為止。
[0023]此外,在一個實施例中,多個參數(shù)變體中的每一個可影響如何確定設(shè)置。例如,多個參數(shù)變體中的每一個(或DAG中的其各自的節(jié)點)可為經(jīng)調(diào)整的用于多個參數(shù)變體中的每一個的第一經(jīng)確定設(shè)置投票。在另一個示例中,在調(diào)整了第一經(jīng)確定設(shè)置用于多個參數(shù)變體中的每一個之后,多個參數(shù)變體中的每一個(或DAG中的其各自的節(jié)點)可隨后為經(jīng)調(diào)整用于多個參數(shù)變體中的每一個的第二經(jīng)確定設(shè)置投票。
[0024]仍進一步地,在一個實施例中,多個參數(shù)變體中的每一個對于如何確定設(shè)置可具有不同水平的影響。例如,群體(population)值可與多個參數(shù)變體中的每一個(或DAG中的其各自的節(jié)點)相關(guān)聯(lián)。在另一個實施例中,與特定參數(shù)變體相關(guān)聯(lián)的群體值可與具有該參數(shù)變體(例如安裝在其設(shè)備內(nèi)等)的用戶的預(yù)定數(shù)目相對應(yīng)。在又一個實施例中,與特定參數(shù)變體相關(guān)聯(lián)的群體值可與具有該參數(shù)變體的用戶的總數(shù)的預(yù)定百分比相對應(yīng)。
[0025]在又一個實施例中,與特定參數(shù)變體相關(guān)聯(lián)的群體值可影響由特定參數(shù)變體關(guān)于如何確定設(shè)置所發(fā)揮的影響的量(例如強度等)。例如,由特定參數(shù)變體為經(jīng)調(diào)整的用于多個參數(shù)變體中的每一個的經(jīng)確定設(shè)置所投的票,可與同特定參數(shù)變體相關(guān)聯(lián)的群體值成比例地增加(例如通過將票乘以群體值等)。通過該方式,由大用戶基礎(chǔ)所使用的流行參數(shù)變體對于如何確定設(shè)置可具有更多影響。
[0026]并且,在一個實施例中,指數(shù)值(例如影響值等)可與多個參數(shù)變體中的每一個(或DAG中的其各自的節(jié)點)相關(guān)聯(lián)。在另一個實施例中,與特定參數(shù)變體相關(guān)聯(lián)的指數(shù)值可與特定參數(shù)變體的以預(yù)定幀率運行預(yù)定軟件元素的能力相對應(yīng)。例如,如果特定參數(shù)變體不能以預(yù)定幀率運行預(yù)定軟件元素,那么指數(shù)值可以是-1。在另一個示例中,如果特定參數(shù)變體能夠利用一個或多個最小設(shè)置以預(yù)定幀率運行預(yù)定軟件元素,那么指數(shù)值可以是零。在另一個實施例中,如果特定參數(shù)變體能夠利用一個或多個最大設(shè)置以預(yù)定幀率運行預(yù)定軟件元素,那么指數(shù)值可以是(n-1),其中η等于由DAG中的每個節(jié)點所表示的參數(shù)的數(shù)目。
[0027]在又一個實施例中,與特定參數(shù)變體相關(guān)聯(lián)的指數(shù)值可影響由特定參數(shù)變體關(guān)于如何確定設(shè)置所發(fā)揮的影響的量(例如強度等)。例如,由特定參數(shù)變體為經(jīng)調(diào)整的用于多個參數(shù)變體中的每一個的經(jīng)確定設(shè)置所投的票,可與同特定參數(shù)變體相關(guān)聯(lián)的指數(shù)值成比例地增加或降低(例如將票乘以指數(shù)值等)。通過該方式,更可能使用設(shè)置的參數(shù)變體對于如何確定設(shè)置可具有更多影響。
[0028]此外,在一個實施例中,在為待調(diào)整用于多個參數(shù)變體中的每一個的經(jīng)確定設(shè)置投票期間,可標識多個參數(shù)變體(或DAG中的其各自的節(jié)點)之間的相異(disagreement)。例如,多個參數(shù)變體(或DAG中的其各自的節(jié)點)中的一部分可為待調(diào)整用于多個參數(shù)變體中的每一個的一個特定設(shè)置投票,并且多個參數(shù)變體(或DAG中的其各自的節(jié)點)中的另一部分可為待調(diào)整用于多個參數(shù)變體中的每一個的另一個特定設(shè)置投票。
[0029]此外,響應(yīng)于多個參數(shù)變體之間的相異的標識,多個參數(shù)變體可分成多個子組(例如較小的DAG等)。例如,如果多個參數(shù)變體(或DAG中的其各自的節(jié)點)中的預(yù)定百分比為不同于由其他參數(shù)變體(或DAG中的其各自的節(jié)點)所投票的設(shè)置的特定設(shè)置投票,那么多個參數(shù)變體中該預(yù)定百分比可從DAG中移除并可置于子DAG中用于設(shè)置確定。通過該方式,設(shè)置確定可更有效地加以確定用于每個子組中的參數(shù)變體。
[0030]現(xiàn)在將關(guān)于各種可選架構(gòu)和特征闡述更多例示性信息,前述框架可以或可以不利用其加以實現(xiàn),取決于用戶的意愿。應(yīng)極力注意的是,闡述以下信息是用于例示性目的并且不應(yīng)視為以任何方式加以限制??赏ㄟ^排除或不排除所描述的其他特征來可選地對任何以下特征加以合并。
[0031]圖2示出根據(jù)另一個實施例的、用于同時確定多個最優(yōu)設(shè)置的方法200。作為一個選擇,可在圖1的功能性的上下文中實行方法200。然而當然,可在任何需要的環(huán)境中實現(xiàn)方法200。還應(yīng)注意的是,在本描述期間可應(yīng)用前述定義。
[0032]如操作202中所示,標識了與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體。在一個實施例中,多個參數(shù)變體可包括與個人計算機的顯示器相關(guān)聯(lián)的參數(shù)變體。例如,多個參數(shù)變體可包括個人計算機的屏幕分辨率。在另一個實施例中,多個參數(shù)變體可包括與由個人計算機進行的圖形渲染相關(guān)聯(lián)的參數(shù)變體。例如,多個參數(shù)變體可包括安裝在設(shè)備內(nèi)的系統(tǒng)硬件特性(例如CPU特性、GPU特性、主板特性、RAM特性等)、安裝在設(shè)備內(nèi)的系統(tǒng)軟件特性等。
[0033]此外,如操作204中所示,構(gòu)建了具有多個節(jié)點的DAG,其中多個節(jié)點中的每一個與多個參數(shù)變體中的一個相對應(yīng)。在一個實施例中,可基于一個或多個規(guī)則定向DAG中的節(jié)點。例如,可基于與每個節(jié)點相關(guān)聯(lián)的速度在DAG內(nèi)定向節(jié)點,其中基于由節(jié)點所表示的參數(shù)變體確定速度。在另一個實施例中,可在DAG中定向節(jié)點,使得當確定DAG的第二節(jié)點在一個或多個方面(例如關(guān)于處理速度等)確實快于DAG的第一節(jié)點時,DAG的第一節(jié)點可指向DAG的第二節(jié)點。
[0034]并且,在一個實施例中,DAG中的每個節(jié)點可表示與設(shè)備相關(guān)聯(lián)的多個可能參數(shù)的唯一變體。例如,與設(shè)備相關(guān)聯(lián)的多個可能參數(shù)可包括設(shè)備CPU、設(shè)備GPU和設(shè)備分辨率,并且DAG中的每個節(jié)點可表示特定的設(shè)備CPU、設(shè)備GPU和設(shè)備分辨率的唯一組合。通過該方式,在DAG內(nèi)第一節(jié)點指向第二節(jié)點表明由DAG中的第二節(jié)點所表示的與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體比由DAG中的第一節(jié)點所表示的與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體提供確實更好的處理速度和性能。
[0035]進一步地,如操作206中所示,與每個節(jié)點相關(guān)聯(lián)的群體值被指派到每個節(jié)點。在一個實施例中,作為分析操作的結(jié)果可獲得多個群體值。在另一個實施例中,多個群體值可包括遙測數(shù)據(jù)。在又一個實施例中,可從群體值數(shù)據(jù)庫檢索多個群體值。在又一個實施例中,被指派到節(jié)點的群體值可表示擁有具有與該節(jié)點相對應(yīng)的參數(shù)變體的設(shè)備的用戶群體。
[0036]仍進一步地,如操作208中所示,與每個節(jié)點相關(guān)聯(lián)的指數(shù)值與每個節(jié)點相關(guān)聯(lián)??赏ㄟ^計算由節(jié)點所表示的特定參數(shù)變體以預(yù)定幀率運行預(yù)定軟件元素的能力,來確定指數(shù)值用于該節(jié)點。在另一個實施例中,可基于DAG內(nèi)的節(jié)點的位置確定指數(shù)值用于節(jié)點。例如,DAG中的較強節(jié)點可被指派較高的指數(shù)值。
[0037]并且,如操作210中所示,利用群體值和指數(shù)值,確定最優(yōu)預(yù)設(shè)設(shè)置用于多個參數(shù)變體中的每一個。在一個實施例中,最優(yōu)預(yù)設(shè)設(shè)置可包括用于設(shè)備的預(yù)設(shè)的單調(diào)集合。在另一個實施例中,可關(guān)于安裝在設(shè)備內(nèi)的一個或多個軟件元素確定預(yù)設(shè)的單調(diào)集合。例如,可確定預(yù)設(shè)的單調(diào)集合用于安裝在設(shè)備上的應(yīng)用(例如視頻游戲軟件、媒體回放軟件等)的實例。在又一個實施例中,可關(guān)于要安裝在設(shè)備上的(例如還未安裝在設(shè)備上等)一個或多個軟件元素確定預(yù)設(shè)的單調(diào)集合。
[0038]在又一個實施例中,預(yù)設(shè)的單調(diào)集合可表示影響設(shè)備運行一個或多個軟件元素的方式的設(shè)備設(shè)置(從屬的和獨立的二者)。例如,預(yù)設(shè)的單調(diào)集合中的每一個可支配(dictate)由設(shè)備所提供的經(jīng)顯示的圖形的顏色深度、由設(shè)備所提供的經(jīng)顯示的圖形的紋理映射等級、由設(shè)備所提供的經(jīng)顯示的圖形的紋理壓縮、在圖形顯示期間由設(shè)備所使用的光照模型等。
[0039]另外,在一個實施例中,確定最優(yōu)預(yù)設(shè)設(shè)置可包括確定多個性能等級用于設(shè)備。例如,可確定多個下降的性能等級(例如從最大性能等級到最小性能等級等)針對設(shè)備(例如利用一個或多個基準等),其中每個相繼的性能等級指示當與先前等級相比較時,設(shè)備以較慢速率、較低效率、或其他較不令人滿意的方式實施(例如運行、計算等)。在另一個實施例中,性能等級可與由設(shè)備所使用的資源等級相關(guān)聯(lián)。例如,性能等級可指示由設(shè)備所使用的處理資源的量、由設(shè)備所使用的軟件資源的量、由設(shè)備所利用的網(wǎng)絡(luò)資源的量、由設(shè)備所提供的巾貞率等。
[0040]進一步地,在一個實施例中,確定最優(yōu)預(yù)設(shè)設(shè)置可包括確定多個圖像質(zhì)量等級用于設(shè)備。例如,可確定多個上升的圖像質(zhì)量等級(例如從最小圖像質(zhì)量等級到最大圖像質(zhì)量等級等)用于設(shè)備,其中每個相繼的圖像質(zhì)量等級指示當與先前等級相比較時,由設(shè)備所顯示的圖像質(zhì)量(例如分辨率、顏色、細節(jié)中的一個或多個等)增加。
[0041]仍進一步地,在一個實施例中,多個性能等級中的每一個可與用于設(shè)備的多個圖像質(zhì)量等級中的一個相關(guān)聯(lián)。例如,每個相繼下降的性能等級可與相繼增加的圖像質(zhì)量等級相關(guān)聯(lián),使得隨著設(shè)備性能的降低,由設(shè)備所產(chǎn)生的圖像質(zhì)量增加。在另一個實施例中,可基于設(shè)備的多個參數(shù)變體,最大化圖像質(zhì)量等級用于多個性能等級中的每一個。
[0042]例如,針對每個經(jīng)確定的性能等級,可基于設(shè)備的多個參數(shù)變體確定可由設(shè)備所提供的最大圖像質(zhì)量。在一個實施例中,可利用貪婪算法計算最大圖像質(zhì)量。在另一個實施例中,可利用窮舉算法計算最大圖像質(zhì)量。然而當然,可以以任何方式計算用于每個性能等級的最大圖像質(zhì)量。通過該方式,預(yù)設(shè)可在圖像質(zhì)量方面單調(diào)增加以及在性能方面單調(diào)降低。
[0043]并且,在一個實施例中,可利用模擬法確定最大圖像質(zhì)量。例如,可提供多個調(diào)整元素、“劃算(bang-for-buck)”指示符、以及“失敗”指示符。在另一個示例中,每個調(diào)整元素可表示應(yīng)用中的一個屬性。在又一個實施例中,可以以分立的步驟調(diào)整每個調(diào)整元素。在另一個實施例中,“劃算”指示符可針對當前預(yù)設(shè)返回總值(例如圖像質(zhì)量乘以幀率)。在又一個實施例中,當且僅當預(yù)設(shè)無效時,可激活“失敗”指示符。如果存在從屬變量那么可能需要這樣做,并且一些預(yù)設(shè)的確是無效的。
[0044]例如,兩個調(diào)整元素A和B可使得站點(stop)為假(False)和真(True),但當且僅當調(diào)整元素A設(shè)為True時,調(diào)整元素B可僅也設(shè)為True。在這種情況下,僅當調(diào)整元素A設(shè)為False、且調(diào)整元素B設(shè)為True時,可激活“失敗”指示符。在另一個實施例中,可假定站點是有序的,使得調(diào)整調(diào)整元素上升一個站點總是產(chǎn)生相等/更好的圖像質(zhì)量以及相等/更差的性能。
[0045]此外,在一個實施例中,以對于參數(shù)變體中的每一個同時方式,單調(diào)集合確定算法可以以一直減小到其最小等級(即其“最小設(shè)置(minset)”值)的所有調(diào)整元素開始?,F(xiàn)在,一次一個調(diào)整元素,每個調(diào)整元素可臨時遞增地精確地增大一個站點到其最大值(例如,如果調(diào)整元素一直增大到10中的10,那么其將不會增大到11)。在將該調(diào)整元素設(shè)置回到其初始位置之前,如果“失敗”指示符沒激活,那么“劃算”指示符值可被記錄。一旦所有調(diào)整元素已經(jīng)遞增地增大,那么產(chǎn)生最高“劃算”指示符值(并且仍然有效)的元素永久地調(diào)整一個站點。該過程可以以這種方式重復(fù),直到所有調(diào)整元素在其最大設(shè)置(即其“最大設(shè)置(maxset)”值)為止。經(jīng)選擇的(#站點_#調(diào)整元素+1)預(yù)設(shè)的序列可表示最優(yōu)單調(diào)預(yù)設(shè)。
[0046]此外,在另一個實施例中,以對于參數(shù)變體中的每一個同時方式,單調(diào)集合確定算法可以以一直增大到其最大等級(即其“最大設(shè)置”值)的所有調(diào)整元素開始。現(xiàn)在,一次一個調(diào)整元素,每個調(diào)整元素可臨時遞增地精確地減小一個站點。在將該調(diào)整元素設(shè)置回到其初始位置之前,如果“失敗”指示符沒激活,那么“劃算”指示符值可被記錄。一旦所有調(diào)整元素已經(jīng)遞增地減小,那么產(chǎn)生最高“劃算”指示符值(并且仍然有效)的元素永久地調(diào)整一個站點。該過程可以以這種方式重復(fù),直到所有調(diào)整元素在其最大設(shè)置(即其“最大設(shè)置”值)為止。
[0047]仍進一步地,在一個實施例中,以對于參數(shù)變體中的每一個同時方式,單調(diào)集合確定算法中的一個或多個可以以一直減小到其最小等級的所有調(diào)整元素開始,并且單調(diào)集合確定算法中的一個或多個可以以一直增大到其最大等級的所有調(diào)整元素開始。此外,可由算法中的每一個遞增地進行調(diào)整直到調(diào)整收斂為止。通過該方式,可以以加快的方式確定最優(yōu)預(yù)設(shè)設(shè)置。此外,較快的配置可影響對其重要的預(yù)設(shè)設(shè)置并可避免與較慢配置相關(guān)聯(lián)的預(yù)設(shè)設(shè)置。
[0048]并且,在一個實施例中,DAG中的多個節(jié)點中的每一個可對操縱(增加或降低等)哪個調(diào)整元素進行投票。例如,DAG中的多個節(jié)點中的每一個可關(guān)于以下問題投一次票:將哪個調(diào)整元素臨時遞增地精確地增大或減小一個站點,用于與DAG中的節(jié)點相對應(yīng)的參數(shù)變體中的每一個。在另一個實施例中,獲得最大票數(shù)的調(diào)整元素可被選擇以遞增地增大或減小用于每個節(jié)點。
[0049]在另一個實施例中,可根據(jù)與每個節(jié)點相關(guān)聯(lián)的群體值和指數(shù)值調(diào)整該節(jié)點的投票。例如,每個節(jié)點的投票可與其群體值成比例地增加或根據(jù)其指數(shù)值增加或降低。通過該方式,DAG中的更流行和更相關(guān)的節(jié)點在投票期間可被給予更大權(quán)重。
[0050]另外,可同時確定最優(yōu)預(yù)設(shè)設(shè)置用于多個參數(shù)變體中的每一個,其中這種預(yù)設(shè)范圍可從最低設(shè)置(例如“最小設(shè)置”等)到最高設(shè)置(例如“最大設(shè)置”等)并且其可在過程中每個步驟最大化“劃算”(例如每性能單元的圖像質(zhì)量等)。進一步地,可維持單調(diào)的多個預(yù)設(shè)的順序,使得如果參數(shù)列舉每個以相同方式排序那么可保證性能和圖像質(zhì)量的單調(diào)性。進一步地,可確定用于多個參數(shù)變體的最優(yōu)預(yù)設(shè)設(shè)置,使得可關(guān)于性能成本最大化圖像質(zhì)量用于最優(yōu)預(yù)設(shè)設(shè)置中的每一個。
[0051]圖3示出根據(jù)另一個實施例的示例性參數(shù)DAG300。作為選項,可在圖1_2的功能性的上下文中實行示例性參數(shù)DAG300。然而當然,可在任何需要的環(huán)境中實現(xiàn)示例性參數(shù)DAG300。還應(yīng)注意的是,在本描述期間可應(yīng)用前述定義。
[0052]如所示,示例性參數(shù)DAG300包括多個節(jié)點302A-1,其每個對應(yīng)于個人計算機的第一分量的變體306A-C (例如CPU類型等)的第一集合304、以及個人計算機的第二分量的變體310A-C (例如GPU類型)的第二集合308的唯一組合。在一個實施例中,DAG300可包括具有通過收集節(jié)點302A-1 (例如頂點等)和多個有向邊312所形成的無向圈的有向圖,使得無法在DAG300中的任何節(jié)點處開始以及跟隨最終再次循環(huán)回該起始節(jié)點的邊的序列。
[0053]此外,基于處理速度定向了在第一分量的變體306A-C的第一集合304和第二分量的變體310A-C的第二集合308 二者中的節(jié)點,較慢節(jié)點指向較快節(jié)點。這樣,第一節(jié)點306A是第一集合304中的最慢節(jié)點,在第一集合304中第二節(jié)點306B快于第一節(jié)點306A但慢于第三節(jié)點306C,以及第三節(jié)點306C是第一集合304中的最快節(jié)點。
[0054]在一個實施例中,可利用一個或多個算法、基準測試、制造商公開內(nèi)容等確定節(jié)點302A-1中的每一個的速度。在另一個實施例中,可通過分析每個節(jié)點中的分量的性質(zhì)以及比較節(jié)點302A-1中的每一個的整體處理速度來確定DAG300內(nèi)的節(jié)點302A-1的位置(包括哪些節(jié)點指向哪些節(jié)點)。
[0055]此外,如所示,有向邊312從與個人計算機的參數(shù)變體的較慢唯一組合相對應(yīng)的節(jié)點指向與個人計算機的參數(shù)變體的明確較快唯一組合相對應(yīng)的節(jié)點。通過該方式,底部節(jié)點3021與個人計算機的參數(shù)變體的最快唯一組合相對應(yīng),而頂部節(jié)點302A與個人計算機的參數(shù)變體的最慢唯一組合相對應(yīng)。
[0056]圖4示出其中可實現(xiàn)各種先前實施例的各種架構(gòu)和/或功能性的示例性系統(tǒng)400。如所示,提供了系統(tǒng)400,其包括連接到通信總線402的至少一個主處理器401。系統(tǒng)400還包括主存儲器404。控制邏輯(軟件)和數(shù)據(jù)存儲在可采取隨機存取存儲器(RAM)形式的主存儲器404中。
[0057]系統(tǒng)400還包括圖形處理器406和顯示器408,即計算機監(jiān)視器。在一個實施例中,圖形處理器406可包括多個著色器模塊、光柵化模塊等。前述模塊中的每一個實際上可置于單個半導(dǎo)體平臺上以形成圖形處理單元(GPU)。
[0058]在本說明書中,單個半導(dǎo)體平臺可以指基于單一半導(dǎo)體(sole unitarysemiconductor)的集成電路或芯片。應(yīng)注意的是術(shù)語單個半導(dǎo)體平臺還可以指具有增加的連通性的多芯片模塊,其模擬片上操作,并且對利用常規(guī)中央處理單元(CPU)和總線實現(xiàn)方案進行大量改進。當然,各種模塊還可按用戶的期望分開定位或位于半導(dǎo)體平臺的各組合中。
[0059]系統(tǒng)400還可包括二級存儲410。二級存儲410包括,例如硬盤驅(qū)動器和/或表示軟盤驅(qū)動器、磁帶驅(qū)動器、光盤驅(qū)動器等的可移動存儲驅(qū)動器??梢苿哟鎯︱?qū)動器以公知的方式自可移動存儲單元讀取和/或?qū)懭肟梢苿哟鎯卧?br>
[0060]計算機程序、或計算機控制邏輯算法,可存儲在主存儲器404和/或二級存儲410中。這種計算機程序當執(zhí)行時使系統(tǒng)400能夠?qū)嵤└鞣N功能。存儲器404、存儲410和/或任何其他存儲是計算機可讀介質(zhì)的可能的示例。
[0061]在一個實施例中,可在主處理器401、圖形處理器406、能夠有主處理器401和圖形處理器406兩者的能力的至少一部分的集成電路(未示出)、芯片組(即設(shè)計為作為用于實施相關(guān)功能的單元工作以及銷售的集成電路組等)和/或任何其他用于該情況的集成電路的上下文中實現(xiàn)各先前圖的架構(gòu)和/或功能性。
[0062]仍然,可在通用計算機系統(tǒng)、電路板系統(tǒng)、專用于娛樂目的的游戲控制臺系統(tǒng)、特定應(yīng)用系統(tǒng)和/或任何其他所期望的系統(tǒng)的上下文中實現(xiàn)各種先前附圖的架構(gòu)和/或功能性。例如,系統(tǒng)400可采取臺式計算機、膝上型計算機和/或任何其他類型邏輯的形式。仍然,系統(tǒng)400可采取各種其他設(shè)備的形式,包括但不限于個人數(shù)字助理(PDA)設(shè)備、移動電話設(shè)備、電視等。
[0063]進一步地,雖然未示出,系統(tǒng)400可耦連到網(wǎng)絡(luò)[例如電信網(wǎng)絡(luò)、局域網(wǎng)(LAN)、無線網(wǎng)絡(luò)、諸如互聯(lián)網(wǎng)的廣域網(wǎng)(WAN)、對等網(wǎng)絡(luò)、電纜網(wǎng)絡(luò)等]用于通信目的。
[0064]雖然上文已描述了各種實施例,應(yīng)予以理解的是其僅由示例而非限制的方式所呈現(xiàn)。因此,優(yōu)選實施例的寬度和范圍不應(yīng)由上文所述的任何示范性實施例所限制,而應(yīng)僅根據(jù)接下來的權(quán)利要求及其等同物來限定。
【權(quán)利要求】
1.一種方法,包括: 標識與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體;以及 同時確定用于所述多個參數(shù)變體中的每一個的設(shè)置。
2.根據(jù)權(quán)利要求1所述的方法,其中所述參數(shù)包括安裝在所述設(shè)備內(nèi)的硬件。
3.根據(jù)權(quán)利要求1所述的方法,其中所述參數(shù)包括安裝在所述設(shè)備內(nèi)的軟件。
4.根據(jù)權(quán)利要求1所述的方法,其中與所述設(shè)備相關(guān)聯(lián)的所述多個參數(shù)變體基于一個或多個標準來標識。
5.根據(jù)權(quán)利要求1所述的方法,其中經(jīng)確定用于所述多個參數(shù)變體中的每一個的所述設(shè)置包括操縱所述多個參數(shù)變體的一個或多個方面的經(jīng)優(yōu)化的設(shè)置。
6.根據(jù)權(quán)利要求1所述的方法,其中用于所述多個參數(shù)變體中的每一個的所述設(shè)置包括關(guān)于第一特點連續(xù)地增加以及關(guān)于第二特點連續(xù)地降低的預(yù)設(shè)的單調(diào)集合。
7.根據(jù)權(quán)利要求1所述的方法,其中針對所述多個參數(shù)變體中的每一個,所述設(shè)置包括該參數(shù)變體的配置,使得具有該參數(shù)變體的所述設(shè)備產(chǎn)生最大化輸出。
8.根據(jù)權(quán)利要求1所述的方法,其中同時確定用于所述多個參數(shù)變體中的每一個的設(shè)置包括創(chuàng)建包括多個節(jié)點的有向無環(huán)圖(DAG),其中所述多個節(jié)點中的每一個表示所述多個參數(shù)變體中的一個。
9.根據(jù)權(quán)利要求1所述的方法,其中同時確定用于所述多個參數(shù)變體中的每一個的設(shè)置包括調(diào)整與所述多個參數(shù)變體中的每一個相關(guān)聯(lián)的一個或多個設(shè)置。
10.根據(jù)權(quán)利要求1所述的方法,其中同時確定用于所述多個參數(shù)變體中的每一個的設(shè)置包括同時相繼調(diào)整用于所述多個參數(shù)變體中的每一個的單個設(shè)置。
11.根據(jù)權(quán)利要求1所述的方法,其中所述多個參數(shù)變體中的每一個影響如何確定所述設(shè)置。
12.根據(jù)權(quán)利要求11所述的方法,其中所述多個參數(shù)變體中的每一個為經(jīng)調(diào)整用于所述多個參數(shù)變體中的每一個的第一經(jīng)確定設(shè)置投票。
13.根據(jù)權(quán)利要求11所述的方法,其中所述多個參數(shù)變體中的每一個對于如何確定所述設(shè)置具有不同水平的影響。
14.根據(jù)權(quán)利要求1所述的方法,其中與特定參數(shù)變體相關(guān)聯(lián)的群體值影響由所述特定參數(shù)變體關(guān)于如何確定所述設(shè)置所發(fā)揮的影響的量。
15.根據(jù)權(quán)利要求1所述的方法,其中與特定參數(shù)變體相關(guān)聯(lián)的指數(shù)值影響由所述特定參數(shù)變體關(guān)于如何確定所述設(shè)置所發(fā)揮的影響的量。
16.根據(jù)權(quán)利要求12所述的方法,進一步包括在為待調(diào)整用于所述多個參數(shù)變體中的每一個的經(jīng)確定設(shè)置投票期間,標識所述多個參數(shù)變體之間的相異。
17.根據(jù)權(quán)利要求16所述的方法,其中響應(yīng)于所述多個參數(shù)變體之間的所述相異的所述標識,所述多個參數(shù)變體分成多個子組。
18.—種在計算機可讀介質(zhì)上所具體化的計算機程序產(chǎn)品,包括: 用于標識與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體的代碼;以及 用于同時確定用于所述多個參數(shù)變體中的每一個的設(shè)置的代碼。
19.一種系統(tǒng), 包括: 處理器,用于標識與設(shè)備相關(guān)聯(lián)的多個參數(shù)變體、以及同時確定用于所述多個參數(shù)變體中的每一個的設(shè)置。
20. 根據(jù)權(quán)利要求19所述的系統(tǒng),其中所述處理器經(jīng)由總線耦連到存儲器。
【文檔編號】G06F9/44GK103530109SQ201310285030
【公開日】2014年1月22日 申請日期:2013年7月8日 優(yōu)先權(quán)日:2012年7月6日
【發(fā)明者】約翰·F·斯皮策, 列夫·萊巴雷迪安, 尤里·烏拉爾斯基 申請人:輝達公司