X



トップページLinux
428コメント107KB
linux パフォーマンスチューニング
0001login:Penguin
垢版 |
04/03/03 09:44ID:QH+di3pA
linuxの高速化、快適化のテクを語りましょう。
0178& ◆vrpD0QYOu.
垢版 |
04/09/30 01:11:51ID:2KSXrZCm
>>177
nvidiaドライバ使ってるんだけどね。それでも遅いね。
windowsとまでは言わないけどgtk1くらいの描画スピードにはなってほしいな。
0179login:Penguin
垢版 |
04/09/30 21:29:48ID:quSjD/Sw
>>173
俺の環境は
CPU: Crusoe (mtrr対応してない)
VGA: siliconmotion(DRI対応ドライバがない)
だ。もんくあるか。

でもsiliconmotionのMAN見ながらxorg.confに
Option "pci_burst"
したらちょっと速くなった。

おまいらもビデオチップのMANはよく読んどけよ。
0180login:Penguin
垢版 |
04/10/14 12:44:21ID:hLloQRhc
卒業研究でPCクラスタを構築して,並列処理の効率をあげる研究を
しています.
FedoraCore2 がインストールされているマシンなのですが,
FreeBSD 4.10Rがインストールされているマシンと比較して,
どうしても性能が上がらなくて困っています.

ハードウェア構成は,Xeon 2.6GHz x 2 のSMPで,チップセットは不明ですが,
ハイパースレッド対応のものです.
メモリは1GBで,HDDはシーゲートの120GB 7200rpm のものを使っています.
HDDは,UDMAで認識されています.

特に通信速度とディスクIOの性能が著しく悪く,現在開発中のソフトウェアで,
ベンチマークをとってみたのですが,同じスペックのハードウェアで
FreeBSD 4.10-stable が入っているマシンの半分ぐらいしか性能が出ません.

特に,オンボードでintel のギガビットNICがついているのですが,
FreeBSDがインストールされているマシンの30%ぐらいの速度を
出すのがやっとのようです.

ネットワークやディスクに関して,どの部分でチューニングすれば
性能が向上しますか?
0181login:Penguin
垢版 |
04/10/14 12:57:48ID:6OxvpXfB
それだけだと、ソフトの問題かOSの問題か分からない。
もっとメジャーなツールでの比較をお勧めする。

その上で、どこがネックになっているのかを見つけてみたら?
0182login:Penguin
垢版 |
04/10/15 04:58:06ID:3GoXBvcu
>>180

でも、FedoraCore2だったら、おおむねFreeBSDの方が
いろいろな点で速いよ。
0183180
垢版 |
04/10/15 13:55:50ID:g34oeDEu
>>181
>>182

レスありがとうございました.
メジャーなツールでの比較ですが,bytebenchなどいくつかやってみたのですが,
いくつかの項目で Linux の方が速いものの全体的には FreeBSDの方が速いようです.

それで試しに,お互いのPCのHDDのみを交換して速度を計ってみましたが,
結果は変わらないようです.

この場合でも我々が開発したソフトウェアでは,やはりLinuxの方がネットワーク速度は
著しく遅いし,HDDの読み書きも遅い状態です.
なぜFreeBSD側の方がこれだけ速いのか,非常に謎です.

なお使用したHDDは,Linux, FreeBSD共に同じ時期に買った同じ型番の
ものですので,HDDそのものの性能差はないと思います.
LinuxとFreeBSD共に設定はインストールしたままのデフォルト状態です.

Linuxの方は,一度再インストールしたのですが,結果は変わりませんでした.
0184login:Penguin
垢版 |
04/10/15 17:14:18ID:spYpf5KW
>>183
>HDDの読み書きも遅い状態です.
DMAはonになってます?
FedoraCore2使ったことないのでハズしてるかもしれませんが,
ディストリビューションによっては
hdparmでonにする必要があるかと思うのですが.

