[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[OSASK 2288] Re: Mandelbrot



  こんばんは、川合です。


MITSUNARI shigeo さんは 2001/10/04 22:35:39 の「[OSASK 2279] Re:Mandelbrot」で書きました:

>>のいずれかに置き換えるとそんなに速さが落ちてしまうんでしょうか?
>試してみました。
>初期値のグラフを書くのにPIIIでfcomip版では約2000clk, 互換FPU版では
>2500clkでした。20%ほど違うので私にはちょっと気になる速度劣化です。

  確かに、2割というのは小さくない値です。

>>2バージョン用意することなのかもしれませんが
>判別APIが登場すれば用意するかもしれません(^^;

  僕が書いた「2バージョン用意する」というのは、普通のFPU命令しか
使わないmandelと、FCOMIPも使うmandel2を用意する、という意味です
。しかしまあ、気が進まないのでしたら、無理にとはいいません。

  裏技としては、未定義命令例外のルーチンに細工をして、FCOMIPをど
のマシン上でも実行可能にしてしまうという手があります。これは、OS
を作っている側の特権ともいえますが、これをやるくらいならCだけで
書いた方が速いでしょうね(例外を経由するともちろん遅いわけです)
。

>>  おっしゃる通りでしょう(笑)。ところで、gccはWin32上でも走るバ
>>ージョンがあるんでしょうか?もしあるなら、COFFで出力できるかどう
>>かに興味があるのですが・・・。
>cygwin他いくつか系統があるようですが、gccなんでどれもelf形式じゃないかと
>思います。

  elf形式というのは、実行バイナリーの形式のことだと思っていたの
ですが、リンク前のオブジェクトファイルでもelf形式というのがある
んですか?

  うーん、オブジェクトファイルは奥が深い・・・。

>ふと思ったのですけど、VC++のファイルリスティングによるアセンブリ
>コード出力結果をMASMに処理させるというのは難しいのでしょうか。
>私はMASMを使ったことが無いので根拠があるわけじゃないのですけど
>結構いけそうな気がします。

  試していないのでなんともいえませんが、コンパイラが出力するアセ
ンブラソースはたいてい文法が狂っていて、人間が読むことはできます
が、そのままアセンブラにかけることはできません。でもまあ、全てが
そうであるとは限りませんので、できるかもしれません。


  それでは。

--
    川合 秀実(KAWAI Hidemi)
川合堂社長 / OSASK計画総指揮 / カーネル開発班
E-mail:kawai !Atmark! imasy.org
Homepage http://www.imasy.org/~kawai/