本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,并且更具體地涉及一種基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)方法和裝置。
背景技術(shù):
每個(gè)塊設(shè)備或者塊設(shè)備的分區(qū),都對(duì)應(yīng)有自身的請(qǐng)求隊(duì)列(request_queue),而每個(gè)請(qǐng)求隊(duì)列都可以選擇一個(gè)輸入/輸出(i/o)調(diào)度器來(lái)協(xié)調(diào)所遞交的請(qǐng)求(request)。linux系統(tǒng)的i/o調(diào)度器的基本目的是將請(qǐng)求按照它們對(duì)應(yīng)在塊設(shè)備上的扇區(qū)號(hào)進(jìn)行排列,以減少磁頭的移動(dòng),提高效率。linux內(nèi)核2.6開始引入了全新的i/o調(diào)度子系統(tǒng),提供了cfq、deadline、noop三種i/o調(diào)度器。
cfq(completelyfairscheduler)調(diào)度器:在觸發(fā)i/o請(qǐng)求的所有進(jìn)程中確保磁盤i/o帶寬的公平分配。采用輪詢方式掃描i/o輸入隊(duì)列,選擇第一個(gè)非空隊(duì)列,依次調(diào)度不同隊(duì)列中特定個(gè)數(shù)(公平)的請(qǐng)求,然后將這些請(qǐng)求移動(dòng)到調(diào)度隊(duì)列的末尾。cfq調(diào)度器適用于有大量進(jìn)程的多用戶系統(tǒng)。
deadline調(diào)度器:主要針對(duì)i/o請(qǐng)求的延時(shí)而設(shè)計(jì),每個(gè)i/o請(qǐng)求都被附加一個(gè)最后執(zhí)行期限。deadline調(diào)度器更適合于數(shù)據(jù)庫(kù)應(yīng)用。
noop調(diào)度器:是內(nèi)核中最簡(jiǎn)單的i/o調(diào)度算法。noop調(diào)度算法也叫作電梯調(diào)度算法,它將i/o請(qǐng)求放入到一個(gè)fifo(先進(jìn)先出)隊(duì)列中,然后逐個(gè)執(zhí)行這些i/o請(qǐng)求。當(dāng)然,對(duì)于一些在磁盤上連續(xù)的i/o請(qǐng)求,noop算法會(huì)適當(dāng)做一些合并。這個(gè)調(diào)度算法特別適合那些不希望調(diào)度器重新組織i/o請(qǐng)求順序的應(yīng)用。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)上述現(xiàn)有技術(shù)中存在的問(wèn)題,本發(fā)明的目的在于提供一種基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)方法和裝置,針對(duì)國(guó)產(chǎn)平臺(tái)性能較低的情況,調(diào)整基于龍芯平臺(tái)的系統(tǒng)i/o調(diào)度器以使系統(tǒng)達(dá)到最佳性能并滿足不同應(yīng)用場(chǎng)景的需求。
根據(jù)本發(fā)明,提供一種基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)方法,該方法包括以下步驟:
步驟一:確定系統(tǒng)默認(rèn)的i/o調(diào)度器;
步驟二:動(dòng)態(tài)修改i/o調(diào)度器以選擇為需求帶來(lái)最佳性能的調(diào)度器;
步驟三:修改系統(tǒng)內(nèi)核引導(dǎo)參數(shù)以永久更改i/o調(diào)度器;以及
步驟四:使用命令來(lái)進(jìn)行讀寫測(cè)試以確定系統(tǒng)性能的提升。
進(jìn)一步地,在步驟三之后進(jìn)一步包括通過(guò)修改選定的i/o調(diào)度器的相關(guān)參數(shù)以進(jìn)一步調(diào)優(yōu)系統(tǒng)性能。
進(jìn)一步地,在步驟三之后進(jìn)一步包括通過(guò)修改磁盤相關(guān)的內(nèi)核參數(shù)以進(jìn)一步調(diào)優(yōu)系統(tǒng)性能。
進(jìn)一步地,調(diào)度器包含cfq調(diào)度器、deadline調(diào)度器和noop調(diào)度器中的一種或多種。
根據(jù)本發(fā)明,還提供一種基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)裝置,該裝置包括以下裝置:
確定系統(tǒng)默認(rèn)的i/o調(diào)度器的裝置;
動(dòng)態(tài)修改i/o調(diào)度器以選擇為需求帶來(lái)最佳性能的調(diào)度器的裝置;
修改系統(tǒng)內(nèi)核引導(dǎo)參數(shù)以永久更改i/o調(diào)度器的裝置;以及
使用命令來(lái)進(jìn)行讀寫測(cè)試以確定系統(tǒng)性能的提升的裝置。
進(jìn)一步地,該裝置進(jìn)一步包括通過(guò)修改選定的i/o調(diào)度器的相關(guān)參數(shù)以進(jìn)一步調(diào)優(yōu)系統(tǒng)性能的裝置。
進(jìn)一步地,該裝置進(jìn)一步包括通過(guò)修改磁盤相關(guān)的內(nèi)核參數(shù)以進(jìn)一步調(diào)優(yōu)系統(tǒng)性能的裝置。
進(jìn)一步地,調(diào)度器包含cfq調(diào)度器、deadline調(diào)度器和noop調(diào)度器中的一種或多種。
根據(jù)本發(fā)明,還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序(指令),用于實(shí)現(xiàn)對(duì)系統(tǒng)性能的調(diào)優(yōu),所述程序(指令)被處理器執(zhí)行時(shí)實(shí)現(xiàn)基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)方法的步驟。
本發(fā)明基于龍芯平臺(tái),調(diào)節(jié)系統(tǒng)i/o調(diào)度器以使系統(tǒng)達(dá)到最佳性能,并且基于龍芯平臺(tái)的系統(tǒng)可以滿足不同的應(yīng)用場(chǎng)景。
附圖說(shuō)明
圖1為根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)方法的流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,下面結(jié)合附圖,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解的是,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)方法的流程圖。如圖1所示,方法開始于框s101。在框s101,進(jìn)入龍芯平臺(tái)操作系統(tǒng),打開終端,在終端中輸入以下命令:cat/sys/block/sda/queue/scheduler,即可查看系統(tǒng)中正在處理系統(tǒng)i/o的調(diào)度器,方法前進(jìn)到框s102。在框s102,動(dòng)態(tài)更改系統(tǒng)的i/o調(diào)度器,以選擇可以為需求帶來(lái)最佳性能的調(diào)度器,例如,在終端中輸入以下命令:echonoop>/sys/block/sda/queue/scheduler,即可將系統(tǒng)的當(dāng)前調(diào)度器設(shè)定為noop調(diào)度器,此更改可以在不重新啟動(dòng)計(jì)算機(jī)的情況下生效,且更改完成后,i/o調(diào)度器將會(huì)立即切換,此時(shí)用戶可以查看系統(tǒng)性能是否提高,然后,方法前進(jìn)到框s103。在框s103,在選定i/o調(diào)度器之后,可以通過(guò)編輯/boot/boot.cfg文件,修改系統(tǒng)內(nèi)核引導(dǎo)參數(shù)并加入“elevator=調(diào)度器名稱”來(lái)永久更改i/o調(diào)度算法,方法前進(jìn)到框s104。在框s104,對(duì)所選定的i/o調(diào)度器的相關(guān)參數(shù)以及磁盤相關(guān)的內(nèi)核參數(shù)/proc/sys/vm/dirty_expire_centisecs等進(jìn)行修改,以對(duì)系統(tǒng)性能進(jìn)一步調(diào)優(yōu),方法前進(jìn)到框s105。在框s105,使用dd命令進(jìn)行讀寫測(cè)試,以確定系統(tǒng)性能是否提升,具體為:在終端命令行中輸入命令ddif=/dev/sda1of=/dev/nullbs=2mcount=300,ddif=/dev/zeroof=/tmp/testbs=2mcount=300。方法結(jié)束。
根據(jù)本發(fā)明的另一個(gè)實(shí)施例,設(shè)計(jì)了一種基于龍芯平臺(tái)的系統(tǒng)性能調(diào)優(yōu)裝置。該裝置包括依次通信地連接的以下裝置:用于確定系統(tǒng)中正在使用的i/o調(diào)度器的裝置、動(dòng)態(tài)修改i/o調(diào)度器以選擇為需求帶來(lái)最佳性能的調(diào)度器的裝置、修改系統(tǒng)內(nèi)核引導(dǎo)參數(shù)以永久更改i/o調(diào)度器的裝置、通過(guò)修改選定的i/o調(diào)度器的相關(guān)參數(shù)以進(jìn)一步調(diào)優(yōu)系統(tǒng)性能的裝置、通過(guò)修改磁盤相關(guān)的內(nèi)核參數(shù)以進(jìn)一步調(diào)優(yōu)系統(tǒng)性能的裝置、以及使用命令來(lái)進(jìn)行讀寫測(cè)試以確定系統(tǒng)性能的提升的裝置。
關(guān)于這里所述的過(guò)程、系統(tǒng)、方法等,應(yīng)理解的是雖然這樣的過(guò)程等的步驟描述為按照一定的順序排列發(fā)生,但這樣的過(guò)程可以采用以這里描述的順序之外的順序完成的描述的步驟實(shí)施操作。進(jìn)一步應(yīng)該理解的是,某些步驟可以同時(shí)執(zhí)行,可以添加其他步驟,或者可以省略這里所述的某些步驟。換言之,這里的過(guò)程的描述提供用于說(shuō)明某些實(shí)施例的目的,并且不應(yīng)該以任何方式解釋為限制要求保護(hù)的發(fā)明。
相應(yīng)地,應(yīng)理解的是上面的描述的目的是說(shuō)明而不是限制。在閱讀上面的描述時(shí),除了提供的示例外許多實(shí)施例和應(yīng)用都是顯而易見的。本發(fā)明的范圍應(yīng)參照所附權(quán)利要求以及與權(quán)利要求所要求的權(quán)利等效的全部范圍而確定,而不是參照上面的說(shuō)明而確定。可以預(yù)期的是這里所討論的領(lǐng)域?qū)⒊霈F(xiàn)進(jìn)一步的發(fā)展,并且所公開的系統(tǒng)和方法將可以結(jié)合到這樣的未來(lái)的實(shí)施例中??傊?,應(yīng)理解的是本發(fā)明能夠進(jìn)行修正和變化。
還應(yīng)當(dāng)理解的是,任何所述的過(guò)程或所述過(guò)程中的步驟可以與其它公開的過(guò)程或步驟組合以形成本公開范圍內(nèi)的結(jié)構(gòu)。本文公開的示例性結(jié)構(gòu)、和過(guò)程是為了說(shuō)明的目的,而不應(yīng)被解釋為限制。