180には
>HDDは,UDMAで認識されています.
とありますが「起動時のIDEドライバのログ見て仰ってるのかな?」
と気になったもので
0185login:Penguin
垢版 |
04/10/16 01:57:08ID:KrUqiEJ7
>183
煽るつもりはないけど、「著しい」差があるとすれば、
やはり、そのプログラムに依存した問題なのでは。
0186login:Penguin
垢版 |
04/10/16 03:51:47ID:np9h0it3
どーせあれだろ。fedoraは最初インストールしたまま何も
いじってない状態なんだろ。それなら激重だよ。他のディストリと
比べてもfedora(redhat)は重いしさ。
0187login:Penguin
垢版 |
04/10/16 04:07:21ID:KrUqiEJ7
だとすると、他のプロセスに処理を食われてて遅いという
可能性? >183 は、それくらいは分かってると思うけど。

後は、LinuxでどのFSを選んでるかもあるけど、(ジャーナルがあって遅いとか)
どうやら、遅いのはHDDへの書き込みだけでなく、
ネットワークの転送速度も差が出てるっぽいね。
0188login:Penguin
垢版 |
04/10/16 11:37:28ID:XowrYbqE
FedoraだけXWindow上で動いてたりして
0189login:Penguin
垢版 |
04/10/16 21:36:17ID:fISuiUFT
gcc 3.3.4の-finline-limit=n(だったような)の、Nの標準値って幾らなんでしょうか。

10000だとか600だとか、サイトによってバラバラで分かりませんでした。
0191login:Penguin
垢版 |
04/10/17 00:02:45ID:cUSbg/sO
>>188

FedoraではXが動いているだけでネットワーク速度が
30%とかにまで低下するの?
0192login:Penguin
垢版 |
04/10/17 00:45:27ID:cUSbg/sO
>>191
Fedora 重杉あげ
0193login:Penguin
垢版 |
04/10/17 01:35:24ID:516OgCO0
>>180
Fedoraがどうかはしらないけど、RedHatでクラスタくむとき、
RedHat純正カーネルにあたってるvmだかスケジューラだかのパッチが
タコで、全然パフォーマンスがあがらない、ってのがあるらしい。

とりあえず、カーネル入れ直してみたら。
0194login:Penguin
垢版 |
04/10/17 02:50:35ID:cUSbg/sO
Fedora は X を切った状態でもなぜか非常に重い。
いや、赤帽も重かったのだが。

Debian とかを使えば、速くなるってことはない?
FreeBSDに負けっ放しっていうのはちょっとな。
0195いなむらきよし
垢版 |
04/10/17 22:02:46ID:s6spoUga
Linuxなんかいじりまわしてる事自体が痛い行為だと気付いたほうがいいキケー!
0196login:Penguin
垢版 |
04/10/17 22:10:58ID:1Dz+F/fC
んじゃナニいじればいいのさ
0197login:Penguin
垢版 |
04/10/17 22:19:53ID:cUSbg/sO
>>193

とりあえず、Fedoraをやめる方向でいくというのはどう?
Debian お勧め!
0198login:Penguin
垢版 |
04/10/17 22:49:20ID:umP+73pC
んじゃナニをいじればいいのさ
0199login:Penguin
垢版 |
04/10/18 00:06:05ID:Ug0/SrBf
glibcにO3フラグつけないほうがいいのかな
glibc以外は全部O3つけてもいいのか
0200login:Penguin
垢版 |
04/10/18 00:23:19ID:qrPYdPgG
>>199
つけないほうがいいらしい。
0201login:Penguin
垢版 |
04/10/18 00:26:52ID:XnBlNM/6
-O3よりむしろ自分のCPUに合わせて-marchとか付けた方がいい
0203login:Penguin
垢版 |
04/10/18 02:07:51ID:qrPYdPgG
>>199
でも,glibcには何もつけないほうがいいらしい。
0204login:Penguin
垢版 |
04/10/20 00:55:36ID:YXU95AC8
glibcとemacs以外全部に
-O3 -march=k6-2 -mmx -m3dnow -pipe -fomit-frame-pointer
つけて動かしてみました
0205login:Penguin
垢版 |
04/10/20 08:45:05ID:AcDaFgHS
>>204
k6-2ユーザーキタ────!!! 人柱乙。

