SSE patch for FreeBSD4.2

(poor)English language
Pentium3で拡張されたMMX2&SSE命令は、FreeBSD4.2に付属の でコンパイル、もしくはアセンブル出来るが、このうちSSE命令はカーネルのサポート が無いと使えない。5-currentはどうか知らんが、4.2Rではそのままでは使えない。 職場のマシンで検索して見付けた(ので正確なURLは失念)東工大と岡山大のWWWページに あった4.0R用のパッチを4.2R用にfitさせた。4.0Rから4.2Rの間でmendocino celeron 対応のコードが増えているが、これに対して害が無いか動作確認はしていない。もし 確かめることが出来た場合は、結果の如何にかかわらず下記のメールアドレスまで 教えて欲しい。

Linuxは2.4.xから正式にSSEに対応しているようだ。

(2001/01/26)mendocino celeronでも単発なら害が無いようだ。SMPの場合の情報を 引続き求む!
(2001/02/09)加藤@岡山大さんからメールがあり失念していたURLが判明。メール ありがとう!>加藤@岡山大さん


(2001/03/03)cuppermine celeronで単発でSSE命令が使えることを確認。
(2001/05/05)FreeBSD4.3用のパッチを作成。4.2用のパッチでも4.3に当たるが、 一応作り直した。
(2001/05/15)加藤@元岡山大さんのWWWページが移動。リンクを張り直す。
(2001/06/11)5-currentに対応(したつもり)。cuppermine celeronシングルでしか 動作確認していない。
(2001/06/30)4.3RでPentium4での動作報告有り。感謝!>大橋@九工大さん
(2001/08/18)FreeBSD本家の-current,-stableに無事マージされた。私のsend-pr: kern/28070はcloseした。またloop.CにSSE2用のコードを入れてみたが、Pentium4を 持っていないので動作確認出来ないでいる。
(2001/10/06)AthlonXPでもSMPでSSEが使えることを確認。AthlonXP/1.33GHz dualで 試験した。猛烈に速い!

パッチ:

本家にマージされたので、FreeBSD4.4R, 5-current(2001/08頃)以降ではパッチを 当てる必要は無い。

# cd /usr/src
# zcat /PATH/TO/sys-r4?0-SSE.diff.gz |patch |& tee patch.log
これを当てた後、kernel configファイルに、
options CPU_ENABLE_SSE
という行を追加して、configする。その後いつものように make depend && make installだ。

reboot後、sysctl hw.instruction_sse の結果が、hw.instruction_sse: 1 になる ことを確認する。

SSE試験用のサンプルコードがあります。


中村和志のFreeBSDページ

このページ<http://www.kobe1995.net/~kaz/FreeBSD/SSE.html>はリンク フリーです。無断でリンクして構いません。

またこのページの内容について、正確を期すよう努力は致しますが、 全くの無保証です。ここで得た情報は、全て自分の責任でご利用下さい。

Powered by FreeBSD
For questions or comments, please send mail to: kaz@kobe1995.net