「劣化した」コードを自動的に最適化--MITとAdobeが進めるプロジェクトHelium

Chris Kanaracus (Special to ZDNet.com) 翻訳校正: 編集部 2016年01月06日 10時16分

  • このエントリーをはてなブックマークに追加

 コードの劣化(code rot)を避けるには、ソフトウェアの最適化を継続する必要があるが、これには膨大な時間と経費が必要であり、開発者の力が新たなイノベーションではなく、メンテナンスに割かれることにも繋がる。「Helium」と呼ばれるこのプロジェクトは、コードの最適化を自動化することを目指すものだ。

 Adobeが公開したブログ記事によれば、同社の「Photoshop」を対象とした最初の概念実証コードが完成したという。

 AdobeとMITの研究者は、このアイデアを試すために、Photoshopのフィルタの最適化を対象として選んだ。単にフィルタのソースコード自体を分析するのではなく、実行トレース、つまりフィルタを適用した時にCPUで実際に実行された命令を分析して、どの命令が実際に使用されているか、複数回適用されていたり、非効率なものはどれかを特定した。

 研究者らは、フィルタの実行トレースと、画面上で実際にピクセルに適用される変化を比較することで、元になっているバイナリコードのハイレベルな表現を作成し、それを画像処理に適した最新のプログラミング言語であるHalideで再現できるようにした。その後、このHalideのコードに対して自動最適化を行い、最新のハードウェアに最適化して、再コンパイルを行う。

 Heliumは、多くのPhotoshopのフィルタの性能を75%、Windowsでよく利用される画像編集フリーウェアである「IrfanView」の性能を500%向上させた。

Heliumの将来性は?

 Heliumはまだ生まれたばかりだが、将来性は高い。ソフトウェアメーカー以外にも、レガシーアプリケーションの最適化に関心のある企業であれば、この取り組みに参加するメリットがあるだろう。Heliumのソースコードは、MITライセンスでオープンソース化されており、今後コードのフォークや、企業による商用実装も出てくる可能性がある。

 最初の概念実証コードはPhotoshopのフィルタを対象としたものであり、これはフィルタで消費される計算リソースの量を考えれば非常に有意義な試みだが、Heliumは当然他の種類のソフトウェアにも応用できるはずだ。

 「プロジェクトHeliumは、分散データ分析プラットフォームにも適用できるかもしれない」と、Constellation Researchのバイスプレジデント兼主席アナリストのDoug Henschen氏は言う。「近年では、データベースベンダーはCPUやGPUに組み込まれているマルチスレッド機能やベクトル計算機能の両方を利用している。新しいチップでさまざまな機能や性能を向上させる要素が導入された際に、その能力を利用できるよう、データベースのクエリ最適化エンジンやデータ変換ソフトウェアを自動的にアップグレードできれば素晴らしい」(Henschen氏)

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

  • このエントリーをはてなブックマークに追加

この記事を読んだ方に

関連ホワイトペーパー

連載

CIO
デジタル“失敗学”
コンサルティング現場のカラクリ
Rethink Internet:インターネット再考
インシデントをもたらすヒューマンエラー
トランザクションの今昔物語
エリック松永のデジタルIQ道場
研究現場から見たAI
Fintechの正体
米ZDNet編集長Larryの独り言
大木豊成「仕事で使うアップルのトリセツ」
山本雅史「ハードから読み解くITトレンド放談」
田中克己「2020年のIT企業」
松岡功「一言もの申す」
松岡功「今週の明言」
内山悟志「IT部門はどこに向かうのか」
林 雅之「デジタル未来からの手紙」
谷川耕一「エンプラITならこれは知っとけ」
大河原克行「エンプラ徒然」
内製化とユーザー体験の関係
「プロジェクトマネジメント」の解き方
ITは「ひみつ道具」の夢を見る
セキュリティ
企業セキュリティの歩き方
サイバーセキュリティ未来考
ネットワークセキュリティの要諦
セキュリティの論点
スペシャル
ざっくりわかるSNSマーケティング入門
課題解決のためのUI/UX
誰もが開発者になる時代 ~業務システム開発の現場を行く~
「Windows 10」法人導入の手引き
ソフトウェア開発パラダイムの進化
エンタープライズトレンド
10の事情
座談会@ZDNet
Dr.津田のクラウドトップガン対談
Gartner Symposium
IBM World of Watson
de:code
Sapphire Now
VMworld
Microsoft WPC
Microsoft Connect()
HPE Discover
Oracle OpenWorld
Dell EMC World
AWS re:Invent
AWS Summit
PTC LiveWorx
吉田行男「より賢く活用するためのOSS最新動向」
古賀政純「Dockerがもたらすビジネス変革」
中国ビジネス四方山話
ベトナムでビジネス
日本株展望
企業決算
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]