今さら遅いが The LFS Book によれば binutils と
gcc も CFLAGS を変えない方が無難らしい。

実際、uclibc toolchain のビルドで -march=k6-2 を
つけたら失敗して、デフォルトの CFLAGS にしたら
うまくいった経験がある。
0206login:Penguin
垢版 |
04/10/20 10:35:10ID:WhQ56Zcz
K6-IIIだけど -march=k6 と -pipe しか指定したことない。
不充分?
0207login:Penguin
垢版 |
04/10/21 07:25:00ID:8eaZ8C2p
grubにはフラグつけちゃダメなのねorz
0208login:Penguin
垢版 |
04/10/21 07:29:00ID:8eaZ8C2p
>>206
ttp://www.freehackers.org/gentoo/gccflags/flag_gcc3.html
を見ると-march=k6-3まで指定できるらしい
0209login:Penguin
垢版 |
04/11/13 02:07:45ID:HmLE8p90
Firefoxをこんな感じで最適化してる @gcc3.3.5
--enable-optimize="-pipe -ftracer -O2 -march=athlon-xp -mfpmath=sse,387 \
-frename-registers -fforce-addr -fprefetch-loop-arrays \
-fno-math-errno -fno-trapping-math -fno-signaling-nans"

ckなカーネル使ってる人なら
kernel.interactive=1
vm.hardmaplimit=0
vm.mapped=66
ここらへんいじってみるのもいいんじゃないかな。
0210login:Penguin
垢版 |
05/01/27 23:20:32ID:TvhvRMQk
起動高速化したいっす。
0211login:Penguin
垢版 |
05/01/28 08:52:17ID:WnJwE4bn
最低限のカーネルにして、init=/bin/sh
0212login:Penguin
垢版 |
05/01/29 04:42:54ID:+EbRr8MP
今のところPenIII800Mhzで起動時間6秒がオレの最高記録
超意味無かったけど
0214login:Penguin
垢版 |
05/01/31 14:45:59ID:Pk4W4dbQ
デスクトップ用途なんですけど、起動高速化のポイントを教えてチョンマゲ。
0216login:Penguin
垢版 |
05/02/01 20:24:57ID:FATIS0Zt
デスクトップ用途なら、起動高速化するより
ハイバネーションしたほうがよくね?
0217login:Penguin
垢版 |
05/02/01 20:59:42ID:XbA2uZyK
え、いつのまにLinuxでハイバネ出来るようになったんだ?ACPIで?
0218名無し募集中。。。
垢版 |
05/02/01 21:05:45ID:ni2Ix7l6
ハイバネーション自体は10年近く前からできたと思うが。
Thinkpad560でハイバネーション使ってたし。
0219login:Penguin
垢版 |
05/02/02 19:48:13ID:znbKGKHD
>>217
Power Management supportにSoftware Suspendがある。
これはACPIとかAPMには依存しないらしい。

