SN Systemsテクノロジーブログ

ヒューマンスケールでの同時実行を実現するコルーチンおよびC++ DSL

ARTICLE BY:
POSTED: Jun 13, 2017
TAGS:

C++のコルーチンはまだ標準化されていませんが、本日の段階で、CppCon2016で紹介された、スタックレスコルーチン/resumable function(実行再開可能な関数)という形式では、Visual Studio 2015で利用可能です(clang/llvmでもすぐ利用可能になります)。 このセッションでは、ジェネレータや非同期IOの正準な例という枠組みにとらわれずに、コルーチンがC++ DSLの目的の追求に活用できるかどうかを探り、人力でも同時実行が簡単に行えるようにしたいと考えています。ゆえに、タイトルは「ヒューマンスケールでの同時実行」と名付けました。

READ THE WHOLE POST 

静的にコンパイルしたプログラム用レポジトリへのToy言語の使用

ARTICLE BY:
POSTED: Jun 13, 2017
TAGS:

ポールは、従来ならばオブジェクトファイルを使用するところを、インクリメンタルに更新するレポジトリで置き換えることにより、既存のビルドインフラストラクチャを変更することなく、コンパイル時間およびリンク時間を短縮するアプローチ理念の証明を発表します。

READ THE WHOLE POST 

PlayStation®4用サンプリングベースのPGOの提供

ARTICLE BY:
POSTED: Jun 12, 2017
TAGS:

PlayStation®4ツールチェーンをお使いの皆さんは、開発ツールに多くの期待を寄せていらっしゃると思いますが、優れたランタイムパフォーマンスと、完全最適化済みコードのデバッグ能力が至極重要であることに間違いはないでしょう。株式会社ソニー・インタラクティブエンタテイメントのツールチェーンチームは、プロファイルに基づく最適化(PGO)のソリューションをユーザーに提供することにより、皆さまのランタイムパフォーマンスを最大化すべく務めております。それに際し、まずは計測コードベースのPGOを提供しました。これは多数のユーザーから歓迎されています。その後は、サンプリングベースのPGOアプローチを提供することでこれをフォローアップしました。こちらは、LLVMコミュニティの開発ならびに提携を受けて作成されており、これはPS4のSDKのプロファイリングツールに統合され、シンプルかつシームレスなワークフローを実現しています。 このトークでは、実際に世界各地から集めたケーススタディをお見せし、サンプリングベースのPGOアプローチと、計測コードベースのPGOアプローチとを、ユーザーワークフロー、プロファイリング中のランタイムへの侵入度(コスト増加)、最終ランタイムパフォーマンスでの改善という見地から比較します。

READ THE WHOLE POST