【SLXの事例紹介③】リコーのアルゴリズム実装プロセスを最適化・並列化

今回もSLXの実例を紹介します。3回目は、リコーがSLXを導入し、アルゴリズム実装プロセスを最適化・並列化した事例です。(1回目:デンソー 2回目:Huawei)

日本の皆さんにも馴染み深いリコーもSilexicaのプロダクトを使ってビジネスを最適化しています。

RICOH-%e3%80%90slx%e3%81%ae%e4%ba%8b%e4%be%8b%e7%b4%b9%e4%bb%8b%e2%91%a2%e3%80%91%e3%83%aa%e3%82%b3%e3%83%bc%e3%81%ae%e3%82%a2%e3%83%ab%e3%82%b4%e3%83%aa%e3%82%ba%e3%83%a0%e5%ae%9f%e8%a3%85%e3%83%97

基本情報 株式会社リコー

・売上:2兆288億円(2017年)

・分野:プリンター、ネットワークシステムソリューションなど

・設立:1936年

・日本、米国、英国、シンガポールなど200ヵ国でビジネスを展開

 

リコーは、デジタル化が進むオフィスの効率化にテクノロジーを通じて貢献をしています。80年以上に渡って、文書管理ソリューション、ITサービス、プリンタ、カメラ、産業システムなど様々な分野の最新のソリューションを、世界中に提供し続けてきました。

リコーでは、オープンソースのソフトウェアライブラリを使用して、カメラやスキャナなどの画像入力装置向けのアルゴリズム実装を行っています幅広いアプリケーションへ対応が出来るようにカスタマイズされているソフトウェアは、ターゲット・アルゴリズムとハードウェア・プラットフォームに合わせて細かい調整が施されています。

SLXは、OpenCVアプリケーションを用いてこのフローを解析、最適化、実装することでリコーをサポートしました。

課題
リコーは、オールインワンプリンター、オーバーヘッド・プロジェクター、カメラなどの最新の画像入力装置でオープンソースのライブラリを使用しています。これらのライブラリには、既に必要最低限のアルゴリズムが実装されているため、デベロッパーは、アプリケーションの付加機能の開発に集中することが可能です。

このアプローチは、設計サイクルを大幅に短縮出来るという長所がある一方、民生機器のハードウェアに対してライブラリ内のアルゴリズムが、最適化されない可能性があります。オープン・ソフトウェアは通常移植可能なソフトウェアのため、特定のターゲットに対して最適化されたものではないことが理由です。しかし、パフォーマンスを最大限に発揮するには、関数のサイズを特定のハードウェアに対して最適化する必要があります。そのため以上のことは、重要な課題になります。

また、製品向けにアルゴリズムを手作業で抽出することは、ライブラリの実装に関する深い知識を必要となるため、時間がかかる作業になります。アルゴリズムが抽出されてからも、所望のリアルタイム動作を達成するためはに、手作業による最適化が必要で、非常に複雑です。そこでリコーは、使用されているアルゴリズムをピンポイントで特定、並列性を発見する効率的な方法を求めていました。

ソリューション

リコーは、SLXを使ってソースコードを、自動かつ正確に解析し、アプリケーションの正確な動作を把握しました。

コンパイラ技術を用いた、静的および動的解析情報は、全てのデータ依存および制御依存を識別し、精確なアプリケーションモデルを構築します。並列アプリケーションでは、既存の通信パターンと同期パターンも解析されます。パターンベースのフレームワークによって、更なる並列化ポイントを識別することも可能です。組み込み式の高性能コンピューティングアプリケーション向けにタスクレベル、パイプラインレベル、データレベルの並列化処理など、さまざまなレベルの並列化処理のサポートが可能です。

結果

リコーは、SLXのC/C++フローをOpenCVアプリケーションに適用することで、ライブラリの使用部分を正確に抽出することができました。さらに、SLXは、ライブラリのシーケンシャル部分の並列性を検出し、並列実装を行った場合に実現される高速化の予測を行いました。

 

株式会社リコー木村貞弘氏

Silexica社ツールの解析機能により、アプリケーションに関する価値ある情報を得ることが出来、OpenCVベースのアプリケーション設計サイクルを大幅に短縮できました。これらのツールは安定しており、複雑なオープンソースライブラリを解析する上で非常に有益であることから、他の解析ツールに対する優位性になるでしょう。

Silexicaのプロダクトについてより詳しく知りたい方はこちらから、

SLXの30日間無料トライアルに申し込みたい方はこちらからどうぞ!

 

3回にわたりSLXの導入事例を紹介してきました。いかがだったでしょうか。

より詳しくSLXについて聞きたいという方、Silexicaについて聞きたいという方ぜひご連絡ください。

SNSチャンネル

Facebook

Twitter

フォロー、いいねお待ちしております!

Silexicaについて

Silexicaは、先端企業が自動運転車などのインテリジェントな製品をコンセプトから製品化するための、ソフトウェア開発ソリューションを提供しています。SLXは、システム上でのソフトウェアの挙動に対するプロファイリング結果を表示することで効率的に動作するソフトウェア実装を実現します。

Silexicaは2014年に設立され、2,800万ドルの資金調達を行いました。 ドイツに本社を置き、米国と日本にオフィスを構えるSilexicaは、自動車、無線、航空宇宙など多くの業界で、グローバルな顧客と提携しています。

詳細については、HPをご覧ください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です