漏れも、リブレットでハイバネーションしてた気がする。
もう全然覚えてないんだけど。
0220login:Penguin
垢版 |
05/02/10 12:15:54ID:oOWFqUeh
>>214
ガンガンモジュール化してカーネルサイズをできる限り小さくする。
起動するデーモンの数を減らす。
ブートスクリプトからif文を極力減らす。
0221login:Penguin
垢版 |
05/02/10 12:28:24ID:brMmHycg
>ブートスクリプトからif文を極力減らす。
前2つはもちろんやってるんですけど、この辺りが難しい。
取捨のポイントとか、ノウハウがあったら教えて欲しい。
0222login:Penguin
垢版 |
05/02/10 20:35:34ID:oOWFqUeh
>>221
俺もあんま詳しいわけじゃないんだけど例えば、
if devfs
else udev
fi
みたいなかんじでudevを使うとしたらこういうときはudevがあること前提で
if文による存在確認なしでudevを実行しちゃうとか。
おれはarch linuxをベースにいろいろやってんだけどブートスクリプトを
起動順におっかけるとシステムの理解にもつながると思うよ。速くなる効果は
そんなにないと思うけど。デーモンの起動スクリプトなんかはだいたい
条件文使ってる場合が多いけど自分専用なら無条件で起動してもいいんじゃん?
汎用性は思いっきり下がるけどね。ただfedoraとかでは難しいんじゃないかな。
ブートスクリプトが複雑すぎる。plamoやslackやcruxやarchなんかは
わかりやすいよ。
0223login:Penguin
垢版 |
05/02/10 22:47:50ID:dGBvqZF8
うーん。もちろん起動スクリプト(rc.sysinit)は追ってるんですけど
大きな流れはわかるけど、どれが必要か、どれが不要かって悩んでるんですよ。

例えばquotaとか、usb-file-systemとか、そういう所のチューニング方法のノウハウはないかなと。
ずっと前から、ちょっとづつ見てるんですけど、なかなかポイントが見出せないんです。
とりあえず、起動メッセージを(redhat型の)旧来型にしてる位はやってます。
0224login:Penguin
垢版 |
05/02/10 22:50:17ID:dGBvqZF8
書き忘れましたが、Vine3.1を使ってます。
0225login:Penguin
垢版 |
05/02/11 09:15:30ID:+gDG48b5
>>223
こーゆーアプローチもあるみたいよ。↓の「起動プロセスの高速化」のとこ。
ttp://www.debian.org/News/weekly/2004/46/
デスクトップ用途だと稼ぎ代があまりないかもしれんけど。
0226login:Penguin
垢版 |
05/02/11 12:15:56ID:2fRHG2mE
ありがとうございます。

ですが、その類のサーバー類全て動いてません....
0227login:Penguin
垢版 |
05/02/16 19:29:02ID:k+Jq8o1L
WinXPのアンチエイリアスとかClearTypeのベンチ結果。2kと比べて遅いという結果。
ttp://www.atmarkit.co.jp/fwin2k/xp_feature/015xpperftes01/xpperftes05.html
Linuxだとどうなる?gtkとかqtとか。
0228login:Penguin
垢版 |
2005/04/15(金) 19:23:18ID:xiZGb7YY
ttp://www.anandtech.com/printarticle.aspx?i=2114
SuSE速いね。Fedoraはどっか壊れてる。
0229login:Penguin
垢版 |
2005/04/18(月) 06:00:42ID:DrxBHwMs
gcc以外のコンパイラ試した人いる?
intel純正のFree版 for Linuxとかどうなの?
gccより速いのは分かってるんだけど話題に上がらないのなんでかな?
0230login:Penguin
垢版 |
2005/04/18(月) 17:33:59ID:eo0WeKNL
とりあえずiccインストールしてみた。
パフォーマンステスト用のいいソースコードない?
0232login:Penguin
垢版 |
2005/04/19(火) 02:18:21ID:JNjUpo8L
サンクス。
ちょっと試してみた結果。
scimark2


gcc -march=i686 -O3 -pipe -fomit-frame-pointer

Composite Score: 170.11
FFT Mflops: 142.97 (N=1024)
SOR Mflops: 255.56 (100 x 100)
MonteCarlo: Mflops: 52.63
Sparse matmult Mflops: 167.18 (N=1000, nz=5000)
LU Mflops: 232.20 (M=100, N=100)


