5 ポイント 投稿者 GN⁺ 2023-07-04 | 1件のコメント | WhatsAppで共有
  • Fizz Buzz は、面接で出される一般的なプログラミング課題です。
  • この記事では、さまざまなプログラミング言語で実装された FizzBuzz の多様な実装を紹介しています。
  • これまでに得られた最高スループットは、アセンブリ言語で約 57.2 GiB/s です。
  • この記事では、アセンブリ言語実装のビルドおよび使用手順を提供しています。
  • プログラムのマルチスレッド版は、大幅な高速化にはつながりませんでした。
  • この記事では、高性能な FizzBuzz 実装に向けた課題と最適化を強調しています。
  • この記事では、FizzBuzz アルゴリズムを実装した AVX2 アセンブラプログラムについて論じています。
  • このプログラムは、より高速な性能のために高素数形式と vmsplice システムコールを使用しています。
  • プログラムには、Fizz、Buzz、および行番号を書き出すためのさまざまな初期化段階とルーチンが含まれています。
  • この記事では、連続した FizzBuzz 出力を生成するバイトコードインタプリタに言及しています。
  • バイトコードプログラムは、効率的な処理のために SIMD 命令を用いて解釈されます。
  • この記事では、バイトコードを解釈して出力を生成するメインループに関連する特定のコードセクションについて論じています。
  • 提供されたコードは、FizzBuzz の性能最適化を目的としたプログラミング課題への提出物です。
  • このコードは高い性能を達成しており、高度な技法と命令を活用しています。
  • この記事では、最適化された技法を用いて FizzBuzz シーケンスを生成する C プログラムについて論じています。
  • このコードは別の開発者によってさらに最適化され、より優れた性能を示しています。
  • この記事では、高速な FizzBuzz アセンブリを生成するために JIT コンパイルを使用するコード投稿について論じています。
  • この実装には、前処理器と、効率的な出力のためのベクトル化された C コードが含まれています。
  • このコードは、以前の投稿より優れた性能を発揮するよう最適化され、さまざまなシステムでテストされました。
  • この記事では、最適化のために AVX2 命令を使用する C コード実装について論じています。
  • この実装には JIT コンパイラが含まれており、高速性と効率的なメモリ使用を実現しています。
  • この記事では、FizzBuzz の速度を示すために Rust 実装を紹介しています。
  • Rust 実装では、効率的な整数から文字列への変換とコードチャンク技法を使用しています。
  • この記事では、高度な技法と最適化を用いて FizzBuzz を実装した C プログラムについて論じています。
  • このプログラムは、他のすべてより速く動作するよう設計されており、説明とコードスニペットが含まれています。
  • 著者は vmsplice システムコールを使用する際のヒントと注意点を提供しており、テストモジュールも含めています。
  • このテキストには、出力を効率的に生成する fizzbuzz という関数に関連するコードスニペットが含まれています.

1件のコメント

 
GN⁺ 2023-07-04
Hacker Newsの意見
  • Linuxは、あるプログラムから別のプログラムへパイプされたデータを完全にL2キャッシュ内に保持できるため、印象的なシステムアーキテクチャ設計です。
  • 記事の著者は、プログラムが動作しない人と労力のかかったコメントをやり取りしながら、ASLRに関する問題を解決します。
  • RustのFizzBuzz実装における性能は予想外で、Python3と同程度です。
  • アセンブリでコードを書けば、あらゆるものをより高速にできます。
  • 複雑な問題の解決速度を評価することには欠陥があり、主にメモリの取り出しとプロセス間転送の効率をテストしているにすぎません。
  • vmspliceの使用は、他のプロセスに対してプロセスのメモリへのアクセスを提供するため、競技要件に合致しない可能性があります。
  • ファイル拡張子の".S"と".s"の重要性が疑問視されます。
  • Javaは、C、C++、アセンブリ、Go、Rustなどの他の言語と比べると驚くほど高速です。