BQNにおける行列乗算のパフォーマンス最適化:キャッシュブロッキングと分割統治

2025-06-27

この記事では、BQN言語を用いて大規模な行列乗算のパフォーマンスを最適化する方法を探ります。著者はまず、単純な正方分割法を用いてキャッシュを効果的に利用することで、約6倍の高速化を実現しました。その後、分割統治戦略に基づいたStrassenアルゴリズムを紹介し、大規模行列に対して最大9倍の高速化が実験的に示されています。この記事では、様々なブロックサイズやネストされたタイル化戦略のパフォーマンスへの影響についても比較検討し、純粋なシングルスレッドBQN実装によるパフォーマンスの限界がほぼ達成されたという結論に至っています。

続きを読む
開発

BQNによる簡潔なSchemeインタプリタ:ミニマリストアプローチ

2025-05-26

この記事では、BQNプログラミング言語を使用してSchemeインタプリタを実装しようとした試みが詳細に説明されています。BQNの簡潔な構文と強力な配列操作を活用することで、著者は基本的な算術演算、リスト操作、メタプログラミング機能を含む、機能的なSchemeサブセットインタプリタを実現しています。R5RSに完全に準拠しておらず、堅牢なエラー処理が欠けているものの、実装の簡潔さと機能性は印象的です。これはBQNの応用を示し、関数型プログラミングの優雅さを強調しています。

続きを読む
開発