icc -O2 -tpp6
Using 2.00 seconds min time per kenel.
Composite Score: 205.57
FFT Mflops: 135.42 (N=1024)
SOR Mflops: 306.84 (100 x 100)
MonteCarlo: Mflops: 39.13
Sparse matmult Mflops: 189.96 (N=1000, nz=5000)
LU Mflops: 356.48 (M=100, N=100)

gcc 3.3.2
icc 8.1
0233login:Penguin
垢版 |
2005/04/19(火) 08:19:48ID:YESwyIJd
先週立ち読みしたUNIX USERにiccの記事があったよ。これだったかな?
ttp://www.unixuser.jp/magazine/2005/200504.html
gzipとかbzip2とかでテストして、速くなったり遅くなったりという結果だった。
遅くなるやつは、gcc向けにソース書いたりしてて遅くなるのかな?
0234login:Penguin
垢版 |
2005/04/19(火) 09:02:41ID:6IdIWu//
FFTは逆に遅くなるのか・・・・・・
面白い結果だな
0235login:Penguin
垢版 |
2005/04/19(火) 21:01:49ID:nKiiE0YZ
FireFoxのconfigure覗いたらiccにも対応してるのにやり方が思いつかない。
何度読んでも分からない。
くやしいな。
0236login:Penguin
垢版 |
2005/04/21(木) 07:21:33ID:eQKDCXcw
specちょっと書き換えるだけでiccに変更できる。
はずだったけど一部直にgccと埋め込んであるmakeがあり苦戦中、反則だよ。
firefoxってwin,Mac,linux、ソースコード共通なんだね、びっくりした。
ついでにfirefoxのconfigure。
1040行めのifに対するelseが1975行め、こんなの読めるわけねぇだろ!


0237login:Penguin
垢版 |
2005/04/22(金) 00:38:45ID:8MAiPa+M
>1040行めのifに対するelseが1975行め、こんなの読めるわけねぇだろ!
ワロス
0238login:Penguin
垢版 |
2005/04/22(金) 00:39:58ID:g6dMQ8o8
うmナイスな突込みだ
0239login:Penguin
垢版 |
2005/05/01(日) 14:15:29ID:CzA+N7/M
>>237
俺もそう思う。Fedoraとかのブートもそういう域に入ってると思うな。
全体的に見通しをよくしてほしいね。
0240login:Penguin
垢版 |
2005/05/01(日) 17:25:31ID:vkzC4gxx
2週間後にレスがつくとは。
firefoxのiccビルド完走したよ。
一応動いたけどちょっと遅い、最適化の失敗だと思う。
追いかける元気なし。
ビルドの進行状況は/BUILD/mozillaのファイル数で分かる。
5万4千ちょっとがゴール。
iccは大変だったけどgccなら何もしなくてもbuildできる。
やればi386の標準的なやつより速くなるよ。
0241login:Penguin
垢版 |
2005/05/07(土) 00:02:44ID:9nFSTuty
すんなり通るかどうか分からん時は、まず最適化無しで試してみれば?
C++でも一瞬で終わる。
0242login:Penguin
垢版 |
2005/05/18(水) 01:14:54ID:3mIvABuE
http://www.spec.org/jAppServer2004/results/
Red Hat Enterprise Linux AS 3.0 SP1
These entries were added to /etc/sysctl.conf
net.core.netdev_max_backlog = 7000
net.ipv4.tcp_syn_retries = 20
net.ipv4.tcp_synack_retries = 20
net.ipv4.tcp_fin_timeout = 30
vm.max_map_count = 131072
This entry was added to /root/.bash_profile
ulimit -n 8192

