基礎から学ぶMetal

Metalを使ったGPUプログラミングの最初のステップを解説!

「基礎から学ぶMetal」を執筆しました。本書はMetalを使ってGPUプログラミングを行うための最初のステップを解説するMetalの解説書です。

ここ数年前から画像処理や機械学習といった分野でGPUを計算エンジンとして使用して、CPUだけでは膨大な時間がかかる処理をGPUを使って大幅にパフォーマンス改善を行うことが一般的になってきました。iOSでは初期の頃からOpenGL ESが使用できました。しかし、数年前にOpenGLは非推奨となり、Metalへ移行することが推奨されています。Macでも同様でOpenGL/OpenCLは非推奨となり、Metalへの以降が推奨されています。

では、Metalの実力はどの程度のものなのでしょうか?

著者はいくつかの画像処理プログラムでOpenCLからMetalへの移植を経験していますが、Metalの方が高いパフォーマンスを実現できました。とはいっても、どんなプログラムでもというわけではありません。Metalに向いているもの、かつ、動作環境もMetalに対応していることなどが前提となります。また、Metalは毎年改善が行われており、ハードウェア側も進歩が続いています。

今年はM1チップを使ったMacが発売しました。M1チップはAシリーズチップと同様にアップル社が設計した独自SoCです。そして、当然ですが、Metalが使用でき、高いパフォーマンスが期待できます。

発売日

2021年1月18日です。

本書の概要

本書では、このようなGPUを使ったプログラムをMetalを使って行いたいと考えたときに、Metalはどのように使うのかという最初のステップを解説しています。私が初めてGPUプログラミングを行ったとき、どこから手をつけて、学んでいけば良いのか分からず呆然としました。もし、あのとき、これを教えてくれればという部分を解説しました。本書で解説している部分はMetalの基礎となる部分で、Metalを使うときに必ず触れることになる部分です。

GPUプログラミングはデバッグがやりづらいということが多いのですが、MetalはXcodeのサポートがあるので、比較的デバッグもやりやすく、開発がしやすいと思います。本書ではXcodeのサポート機能についても解説しています。

目次

  • CHAPTER 1 : Metalの概要
  • CHAPTER 2 : はじめてのMetalプログラミング
  • CHAPTER 3 : GPGPUプログラミング
  • CHAPTER 4 : デバイス
  • CHAPTER 5 : デバッグ・チューニング支援機能
  • CHAPTER 6 : テクスチャ

CHAPTER 1 : Metalの概要

Metalとは何かということを紹介しています。GPUプログラミングとは何かということを解説しています。

CHAPTER 2 : はじめてのMetalプログラミング

MetalのHello Worldというつもりで、三角形を描く方法を解説しています。Metalで作るときに必ず実装する共通部分、最初のステップを解説しています。

CHAPTER 3 : GPGPUプログラミング

Metalを使って、GPUを計算エンジンとして使用する方法について解説しています。

CHAPTER 4 : デバイス

GPUの持つ機能の調べ方やメモリバッファの種類などについて解説しています。

CHAPTER 5 : デバッグ・チューニング支援機能

Xcodeが持っているMetalのサポート機能について解説しています。

CHAPTER 6 : テクスチャ

Metalでのテクスチャマッピングのやり方について解説しています。

出版社公式ページ

基礎から学ぶ Metal〜MetalによるGPUプログラミング入門 | 書籍詳細 | 株式会社C&R研究所

投稿者プロフィール

林 晃
林 晃macOS/iOSアプリ/SDK/ミドルウェア開発が専門の開発者
アールケー開発代表。macOS/iOSアプリ/SDK/ミドルウェア開発が専門の開発者。ObjC/Swift/C++使い。豊富な開発実務経験を基に、教育コンテンツ開発、技術書執筆、技術指導、技術セミナー講師、企業内研修講師、行政・自治体職員研修講師も行います。

最近の著書

  1. 基礎から学ぶ SwiftUI

人気記事

最近の記事