パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

すべてアセンブリ言語で書かれたMenuetOS、ついにバージョン1.0となる」記事へのコメント

  • 何か理由があってアセンブリ言語にこだわっているのか? プロセッサの処理能力もメモリもジャブジャブ有り余っていて、昔と比べてコンパイラも飛躍的に性能が良くなったのに..........

    • by Anonymous Coward

      電力とか容積をジャブジャブ使えない環境を想定してるから

      • by Anonymous Coward

        いやそれ、さんざん言われている幻想だから…。
        今時の、pipeliningやout-of-orderバリバリのプロセッサのアセンブリ言語で、コンパイラより効率の良いコードを書くなんて無理よ。
        今でも、ごく小さいコードについて人間が最適化するケースはあるけど、OS全体を手書きのアセンブラで書いて、コンパイラに勝つなんてありえない。
        コードサイズについても、コンパイルの設定で、余分なランタイムを一切使わないバイナリを生成することだってできるし、その場合手書きコードと比べて劣る点は一切ない。
        コードサイズについては、LinuxがCで書かれていることからも明らかでしょ。

        • by Anonymous Coward

          手書きアセンブラの方が速いとか言っている人は、絶対に今どきのアセンブラの最適化をやったことがないよね。
          今どきのCPUの最適化って、ループのμopの数を数えて命令キャッシュに入るか確かめるとか、
          ALUの表を作ってパイプラインストールがないかチェックするとか、「こんなことはコンピュータがやれよ」と思うような作業ばっかりなんだけど、
          こういう人たちは、優秀なハッカーなら、映画かアニメみたいにすらすら完璧なコードを書けると思ってるんだろう。

          • by Anonymous Coward

            SSE/AVXのレジスタの割り当てとか、人間がやるほうが効率が良い場合もあるよ。
            SSE/AVXのロード・ストア命令もCPUによって最適な命令が違ったりするけどコンパイラはそんなこと考慮にしてくれないしね。

            • by Anonymous Coward on 2015年05月18日 8時07分 (#2815993)

              元コメとは違うACだけど、

              元コメAC氏は「今でも、ごく小さいコードについて人間が最適化するケースはあるけど」とそういった事例は認めた上で、
              「OS全体を手書きのアセンブラで書いて、コンパイラに勝つなんてありえない。」と述べてるんですよ。

              親コメント
              • by Anonymous Coward

                「コードサイズについても、コンパイルの設定で、余分なランタイムを一切使わないバイナリを生成することだってできるし、その場合手書きコードと比べて劣る点は一切ない。」とも言ってますね。

              • by Anonymous Coward

                > 「OS全体を手書きのアセンブラで書いて、コンパイラに勝つなんてありえない。」
                人間のやる事ですから、なんでもあり。 その人のレベルによる。
                 
                アセンブラの方が早いって、Cからアセンブラしたけど、最適化がなくなった分、遅くなったとか。
                それをCに戻して、早くした事もあるし。
                 
                確かに、OS全体は今時、ありえないって思うが、世の中、化け物もいるって事。

              • by Anonymous Coward

                高級言語の場合はだいたいABIが決まっているからアセンブラのほうが有利だな

              • by Anonymous Coward

                irreducibleなグラフはコンパイラは最適化を諦めて保守的になるから、アセンブラのほうが有利だな

              • by Anonymous Coward

                アセンブラの方が早いって、Cからアセンブラしたけど、最適化がなくなった分、遅くなったとか。
                それをCに戻して、早くした事もあるし。

                「早くした」って、分かってなくてたまたまそうなっただけじゃね

私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike

処理中...