SuSE Linux Enterprise Server 8, Service Pack 3
These entries were added to /etc/init.d/sysctl.conf
net.core.netdev_max_backlog = 600
net.core.somaxconn = 1024
net.ipv4.tcp_synack_retries = 20
net.ipv4.tcp_fin_timeout = 30
fs.file-max=65535
kernel.shmmax=1073741824
net.ipv4.tcp_sack=0
net.ipv4.tcp_timestamps=0
vm.bdflush=100 1200 128 512 15 5000 100 0 0
kernel.sched_yield_scale=1
This entry was added to /root/.profile
ulimit -n 8192
0243login:Penguin
垢版 |
2005/05/18(水) 01:15:33ID:3mIvABuE
SuSE Linux Enterprise Server 8, Service Pack 3
These entries added to /etc/init.d/sysctl.conf
fs.file-max=65535
kernel.shmmax=1073741824
net.ipv4.tcp_sack=0
net.ipv4.tcp_timestamps=0
vm.bdflush=100 1200 128 512 15 5000 100 0 0
kernel.sched_yield_scale=1

SuSE Linux Enterprise Server 8 Service Pack 3
These entries added to /etc/init.d/sysctl.conf
fs.file-max=65535
kernel.shmmax=1073741824
net.ipv4.tcp_sack=0
net.ipv4.tcp_timestamps=0
vm.bdflush=100 1200 128 512 15 5000 100 0 0
kernel.sched_yield_scale=1
0245login:Penguin
垢版 |
2005/05/25(水) 22:35:38ID:fEWIhXOO
知識だけではだめです。経験と実績も必要です。
0246login:Penguin
垢版 |
2005/05/26(木) 05:26:15ID:b95L1lJk
以前したところ RedHat 9が遅かったので、
Opteron Dual + SUSE Linux 9.3を導入試験中です。
Apache 2.1.4等でパフォーマンスを
調べているのですが、かなり遅いです。

ためしに、HDD(同じ型番)を交換してFreeBSD 5.4Rと比較してみたのですが
こちらは2倍ちかくの性能が出ましたのでハードウェアの問題では
ないと思います。

インターネット上では、2.6.11のカーネルはかなり速いように
報告されていますが、どのあたりを調整すればパフォーマンスが
向上するのでしょうか?

とりあえず、どれもインストールしたままの状態で使っています。
0247login:Penguin
垢版 |
2005/05/26(木) 13:33:15ID:DO1p9yla
SMPカーネルじゃなかったってオチじゃないだろうな…
0249login:Penguin
垢版 |
2005/05/27(金) 18:55:25ID:0zWtXGWI
i386のバイナリ使ってるとか?
2倍ちかくの性能差ならちょうど計算合う。
0250login:Penguin
垢版 |
2005/05/27(金) 19:51:35ID:ZuVsIjxS
>>249
64bitと32bitカーネルで2倍も差が出ますか?
0251login:Penguin
垢版 |
2005/05/27(金) 21:39:29ID:Q7Qim0uR
>>246

とりあえず、私のAthlonXP1700のマシンと交換してあげます。
0252login:Penguin
垢版 |
2005/05/27(金) 22:28:01ID:hokb0VO/
hint: file system
0253login:Penguin
垢版 |
2005/05/28(土) 01:07:44ID:wsPvvusp
ファイルI/Oの非同期/同期
0254login:Penguin
垢版 |
2005/05/29(日) 18:21:21ID:fIAtZcX9
filecacheを設定する方法を教えてくださぃ(下限・上限とか)
0255login:Penguin
垢版 |
2005/05/30(月) 16:40:03ID:wWo4MSHW
空いてるメモリは全てキャッシュとして利用している。

0257login:Penguin
垢版 |
2005/11/24(木) 08:11:34ID:RZQmt0zW
2.6.14.2
CONFIG_PREEMPT_NONE=y
CONFIG_HZ=100
CONFIG_IOSCHED_NOOP=y
でも案外音飛びしないな。普通のデスクトップ用途ならckじゃなくともこんな設定でも充分っつうことかな。
0258login:Penguin
垢版 |
2005/11/24(木) 17:25:43ID:ygizxwun
インテルのハイパースレッディング技術でサーバ性能の低下が発生か
ttp://japan.cnet.com/news/ent/story/0,2000047623,20091397,00.htm

P4へぼすぎてワロス
0259login:Penguin
垢版 |
2005/11/24(木) 22:04:33ID:ezk1xeJ9
最悪が重なればどうなるかは分かってたはず。
つっこまれる前にカミングアウトできなかったインテル。
キャッシュの取り合いつぶし合いはデュアルコアのp4やathlonでも起こるはず。
athlonはサーバーであまり使われていないのが幸い。
インテルは根本的解決策として共有キャッシュ。
0260login:Penguin
垢版 |
2005/11/25(金) 03:59:17ID:S2L1PbD/
HTTの話なのになんでデュアルコアやathlonがでてくんの
0262login:Penguin
垢版 |
2005/11/25(金) 20:50:41ID:ZYi02iFx
>>259
HTTってキャッシュじゃなくてレジスタだと思うが・・・
0263login:Penguin
垢版 |
2005/12/07(水) 20:11:50ID:yM4/VoR2
まぁ今更なんですが、一応。
ttp://debian.fam.cx/index.php?Tips#zfacfc27
0264login:Penguin
垢版 |
2005/12/25(日) 19:25:33ID:OkFXu416
gcc 3.4のAthlonXPでFirefoxを最適化してる
CFLAGS="-O2 -march=athlon-xp -mfpmath=sse -falign-functions=64 -falign-labels=6 -falign-jumps=6 -falign-loops=6 \
-DNDEBUG -DNO_DEBUG -DG_DISABLE_ASSERT -fomit-frame-pointer -ftracer -ffast-math -fno-unsafe-math-optimizations \
-fno-strict-aliasing -pipe -fpeel-loops -fbranch-target-load-optimize -fbranch-target-load-optimize2 \
-frename-registers -funroll-loops -freduce-all-givs -freorder-blocks -fno-reorder-functions"
CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden -fno-enforce-eh-specs"
-O -march=i586と大して体感速度変わらなくても気にしない
0265login:Penguin
垢版 |
2006/01/12(木) 23:52:05ID:lMwJjwVt
age
0266login:Penguin
垢版 |
2006/01/21(土) 07:01:19ID:vwfA/GBb
kernelに
I-pipe・Adaptive readahead
ckからvm-mappedパッチ、hzの値を任意に変更できるパッチを当てる
hzの数値は1728
後はsysctl.confに
kernel.threads-max = 65535
fs.file-max = 65535
vm.readahead_ratio = 100
vm.readahead_hit_rate = 5
vm.hardmaplimit = 0
vm.mapped = 10
追記
後はswapをパーティションからファイルに変更
ごわごわした体感がきびきびになった感じ
0267login:Penguin
垢版 |
2006/02/16(木) 19:39:29ID:I+0mKfgz
暇なのでflag晒してみる
-O2 -pipe -s -march=athlon64 -m32 -mfpmath=sse -msse -msse2 \
-funit-at-a-time -fomit-frame-pointer -momit-leaf-frame-pointer -fno-var-tracking \
-ftree-vectorize -ftracer -floop-optimize2 -funswitch-loops -ftree-loop-im \
-fgcse-sm -fgcse-las -fgcse-after-reload -fweb -frename-registers \
-funsafe-loop-optimizations -ffast-math
0268login:Penguin
垢版 |
2006/02/18(土) 12:38:45ID:GDUX4TR2
デバッグしないのならリンカーに-Wl,-s渡せば-Osにしなくとも充分サイズ縮まって速度は変わらないまま行けるな
姫野ベンチ
gcc -O2 -march=athlon-xp -pipe -Wl,-s size:8.3kb Grid-size=S 67MFLOPS
gcc -Os -march=athlon-xp -pipe -Wl,-s size:7.4kb Grid-size=S 57MFLOPS
-Wl,-s無しだと双方とも10kbオーバー。ベンチ結果は変わらず。
GCCは4.0.2
0269login:Penguin
垢版 |
2006/02/18(土) 12:51:00ID:M+2Pe4iM
x86な人は-mno-align-stringopsも悪くない
0270login:Penguin
垢版 |
2006/02/23(木) 14:09:30ID:ORgvzJHl
ttp://kernel.jakem.net/patches/genetic/2.6.12/2.6.12-gl2/genetic-zaphod-cpu-sched-2.6.12-gl2.patch
から遺伝的アルゴリズムの部分を削除してみた、これはこれで音飛びしないし悪くないかも。x86の2.6.15でしかテストしてない。自己責任。

Index: 2.6/include/linux/sched.h
===================================================================
--- 2.6.org/include/linux/sched.h2005-08-15 16:16:26.000000000 -0500
+++ 2.6/include/linux/sched.h2005-08-15 16:18:21.000000000 -0500
@@ -143,6 +143,20 @@
#include <linux/spinlock.h>

/*
+ * These are the 'tuning knobs' of the scheduler:
+ *
+ * Default configurable timeslice is 100 msecs, maximum configurable
+ * timeslice is 1000 msecs and minumum configurable timeslice is 1 jiffy.
+ * Timeslices get renewed on task creation, on wake up and after they expire.
+ */
+#define MIN_TIMESLICE1
+#define DEF_TIMESLICE(10 * HZ / 1000)
+#define MAX_TIMESLICE(1000 * HZ / 1000)
+#define DEF_DESKTOP_TIMESLICE ((DEF_TIMESLICE > 10) ? (DEF_TIMESLICE / 10) : 1)
+
+#define DEFAULT_UNPRIV_RT_THRESHOLD 10
+
+/*
* This serializes "schedule()" and also protects
* the run-queue from deletions/modifications (but
* _adding_ to the beginning of the run-queue has
0271login:Penguin
垢版 |
2006/02/23(木) 14:10:30ID:ORgvzJHl
Index: 2.6/kernel/sched.c
===================================================================
--- 2.6.orig/kernel/sched.c2005-08-15 16:16:26.000000000 -0500
+++ 2.6/kernel/sched.c2005-08-15 16:18:21.000000000 -0500
@@ -85,3 +85,4 @@
-#define MIN_TIMESLICEmax(5 * HZ / 1000, 1)
-#define DEF_TIMESLICE(100 * HZ / 1000)
+#define MIN_TIMESLICE1
+#define DEF_TIMESLICE(10 * HZ / 1000)
+#define MAX_TIMESLICE(1000 * HZ / 1000)
#define ON_RUNQUEUE_WEIGHT 30
0272login:Penguin
垢版 |
2006/02/26(日) 14:26:39ID:P0wgzWH7
なんでHZは100、1000と来て半端な250なんだろう
500のほうがパフォーマンス・省電力的にもいいと思うんだが
0274login:Penguin
垢版 |
2006/02/27(月) 11:02:02ID:1Egv0MIp
>>272
それLKMLで散々議論されたよ。
最終的には、リーナスの鶴の一声で終わった希ガス。
#ぶっちゃけ、正しい値なんて無いよ(環境違うと値も変わるし)
0275login:Penguin
垢版 |
2006/02/27(月) 14:39:32ID:1LjKfRfr
gcc 4.1で姫野ベンチS
-O0 -pipe -DSMALL 83MFLOPS
-O1 -pipe -DSMALL 291MFLOPS
-O2 -pipe -DSMALL 258MFLOPS
-O3 -pipe -DSMALL 259MFLOPS

-O1が最速な件について
0276login:Penguin
垢版 |
2006/02/27(月) 18:25:56ID:1LjKfRfr
CPUはAthlonXP、
-O1に -fstrength-reduce -fprefetch-loop-arrays付けたら1割程ベンチ結果が良くなった
-O2や-O3の立場ないな、gcc4.1
レスを投稿する


ニューススポーツなんでも実況