SlideShare a Scribd company logo
1 of 8
Download to read offline
では、Vulkan で素晴らしいことをすると言えば、Vulkan でのレイトレーシングが挙げられます。
私のパートではこのことをお話ししたいと思います。
Well, speaking of doing amazing things with Vulkan, I'm here to talk to you about Ray Tracing in
Vulkan.
1. みなさん、こんにちは–私は Daniel Koch です– NVIDIA でグラフィックスドライバーに取り組
んでおり、Khronos の Vulkan Ray Tracing サブグループの議長を務めています。
Hi everyone – I am Daniel Koch - I work on graphics drivers at NVIDIA and am the chair of the Vulkan Ray
Tracing Subgroup at Khronos.
2. Vulkan Ray Tracing Subgroup は、2018 年の初めに結成され、Vulkan にレイトレーシングソ
リューションを導入するタスクを任されました。 2020 年 3 月には、パブリックにフィードバックと
情報を収集して、レイトレーシングの拡張機能の最終設計に入れ込む為に、暫定的な拡張機
能がリリースされました。2020 年 11 月に最終的な Vulkan レイトレーシング仕様がリリースさ
れ、その直後の 12 月に Vulkan 1.2.162.0 SDK がリリースされ、これらの拡張機能のサポート
が組み込まれ、開発者は Vulkan レイトレーシングをアプリケーションに簡単に統合できるよう
になりました。
The Vulkan Ray Tracing Subgroup was formed in early 2018 was tasked with bringing a ray tracing
solution to Vulkan. In March 2020, the provisional ray tracing extensions were released to gather public
feedback and input into the final design of these extensions. In November 2020, the final Vulkan ray
tracing specifications were released and shortly after that in December, the Vulkan 1.2.162.0
SDK was released, incorporating support for these extensions and enabling developers to easily
integrate Vulkan Ray Tracing into their applications.
3. レイトレーシングサブグループは、ハードウェアベンダーから設計上の貢献を多く受け、ソ
フトウェアベンダーとハードウェアベンダーの両方から要件が精査されました。 レイトレーシ
ングのリアルタイム技術はまだ盛んに研究されているため、Vulkan レイトレーシングの最初の
バージョンは、フレームワークを提供すると同時に、将来の開発のための拡張可能なステージ
を設定するように設計されています。
The Ray Tracing subgroup received a number of design contributions from hardware vendors, and
examined requirements from both software and hardware vendors. Real-time techniques for ray tracing
are still being actively researched and so the first version of Vulkan Ray Tracing has been designed to
provide a framework, while setting an extensible stage for future developments.
全体的な設計目標の 1 つは、既存の Vulkan API 機能と一緒に簡単に使用できる、レイトレーシ
ングアクセラレーション用の単一で一貫としたクロスプラットフォームおよびマルチベンダー
フレームワークを提供することでした。
One overarching design goal was to provide a single, coherent cross-platform and multi-vendor
framework for ray tracing acceleration that could be easily used together with existing Vulkan API
functionality.
ソフトウェアベンダーも明確でした。NVIDIA の OptiX™や Microsoft の DirectX Raytracing などの
最新の専用の API 向けに設計されたコンテンツを、Vulkan に簡単に移植できるようにする必要
がありました。 そのため、HLSL シェーダーの再利用を可能にするなど、使い慣れた全体的なア
ーキテクチャを使用すると同時に、新しい機能と実装の柔軟性を導入しました。
Software vendors were also clear—we needed to enable content designed for contemporary proprietary
APIs, such as NVIDIA’s OptiX™ or Microsoft’s DirectX Raytracing, to be easily portable to Vulkan. As such,
we used a familiar overall architecture, including enabling the re-use of HLSL shaders, while also
introducing new functionality and implementation flexibility.
Vulkan の哲学に沿って、デプロイの柔軟性を高めるために、フレームワークの選択した部分を
オプションにすることができるようにしました。 この最初のバージョンでは、主に最新のデス
クトップハードウェアのすべての機能を公開することを目指していますが、これはハードウェ
アに依存せず、既存の GPU コンピューティングまたは専用のレイトレーシングコアで高速化で
きるものです。
We’ve enabled selected parts of the framework to be optional for deployment flexibility in keeping with
the Vulkan philosophy. For this first version, we are primarily aiming to expose the full functionality of
modern desktop hardware, but that is hardware agnostic and can be accelerated via existing GPU
compute or dedicated ray tracing cores.
4. では、Vulkan レイトレーシングはどうやって使うのでしょうか? 他の多くのレイトレーシン
グ API と同様に、最初のステップは、シーンのジオメトリを効率的な、2 レベルのアクセラレ
ーション構造に構築することです。これにより、レイの交差点における探索でパフォーマンス
の最適化が可能です。 Vulkan アクセラレーション構造の正確な内部構成はアプリケーションか
らは見えないため、ハードウェアベンダーは独自のアーキテクチャに一致するように最適化が
可能です。
So, how do you use Vulkan Ray Tracing? Like many other ray tracing APIs, the first step is to build the
scene geometry into an efficient, two-level acceleration structure so searching for ray intersections can
be performance optimized. The precise internal organization of the Vulkan acceleration structure is
opaque to the application, so that the hardware vendor can optimize it to match their own architecture.
5. VK_KHR_acceleration_structure 拡張機能は、GPU 上、またはオプションでホスト上でアクセ
ラレーション構造を作成および構築する機能を提供します(これについては後で詳しく説明し
ます)。 また、アクセラレーション構造の圧縮とシリアライゼーションを可能にするアクセラ
レーション構造管理コマンドも提供します。
The VK_KHR_acceleration_structure extension provides the ability to create and build acceleration
structures on the GPU, or optionally on the host (more about that later). It also provides acceleration
structure management commands, which enable compaction and serialization of acceleration
structures.
アクセラレーション構造は、高度に最適化された実装依存のデータ構造であり、アプリケーシ
ョンが提供するシーンジオメトリから構築され、バッファに配置されます。 この不透明なデー
タ構造は、複雑なシーンで高パフォーマンスのレイの交差を実現するために使用されます。
An acceleration structure is a highly-optimized, implementation-dependent data structure that is built
from the application-provided scene geometry, and placed in a buffer. This opaque data structure is
used to achieve high performance ray intersections over complex scenes.
アクセラレーションの構造は、図のように 2 つのレベルの階層に分割されています。 下位レベ
ルのアクセラレーション構造には、シーンを構成するカスタムジオメトリの三角形または軸に
沿ったバウンディングボックス(AABB)が含まれています。 各下位レベルのアクセラレーショ
ン構造は、ラスタライズパイプラインでの複数の描画呼び出しに対応する可能性があるため、
各下位レベルのビルドには、指定された型のタイプのジオメトリのセットを複数含めることが
可能です。 上位レベルのアクセラレーション構造には、下位レベルのアクセラレーション構造
のセットへの参照が含まれています。 各参照には、その参照に対するシェーディングおよび座
標変換情報が含まれています。 下位のアクセラレーション構造は、上位のアクセラレーション
構造からの参照によってのみ使用されます。 上位レベルのアクセラレーション構造は、記述子
バインディングとして、またはデバイスアドレスによってシェーダーからアクセスされます。
The acceleration structure is divided into a two-level hierarchy as shown. The bottom-level acceleration
structure, contains the triangles or axis-aligned bounding boxes (AABBs) of custom geometry that make
up the scene. Since each bottom level acceleration structure may correspond to what would be multiple
draw calls in the rasterization pipeline, each bottom level build can contain multiple sets of geometry of
a given type. The top-level acceleration structure contains references to a set of bottom-level
acceleration structures. Each reference includes shading and transform information for that reference.
The bottom-level acceleration structure is only used by reference from the top-level acceleration
structure. The top-level acceleration structure is accessed from the shader as a descriptor binding or by
device address.
6. 次に、光線(レイ)をシーンに発する必要があります。それらの光線(レイ)がシーンジオ
メトリ、マテリアル、および光源(ライト)とどのように交差および相互作用するかを決定す
る為に、そして、さまざまな視覚効果を可能にするプログラム可能な柔軟性を使用して、これ
らの交差を処理する為です。 Vulkan は、シーンをトラバースするのに 2 つの方法を提供しま
す。
Next, we need to launch rays into the scene to determine how those rays intersect and interact with
scene geometry, materials, and light sources – and to process those intersections, with programmable
flexibility to enable a wide variety of visual effects. Vulkan provides two ways to traverse the scene.
最初の方法では、新しいレイトレーシングパイプラインを使用します。これにより、アプリケ
ーションはシェーダーのセットをパイプラインにコンパイルして、必要なレイとマテリアルの
処理を管理することが可能になります。次に、レイトレーシングパイプラインを使用してシー
ンに光線のグリッドを起動します。これは、交差が発生したときに適切なシェーダーを呼び出
し、その光線にヒットが発生しなかった場合はミスシェーダーを呼び出します。
The first method uses a new Ray Tracing Pipeline that enables the application to compile a set of
shaders into a pipeline to handle any desired ray and material processing, and then launch a grid of rays
into the scene with the Ray Tracing Pipeline invoking the appropriate shader when intersections occur,
or a miss shader if no hits occur for that ray.
Vulkan が RayQueries と呼ぶ、光線を発射する 2 番目の手法は、はるかに明示的であり、任意の
タイプの Vulkan シェーダーがいつでも光線を起動し、必要に応じて交差データを処理できるよ
うにします。 これはシェーダーがシーン内のトラバーサルの進行方法も制御する為、非常に柔
軟な手法ですが、シェーダーの作成者により多くの負担をかけます。
The second technique to fire rays, which Vulkan calls Ray Queries, is much more explicit and enables any
type of Vulkan shader to launch a ray at any time and process the intersection data however it wishes.
This is a very flexible technique as the shader also controls how the traversal proceeds through the
scene, but it does place more burden onto the shader author.
7. VK_KHR_ray_tracing_pipeline 拡張機能は、新しいレイトレーシングシェーダーステージ、パ
イプライン、および関連するコマンドを追加し、対応する SPV_KHR_ray_tracing および
GLSL_EXT_ray_tracing 拡張機能は、サポートする SPIR-V および GLSL 構造を定義します。
The VK_KHR_ray_tracing_pipeline extension adds the new ray tracing shader stages, pipelines, and
associated commands, and the corresponding SPV_KHR_ray_tracing and GLSL_EXT_ray_tracing
extensions define the supporting SPIR-V and GLSL constructs.
レイトレーシングパイプラインの作業は、現在バインドされているレイトレーシングパイプラ
インで vkCmdTraceRaysKHR コマンドを使用して起動されます。 このコマンドは、アプリケーシ
ョン定義のレイ生成スレッドのセットを呼び出します。このスレッドは、シェーダーから
traceRaysEXT()を呼び出すことができ、指定されたアクセラレーション構造でトラバーサル作
業を開始します。 トラバーサル中に、トレースおよびアクセラレーション構造が必要とする場
合は、Intersection とあらゆる Hit Shader 内のアプリケーションのシェーダーコードがトラバー
サルをどう処理するかをコントロールすることが可能です。 トラバーサルが完了すると、Miss
または一番近くの Hit Shader が呼び出されます。
Ray tracing pipeline work is launched using vkCmdTraceRaysKHR command with the currently bound ray
tracing pipeline. This command invokes an application-defined set of ray generation threads, which can
call traceRaysEXT() from the shader, starting traversal work on the specified acceleration structure.
During traversal, if required by the trace and acceleration structure, application shader code in
intersection and any hit shaders can control how traversal proceeds. After traversal completes, either a
miss or closest hit shader is invoked.
異なるシェーダーステージでパラメーターと結果をやり取りすることが可能です。これは、ト
ラバーサルコントロールシェーダーからのすべてのトラバーサルステージと hit attribute 構造の
間の ray のペイロード構造を使用して行います。
The different shader stages can communicate parameters and results using ray payload structures
between all traversal stages and hit attribute structures from the traversal control shaders.
トラバーサルフェーズを有効にして、与えられた一連のコントロールするトラバーサルやトラ
バーサルに対する返答の後で、どのシェーダーを実行したらよいか分かるようにするのに、実
装ではシェーダーバインディングテーブルを使います。テーブル内の各シェーダーエントリ
は、指定されたシェーダーグループの実装からクエリされたシェーダーグループハンドルとシ
ェーダーバッファーレコードで構成されます。シェーダーバッファーレコードはアプリケーシ
ョンがバッファーデバイスアドレスや記述子インデックスなどのインスタンス固有のデータに
使用できるものです。指定されたシェーダーのアドレスは、トレースレイ API 呼び出しへのパ
ラメーター、traceRayEXT シェーダー呼び出しへのパラメーター、およびアクセラレーション構
造に格納されている情報の組み合わせを介したトラバーサルによって計算されます。指定され
たシェーダーのアドレスは、トレースレイ API 呼び出しへのパラメーター、traceRayEXT シェー
ダー呼び出しへのパラメーター、およびアクセラレーション構造に格納されている情報の組み
合わせを介したトラバーサルによって計算されます。
To enable the traversal phase to know which shader to invoke after a given step of traversal to control
or respond to the traversal, the implementation uses a shader binding table. Each shader entry in the
table consists of a shader group handle queried from the implementation for a given shader group plus
an optional shader buffer record which the application may use for instance-specific data such as buffer
device addresses or descriptor indices. The address for any given shader is computed by the traversal
through a combination of parameters to the trace rays API call, parameters to the traceRayEXT shader
call, and information stored in the acceleration structure.
8. VK_KHR_ray_query 拡張機能は、すべてのシェーダーステージ(グラフィックス、コンピュー
ティング、レイトレーシングシェーダーを含む)向けのレイクエリを可能にし、対応する
SPV_KHR_ray_query および GLSL_EXT_ray_query 拡張機能は、サポートする SPIR-V および GLSL 構
造を定義します。
The VK_KHR_ray_query extension enables ray queries for all shader stages (including graphics,
compute, and ray tracing shaders), and the corresponding SPV_KHR_ray_query and
GLSL_EXT_ray_query extensions define the supporting SPIR-V and GLSL constructs.
レイのクエリは、レイトラバーサルを実行し、任意のシェーダーステージで結果を取得するの
に利用可能です。 アクセラレーション構造を必要とする以外に、レイクエリは一連の新しいシ
ェーダー命令のみを使用して実行されます。
Ray queries can be used to perform ray traversal and get a result back in any shader stage. Other than
requiring acceleration structures, ray queries are performed using only a set of new shader instructions.
レイクエリは、トラバースするアクセラレーション構造とトレースされるレイのさまざまなプ
ロパティを指定する rayQueryInitializeEXT を使用して初期化されます。次に、
rayQueryProceedEXT を使用してトラバーサルを開始します。 交差する点の候補が見つかった
後、シェーダーは、トラバーサル中にシェーダーがアクセスできる命令を使用して、潜在的な
交差点とレイ自体のプロパティを調べ、レイの処理方法を指定できます。処理方法としては、
交差点の詳細を生成するか、ヒットを確認するか、レイを終了するか、となります。
トラバーサルが完了していなかったり、レイが終了した場合は、rayQueryProceedEXT を再度呼
び出して、アクセラレーション構造のトラバーサルを続行することが可能です。
Ray queries are initialized using rayQueryInitializeEXT which specifies an acceleration structure to
traverse, and various properties of the ray being traced. Next, rayQueryProceedEXT is used to start the
traversal. After an intersection candidate is found, the shader can examine properties of the potential
intersection and of the ray itself using instructions which are accessible to shader during traversal and
specify how the ray should be handled – either by generating intersection details, confirming a hit, or
terminating the ray. If the traversal is not finished or the ray terminated, rayQueryProceedEXT can be
called again to continue the acceleration structure traversal.
9. レイトレーシングアプリケーションは、数百または数千のシェーダーを使用して、シーン内
のさまざまなタイプの視覚効果を処理できます。 それらの多くのシェーダーをレイトレーシン
グパイプラインにコンパイルすると、新しいシーンが読み込まれたとき、または新しいシーン
エフェクトが必要になったときに、アプリケーションの処理が止まってしまうほど負荷がかか
る可能性があります。こういったことは、シーンに突然新しいシェーダーが必要になったり、
シェーダーのセット全体の再コンパイルや再ロードのトリガーとなることが見つかると、非常
に悪化させることになります。このオーバーヘッドを回避するために、VK_KHR_pipeline_library
拡張機能を使用すると、SPIR-V シェーダーのライブラリをインクリメンタルにコンパイルして
既存のレイトレーシングパイプラインに入れることが可能です。これにより、全部を最初から
再コンパイルする必要がなくなります。
A ray tracing application can use 100s or even 1000s of shaders to process the many types of visual
effects in a scene. Compiling that many shaders into a Ray Tracing Pipeline can be intensive enough to
cause application stuttering when new scenes are loaded, or when new scene effects are needed. It can
be particularly aggravating to discover that a scene suddenly needs a new shader, and that triggers the
entire set of shaders to be recompiled and reloaded. To avoid that overhead, the
VK_KHR_pipeline_library extension enables a library of SPIR-V shaders to be incrementally compiled
into an existing ray tracing pipeline - saving the need to recompile everything from scratch.
パイプラインライブラリはパイプラインで、この中には通常のステートとシェーダー、および
API に直接バインドされることを意図していないけれども、後のパイプラインにリンクされる
コードのライブラリとして使用されることを示す追加のフラグを含んでいます。パイプライン
ライブラリは、複数のレイトレーシングパイプラインで使用することもでき、これにより複数
のパイプラインでシェーダーのコンパイル処理の再利用が可能になります。レイトレーシング
パイプラインの作成には、ライブラリパイプラインと追加のレイトレーシングシェーダーの両
方が含まれる場合があります。最終的なリンクされたパイプラインを正常に作成するには、各
シェーダーからのコンパイル処理の状態がすべて一致しなければなりません。
A pipeline library is a pipeline which includes the normal state and shaders along with an additional flag
to indicate that it is not intended to be bound directly to the API but is intended to be used as a library
of code to be linked with a later pipeline. Pipeline libraries can also be used in multiple ray tracing
pipelines, allowing reuse of shader compilation in multiple pipelines. Ray tracing pipeline creation may
include both library pipelines as well as additional ray tracing shaders. All of the compilation state from
each shader must match to successfully create the final linked pipeline.
10. パイプラインライブラリは、シーン内のシェーダーを動的に管理する場合に役立ちますが、
シェーダーをコンパイルするだけでなく、ジオメトリをアクセラレーション構造にロードする
など、どんなレイトレーシングアプリケーションでもセットアップしなければならない重要な
処理が存在します。アプリケーションがシステム内の使用可能なすべてのプロセッサをセット
アップ処理に使用できるようにするために、ホスト CPU がホストメモリにアクセラレーション
構造を構築して、後で GPU にダウンロードできるようにしました。これによりホスト CPU が他
の作業を実行している GPU と並行してセットアップを実行できるようになります。
Pipeline Libraries can be helpful when dynamically managing the shaders in a scene, but there is still
significant setup processing for any ray tracing application – not just compiling shaders but also loading
geometry into Acceleration Structures. To help applications use all the available processors in a system
for setup processing, we have provided the ability for the host CPU to build Acceleration Structures in
host memory for subsequent download to the GPU, enabling the host CPU to perform setup in parallel
with the GPU performing other work.
VK_KHR_deferred_host_operations 拡張機能は、Vulkan のドライバーが後で実行するために遅延
作業(defferd work)ハンドルをアプリケーションに返すメカニズムを提供します。これによ
り、アプリケーションが作業の実行を制御し、作業を複数のコアとバックグラウンドスレッド
に分散できるようになります。 たとえば、レイトレーシングアプリケーションでは、遅延ホス
トオペレーション(defferd host operation)を使用して、ホスト上で複数の CPU コアを非同期的
に使用してアクセラレーション構造を構築することが可能です。
The VK_KHR_deferred_host_operations extension provides a mechanism where the Vulkan driver
returns a deferred work handle to the application for later execution – enabling the application to
control work execution and to distribute the work onto multiple cores and background threads. In a ray
tracing application for example, deferred host operations can be used to asynchronously use multiple
CPU cores to build Acceleration Structures on the host.
11. 以上で、現在利用可能な Vulkan レイトレーシング拡張機能の概要となります。AMD および
NVIDIA GPU 用のプロダクション レイトレーシング ドライバーが現在出荷されており、Intel ド
ライバーは今年後半に利用可能になる予定です。Vulkan Ray Tracing の詳細については、こちら
にある数々のブログ投稿、チュートリアル、およびその他のリソースへのリンクをご覧くださ
い。
So this was just a quick overview of the Vulkan Ray Tracing extensions that are now available.
Production ray tracing drivers for AMD and NVIDIA GPUs are now shipping and Intel drivers should be
available later this year. For more information about Vulkan Ray Tracing, here are links to a number of
blog posts, tutorials, and other resources.
ポータブルで、クロスベンダーで、クロスプラットフォームのレイトレーシングアクセラレー
ションの時代へようこそ。皆さんがどんな形でこちらを利用されるのかを楽しみにしていま
す!
Welcome to the era of portable, cross-vendor, cross-platform ray tracing acceleration – we look forward
to seeing how you will use it!

More Related Content

What's hot

Red Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニック
Red Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニックRed Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニック
Red Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニックEtsuji Nakai
 
Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介Etsuji Nakai
 
Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化Etsuji Nakai
 
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造Etsuji Nakai
 
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2Etsuji Nakai
 
OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!
OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!
OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!Kohei Tokunaga
 
DCK Server プロトタイプ
DCK Server プロトタイプDCK Server プロトタイプ
DCK Server プロトタイプEtsuji Nakai
 
Open stack overview_20130301
Open stack overview_20130301Open stack overview_20130301
Open stack overview_20130301Satoshi Konno
 
入門!Software Defined Network
入門!Software Defined Network入門!Software Defined Network
入門!Software Defined NetworkEtsuji Nakai
 
Linux女子部 iptables復習編
Linux女子部 iptables復習編Linux女子部 iptables復習編
Linux女子部 iptables復習編Etsuji Nakai
 
RHEL Atomic Hostのご紹介
RHEL Atomic Hostのご紹介RHEL Atomic Hostのご紹介
RHEL Atomic Hostのご紹介Etsuji Nakai
 
Eucalyptus infra technology
Eucalyptus infra technologyEucalyptus infra technology
Eucalyptus infra technologyEtsuji Nakai
 
RDOとPackstackのご紹介
RDOとPackstackのご紹介RDOとPackstackのご紹介
RDOとPackstackのご紹介Etsuji Nakai
 
RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門Etsuji Nakai
 

What's hot (14)

Red Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニック
Red Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニックRed Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニック
Red Hat Enterprise Linux OpenStack Platform環境でのDocker活用テクニック
 
Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介
 
Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化Aeolus Conductorによる複数環境へのデプロイ自動化
Aeolus Conductorによる複数環境へのデプロイ自動化
 
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造
エンジニア向け夏期特別講座 〜 Red Hat OpenStack徹底解説! 第二部 OpenStackの内部構造
 
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2
OpenStackクラウド基盤構築ハンズオンセミナー 第2日:講義No2
 
OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!
OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!
OCIv2?!軽量高速なイケてる次世代イメージ仕様の最新動向を抑えよう!
 
DCK Server プロトタイプ
DCK Server プロトタイプDCK Server プロトタイプ
DCK Server プロトタイプ
 
Open stack overview_20130301
Open stack overview_20130301Open stack overview_20130301
Open stack overview_20130301
 
入門!Software Defined Network
入門!Software Defined Network入門!Software Defined Network
入門!Software Defined Network
 
Linux女子部 iptables復習編
Linux女子部 iptables復習編Linux女子部 iptables復習編
Linux女子部 iptables復習編
 
RHEL Atomic Hostのご紹介
RHEL Atomic Hostのご紹介RHEL Atomic Hostのご紹介
RHEL Atomic Hostのご紹介
 
Eucalyptus infra technology
Eucalyptus infra technologyEucalyptus infra technology
Eucalyptus infra technology
 
RDOとPackstackのご紹介
RDOとPackstackのご紹介RDOとPackstackのご紹介
RDOとPackstackのご紹介
 
RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門
 

Similar to Vulkan Ray Tracing Update JP Translation

OSC2012-Fukuoka-CloudStack-Update
OSC2012-Fukuoka-CloudStack-UpdateOSC2012-Fukuoka-CloudStack-Update
OSC2012-Fukuoka-CloudStack-UpdateKimihiko Kitase
 
これから始めるAzure Kubernetes Service入門
これから始めるAzure Kubernetes Service入門これから始めるAzure Kubernetes Service入門
これから始めるAzure Kubernetes Service入門Yuto Takei
 
Whats new Apache CloudStack
Whats new Apache CloudStackWhats new Apache CloudStack
Whats new Apache CloudStackKimihiko Kitase
 
OSC2012 Tokyo/Spring JOSUG
OSC2012 Tokyo/Spring JOSUGOSC2012 Tokyo/Spring JOSUG
OSC2012 Tokyo/Spring JOSUGHideki Saito
 
Couchbase meetup20140925
Couchbase meetup20140925Couchbase meetup20140925
Couchbase meetup20140925ktoda
 
SQL Server コンテナ入門(Docker編)
SQL Server コンテナ入門(Docker編)SQL Server コンテナ入門(Docker編)
SQL Server コンテナ入門(Docker編)Tomoyuki Oota
 
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたAKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたHideaki Aoyagi
 
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormationAWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormationAmazon Web Services Japan
 
Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)Akihiro Motoki
 
Oracle Cloud Infrastructure:2023年2月度サービス・アップデート
Oracle Cloud Infrastructure:2023年2月度サービス・アップデートOracle Cloud Infrastructure:2023年2月度サービス・アップデート
Oracle Cloud Infrastructure:2023年2月度サービス・アップデートオラクルエンジニア通信
 
TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介
TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介
TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介QlikPresalesJapan
 
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towardsAkihiro Motoki
 
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...VirtualTech Japan Inc.
 
SAP Extractorのソースエンドポイントとしての利用
SAP Extractorのソースエンドポイントとしての利用SAP Extractorのソースエンドポイントとしての利用
SAP Extractorのソースエンドポイントとしての利用QlikPresalesJapan
 
【ことはじめ】 はじめてのコンテナ活用をクラウドで
【ことはじめ】 はじめてのコンテナ活用をクラウドで【ことはじめ】 はじめてのコンテナ活用をクラウドで
【ことはじめ】 はじめてのコンテナ活用をクラウドでオラクルエンジニア通信
 
CloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/SwiftCloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/Swiftirix_jp
 
スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編
スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編
スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編QlikPresalesJapan
 
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessionsOpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessionsAkihiro Motoki
 
What's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 jaWhat's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 jaCouchbase Japan KK
 
OSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGOSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGHideki Saito
 

Similar to Vulkan Ray Tracing Update JP Translation (20)

OSC2012-Fukuoka-CloudStack-Update
OSC2012-Fukuoka-CloudStack-UpdateOSC2012-Fukuoka-CloudStack-Update
OSC2012-Fukuoka-CloudStack-Update
 
これから始めるAzure Kubernetes Service入門
これから始めるAzure Kubernetes Service入門これから始めるAzure Kubernetes Service入門
これから始めるAzure Kubernetes Service入門
 
Whats new Apache CloudStack
Whats new Apache CloudStackWhats new Apache CloudStack
Whats new Apache CloudStack
 
OSC2012 Tokyo/Spring JOSUG
OSC2012 Tokyo/Spring JOSUGOSC2012 Tokyo/Spring JOSUG
OSC2012 Tokyo/Spring JOSUG
 
Couchbase meetup20140925
Couchbase meetup20140925Couchbase meetup20140925
Couchbase meetup20140925
 
SQL Server コンテナ入門(Docker編)
SQL Server コンテナ入門(Docker編)SQL Server コンテナ入門(Docker編)
SQL Server コンテナ入門(Docker編)
 
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたAKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみた
 
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormationAWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
 
Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)
 
Oracle Cloud Infrastructure:2023年2月度サービス・アップデート
Oracle Cloud Infrastructure:2023年2月度サービス・アップデートOracle Cloud Infrastructure:2023年2月度サービス・アップデート
Oracle Cloud Infrastructure:2023年2月度サービス・アップデート
 
TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介
TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介
TECH TALK 2021/08/31 Qlik Sense Extension開発 第2弾 - プログラミング可能な汎用エクステンションのご紹介
 
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
 
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
 
SAP Extractorのソースエンドポイントとしての利用
SAP Extractorのソースエンドポイントとしての利用SAP Extractorのソースエンドポイントとしての利用
SAP Extractorのソースエンドポイントとしての利用
 
【ことはじめ】 はじめてのコンテナ活用をクラウドで
【ことはじめ】 はじめてのコンテナ活用をクラウドで【ことはじめ】 はじめてのコンテナ活用をクラウドで
【ことはじめ】 はじめてのコンテナ活用をクラウドで
 
CloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/SwiftCloudStack Ecosystem Day - OpenStack/Swift
CloudStack Ecosystem Day - OpenStack/Swift
 
スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編
スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編
スクリプト実行可能なサーバーサイド拡張(SSE)の実装例とその応用 - Node.js編
 
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessionsOpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
 
What's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 jaWhat's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 ja
 
OSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUGOSC2011 Tokyo/Fall JOSUG
OSC2011 Tokyo/Fall JOSUG
 

More from The Khronos Group Inc.

Vulkan Update Japan Virtual Open House Feb 2021
Vulkan Update Japan Virtual Open House Feb 2021Vulkan Update Japan Virtual Open House Feb 2021
Vulkan Update Japan Virtual Open House Feb 2021The Khronos Group Inc.
 
Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021
Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021
Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021The Khronos Group Inc.
 
OpenCL Overview Japan Virtual Open House Feb 2021
OpenCL Overview Japan Virtual Open House Feb 2021OpenCL Overview Japan Virtual Open House Feb 2021
OpenCL Overview Japan Virtual Open House Feb 2021The Khronos Group Inc.
 
Vulkan ML Japan Virtual Open House Feb 2021
Vulkan ML Japan Virtual Open House Feb 2021Vulkan ML Japan Virtual Open House Feb 2021
Vulkan ML Japan Virtual Open House Feb 2021The Khronos Group Inc.
 
glTF Overview Japan Virtual Open House Feb 2021
glTF Overview Japan Virtual Open House Feb 2021glTF Overview Japan Virtual Open House Feb 2021
glTF Overview Japan Virtual Open House Feb 2021The Khronos Group Inc.
 
Khronos Overview Japan Virtual Open House Feb 2021
Khronos Overview Japan Virtual Open House Feb 2021Khronos Overview Japan Virtual Open House Feb 2021
Khronos Overview Japan Virtual Open House Feb 2021The Khronos Group Inc.
 

More from The Khronos Group Inc. (20)

OpenXR 1.0 Reference Guide
OpenXR 1.0 Reference GuideOpenXR 1.0 Reference Guide
OpenXR 1.0 Reference Guide
 
glTF overview JP Translation
glTF overview JP TranslationglTF overview JP Translation
glTF overview JP Translation
 
Khronos Overview JP Translation
Khronos Overview JP TranslationKhronos Overview JP Translation
Khronos Overview JP Translation
 
Vulkan Update Japan Virtual Open House Feb 2021
Vulkan Update Japan Virtual Open House Feb 2021Vulkan Update Japan Virtual Open House Feb 2021
Vulkan Update Japan Virtual Open House Feb 2021
 
Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021
Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021
Vulkan Ray Tracing Update Japan Virtual Open House Feb 2021
 
OpenCL Overview Japan Virtual Open House Feb 2021
OpenCL Overview Japan Virtual Open House Feb 2021OpenCL Overview Japan Virtual Open House Feb 2021
OpenCL Overview Japan Virtual Open House Feb 2021
 
Vulkan ML Japan Virtual Open House Feb 2021
Vulkan ML Japan Virtual Open House Feb 2021Vulkan ML Japan Virtual Open House Feb 2021
Vulkan ML Japan Virtual Open House Feb 2021
 
glTF Overview Japan Virtual Open House Feb 2021
glTF Overview Japan Virtual Open House Feb 2021glTF Overview Japan Virtual Open House Feb 2021
glTF Overview Japan Virtual Open House Feb 2021
 
Khronos Overview Japan Virtual Open House Feb 2021
Khronos Overview Japan Virtual Open House Feb 2021Khronos Overview Japan Virtual Open House Feb 2021
Khronos Overview Japan Virtual Open House Feb 2021
 
SYCL 2020 Specification
SYCL 2020 SpecificationSYCL 2020 Specification
SYCL 2020 Specification
 
OpenCL 3.0 Reference Guide
OpenCL 3.0 Reference GuideOpenCL 3.0 Reference Guide
OpenCL 3.0 Reference Guide
 
OpenVX 1.3 Reference Guide
OpenVX 1.3 Reference GuideOpenVX 1.3 Reference Guide
OpenVX 1.3 Reference Guide
 
OpenXR 0.90 Overview Guide
OpenXR 0.90 Overview GuideOpenXR 0.90 Overview Guide
OpenXR 0.90 Overview Guide
 
Vulkan 1.1 Reference Guide
Vulkan 1.1 Reference GuideVulkan 1.1 Reference Guide
Vulkan 1.1 Reference Guide
 
SYCL 1.2.1 Reference Card
SYCL 1.2.1 Reference CardSYCL 1.2.1 Reference Card
SYCL 1.2.1 Reference Card
 
OpenCL 2.2 Reference Guide
OpenCL 2.2 Reference GuideOpenCL 2.2 Reference Guide
OpenCL 2.2 Reference Guide
 
OpenGL 4.6 Reference Guide
OpenGL 4.6 Reference GuideOpenGL 4.6 Reference Guide
OpenGL 4.6 Reference Guide
 
glTF 2.0 Reference Guide
glTF 2.0 Reference GuideglTF 2.0 Reference Guide
glTF 2.0 Reference Guide
 
OpenVX 1.2 Reference Guide
OpenVX 1.2 Reference GuideOpenVX 1.2 Reference Guide
OpenVX 1.2 Reference Guide
 
WebGL 2.0 Reference Guide
WebGL 2.0 Reference GuideWebGL 2.0 Reference Guide
WebGL 2.0 Reference Guide
 

Recently uploaded

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 

Recently uploaded (11)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 

Vulkan Ray Tracing Update JP Translation

  • 1. では、Vulkan で素晴らしいことをすると言えば、Vulkan でのレイトレーシングが挙げられます。 私のパートではこのことをお話ししたいと思います。 Well, speaking of doing amazing things with Vulkan, I'm here to talk to you about Ray Tracing in Vulkan. 1. みなさん、こんにちは–私は Daniel Koch です– NVIDIA でグラフィックスドライバーに取り組 んでおり、Khronos の Vulkan Ray Tracing サブグループの議長を務めています。 Hi everyone – I am Daniel Koch - I work on graphics drivers at NVIDIA and am the chair of the Vulkan Ray Tracing Subgroup at Khronos. 2. Vulkan Ray Tracing Subgroup は、2018 年の初めに結成され、Vulkan にレイトレーシングソ リューションを導入するタスクを任されました。 2020 年 3 月には、パブリックにフィードバックと 情報を収集して、レイトレーシングの拡張機能の最終設計に入れ込む為に、暫定的な拡張機 能がリリースされました。2020 年 11 月に最終的な Vulkan レイトレーシング仕様がリリースさ れ、その直後の 12 月に Vulkan 1.2.162.0 SDK がリリースされ、これらの拡張機能のサポート が組み込まれ、開発者は Vulkan レイトレーシングをアプリケーションに簡単に統合できるよう になりました。 The Vulkan Ray Tracing Subgroup was formed in early 2018 was tasked with bringing a ray tracing solution to Vulkan. In March 2020, the provisional ray tracing extensions were released to gather public feedback and input into the final design of these extensions. In November 2020, the final Vulkan ray tracing specifications were released and shortly after that in December, the Vulkan 1.2.162.0 SDK was released, incorporating support for these extensions and enabling developers to easily integrate Vulkan Ray Tracing into their applications. 3. レイトレーシングサブグループは、ハードウェアベンダーから設計上の貢献を多く受け、ソ フトウェアベンダーとハードウェアベンダーの両方から要件が精査されました。 レイトレーシ ングのリアルタイム技術はまだ盛んに研究されているため、Vulkan レイトレーシングの最初の バージョンは、フレームワークを提供すると同時に、将来の開発のための拡張可能なステージ を設定するように設計されています。 The Ray Tracing subgroup received a number of design contributions from hardware vendors, and examined requirements from both software and hardware vendors. Real-time techniques for ray tracing are still being actively researched and so the first version of Vulkan Ray Tracing has been designed to provide a framework, while setting an extensible stage for future developments. 全体的な設計目標の 1 つは、既存の Vulkan API 機能と一緒に簡単に使用できる、レイトレーシ ングアクセラレーション用の単一で一貫としたクロスプラットフォームおよびマルチベンダー フレームワークを提供することでした。
  • 2. One overarching design goal was to provide a single, coherent cross-platform and multi-vendor framework for ray tracing acceleration that could be easily used together with existing Vulkan API functionality. ソフトウェアベンダーも明確でした。NVIDIA の OptiX™や Microsoft の DirectX Raytracing などの 最新の専用の API 向けに設計されたコンテンツを、Vulkan に簡単に移植できるようにする必要 がありました。 そのため、HLSL シェーダーの再利用を可能にするなど、使い慣れた全体的なア ーキテクチャを使用すると同時に、新しい機能と実装の柔軟性を導入しました。 Software vendors were also clear—we needed to enable content designed for contemporary proprietary APIs, such as NVIDIA’s OptiX™ or Microsoft’s DirectX Raytracing, to be easily portable to Vulkan. As such, we used a familiar overall architecture, including enabling the re-use of HLSL shaders, while also introducing new functionality and implementation flexibility. Vulkan の哲学に沿って、デプロイの柔軟性を高めるために、フレームワークの選択した部分を オプションにすることができるようにしました。 この最初のバージョンでは、主に最新のデス クトップハードウェアのすべての機能を公開することを目指していますが、これはハードウェ アに依存せず、既存の GPU コンピューティングまたは専用のレイトレーシングコアで高速化で きるものです。 We’ve enabled selected parts of the framework to be optional for deployment flexibility in keeping with the Vulkan philosophy. For this first version, we are primarily aiming to expose the full functionality of modern desktop hardware, but that is hardware agnostic and can be accelerated via existing GPU compute or dedicated ray tracing cores. 4. では、Vulkan レイトレーシングはどうやって使うのでしょうか? 他の多くのレイトレーシン グ API と同様に、最初のステップは、シーンのジオメトリを効率的な、2 レベルのアクセラレ ーション構造に構築することです。これにより、レイの交差点における探索でパフォーマンス の最適化が可能です。 Vulkan アクセラレーション構造の正確な内部構成はアプリケーションか らは見えないため、ハードウェアベンダーは独自のアーキテクチャに一致するように最適化が 可能です。 So, how do you use Vulkan Ray Tracing? Like many other ray tracing APIs, the first step is to build the scene geometry into an efficient, two-level acceleration structure so searching for ray intersections can be performance optimized. The precise internal organization of the Vulkan acceleration structure is opaque to the application, so that the hardware vendor can optimize it to match their own architecture. 5. VK_KHR_acceleration_structure 拡張機能は、GPU 上、またはオプションでホスト上でアクセ ラレーション構造を作成および構築する機能を提供します(これについては後で詳しく説明し ます)。 また、アクセラレーション構造の圧縮とシリアライゼーションを可能にするアクセラ レーション構造管理コマンドも提供します。
  • 3. The VK_KHR_acceleration_structure extension provides the ability to create and build acceleration structures on the GPU, or optionally on the host (more about that later). It also provides acceleration structure management commands, which enable compaction and serialization of acceleration structures. アクセラレーション構造は、高度に最適化された実装依存のデータ構造であり、アプリケーシ ョンが提供するシーンジオメトリから構築され、バッファに配置されます。 この不透明なデー タ構造は、複雑なシーンで高パフォーマンスのレイの交差を実現するために使用されます。 An acceleration structure is a highly-optimized, implementation-dependent data structure that is built from the application-provided scene geometry, and placed in a buffer. This opaque data structure is used to achieve high performance ray intersections over complex scenes. アクセラレーションの構造は、図のように 2 つのレベルの階層に分割されています。 下位レベ ルのアクセラレーション構造には、シーンを構成するカスタムジオメトリの三角形または軸に 沿ったバウンディングボックス(AABB)が含まれています。 各下位レベルのアクセラレーショ ン構造は、ラスタライズパイプラインでの複数の描画呼び出しに対応する可能性があるため、 各下位レベルのビルドには、指定された型のタイプのジオメトリのセットを複数含めることが 可能です。 上位レベルのアクセラレーション構造には、下位レベルのアクセラレーション構造 のセットへの参照が含まれています。 各参照には、その参照に対するシェーディングおよび座 標変換情報が含まれています。 下位のアクセラレーション構造は、上位のアクセラレーション 構造からの参照によってのみ使用されます。 上位レベルのアクセラレーション構造は、記述子 バインディングとして、またはデバイスアドレスによってシェーダーからアクセスされます。 The acceleration structure is divided into a two-level hierarchy as shown. The bottom-level acceleration structure, contains the triangles or axis-aligned bounding boxes (AABBs) of custom geometry that make up the scene. Since each bottom level acceleration structure may correspond to what would be multiple draw calls in the rasterization pipeline, each bottom level build can contain multiple sets of geometry of a given type. The top-level acceleration structure contains references to a set of bottom-level acceleration structures. Each reference includes shading and transform information for that reference. The bottom-level acceleration structure is only used by reference from the top-level acceleration structure. The top-level acceleration structure is accessed from the shader as a descriptor binding or by device address. 6. 次に、光線(レイ)をシーンに発する必要があります。それらの光線(レイ)がシーンジオ メトリ、マテリアル、および光源(ライト)とどのように交差および相互作用するかを決定す る為に、そして、さまざまな視覚効果を可能にするプログラム可能な柔軟性を使用して、これ らの交差を処理する為です。 Vulkan は、シーンをトラバースするのに 2 つの方法を提供しま す。
  • 4. Next, we need to launch rays into the scene to determine how those rays intersect and interact with scene geometry, materials, and light sources – and to process those intersections, with programmable flexibility to enable a wide variety of visual effects. Vulkan provides two ways to traverse the scene. 最初の方法では、新しいレイトレーシングパイプラインを使用します。これにより、アプリケ ーションはシェーダーのセットをパイプラインにコンパイルして、必要なレイとマテリアルの 処理を管理することが可能になります。次に、レイトレーシングパイプラインを使用してシー ンに光線のグリッドを起動します。これは、交差が発生したときに適切なシェーダーを呼び出 し、その光線にヒットが発生しなかった場合はミスシェーダーを呼び出します。 The first method uses a new Ray Tracing Pipeline that enables the application to compile a set of shaders into a pipeline to handle any desired ray and material processing, and then launch a grid of rays into the scene with the Ray Tracing Pipeline invoking the appropriate shader when intersections occur, or a miss shader if no hits occur for that ray. Vulkan が RayQueries と呼ぶ、光線を発射する 2 番目の手法は、はるかに明示的であり、任意の タイプの Vulkan シェーダーがいつでも光線を起動し、必要に応じて交差データを処理できるよ うにします。 これはシェーダーがシーン内のトラバーサルの進行方法も制御する為、非常に柔 軟な手法ですが、シェーダーの作成者により多くの負担をかけます。 The second technique to fire rays, which Vulkan calls Ray Queries, is much more explicit and enables any type of Vulkan shader to launch a ray at any time and process the intersection data however it wishes. This is a very flexible technique as the shader also controls how the traversal proceeds through the scene, but it does place more burden onto the shader author. 7. VK_KHR_ray_tracing_pipeline 拡張機能は、新しいレイトレーシングシェーダーステージ、パ イプライン、および関連するコマンドを追加し、対応する SPV_KHR_ray_tracing および GLSL_EXT_ray_tracing 拡張機能は、サポートする SPIR-V および GLSL 構造を定義します。 The VK_KHR_ray_tracing_pipeline extension adds the new ray tracing shader stages, pipelines, and associated commands, and the corresponding SPV_KHR_ray_tracing and GLSL_EXT_ray_tracing extensions define the supporting SPIR-V and GLSL constructs. レイトレーシングパイプラインの作業は、現在バインドされているレイトレーシングパイプラ インで vkCmdTraceRaysKHR コマンドを使用して起動されます。 このコマンドは、アプリケーシ ョン定義のレイ生成スレッドのセットを呼び出します。このスレッドは、シェーダーから traceRaysEXT()を呼び出すことができ、指定されたアクセラレーション構造でトラバーサル作 業を開始します。 トラバーサル中に、トレースおよびアクセラレーション構造が必要とする場 合は、Intersection とあらゆる Hit Shader 内のアプリケーションのシェーダーコードがトラバー
  • 5. サルをどう処理するかをコントロールすることが可能です。 トラバーサルが完了すると、Miss または一番近くの Hit Shader が呼び出されます。 Ray tracing pipeline work is launched using vkCmdTraceRaysKHR command with the currently bound ray tracing pipeline. This command invokes an application-defined set of ray generation threads, which can call traceRaysEXT() from the shader, starting traversal work on the specified acceleration structure. During traversal, if required by the trace and acceleration structure, application shader code in intersection and any hit shaders can control how traversal proceeds. After traversal completes, either a miss or closest hit shader is invoked. 異なるシェーダーステージでパラメーターと結果をやり取りすることが可能です。これは、ト ラバーサルコントロールシェーダーからのすべてのトラバーサルステージと hit attribute 構造の 間の ray のペイロード構造を使用して行います。 The different shader stages can communicate parameters and results using ray payload structures between all traversal stages and hit attribute structures from the traversal control shaders. トラバーサルフェーズを有効にして、与えられた一連のコントロールするトラバーサルやトラ バーサルに対する返答の後で、どのシェーダーを実行したらよいか分かるようにするのに、実 装ではシェーダーバインディングテーブルを使います。テーブル内の各シェーダーエントリ は、指定されたシェーダーグループの実装からクエリされたシェーダーグループハンドルとシ ェーダーバッファーレコードで構成されます。シェーダーバッファーレコードはアプリケーシ ョンがバッファーデバイスアドレスや記述子インデックスなどのインスタンス固有のデータに 使用できるものです。指定されたシェーダーのアドレスは、トレースレイ API 呼び出しへのパ ラメーター、traceRayEXT シェーダー呼び出しへのパラメーター、およびアクセラレーション構 造に格納されている情報の組み合わせを介したトラバーサルによって計算されます。指定され たシェーダーのアドレスは、トレースレイ API 呼び出しへのパラメーター、traceRayEXT シェー ダー呼び出しへのパラメーター、およびアクセラレーション構造に格納されている情報の組み 合わせを介したトラバーサルによって計算されます。 To enable the traversal phase to know which shader to invoke after a given step of traversal to control or respond to the traversal, the implementation uses a shader binding table. Each shader entry in the table consists of a shader group handle queried from the implementation for a given shader group plus an optional shader buffer record which the application may use for instance-specific data such as buffer device addresses or descriptor indices. The address for any given shader is computed by the traversal through a combination of parameters to the trace rays API call, parameters to the traceRayEXT shader call, and information stored in the acceleration structure. 8. VK_KHR_ray_query 拡張機能は、すべてのシェーダーステージ(グラフィックス、コンピュー ティング、レイトレーシングシェーダーを含む)向けのレイクエリを可能にし、対応する
  • 6. SPV_KHR_ray_query および GLSL_EXT_ray_query 拡張機能は、サポートする SPIR-V および GLSL 構 造を定義します。 The VK_KHR_ray_query extension enables ray queries for all shader stages (including graphics, compute, and ray tracing shaders), and the corresponding SPV_KHR_ray_query and GLSL_EXT_ray_query extensions define the supporting SPIR-V and GLSL constructs. レイのクエリは、レイトラバーサルを実行し、任意のシェーダーステージで結果を取得するの に利用可能です。 アクセラレーション構造を必要とする以外に、レイクエリは一連の新しいシ ェーダー命令のみを使用して実行されます。 Ray queries can be used to perform ray traversal and get a result back in any shader stage. Other than requiring acceleration structures, ray queries are performed using only a set of new shader instructions. レイクエリは、トラバースするアクセラレーション構造とトレースされるレイのさまざまなプ ロパティを指定する rayQueryInitializeEXT を使用して初期化されます。次に、 rayQueryProceedEXT を使用してトラバーサルを開始します。 交差する点の候補が見つかった 後、シェーダーは、トラバーサル中にシェーダーがアクセスできる命令を使用して、潜在的な 交差点とレイ自体のプロパティを調べ、レイの処理方法を指定できます。処理方法としては、 交差点の詳細を生成するか、ヒットを確認するか、レイを終了するか、となります。 トラバーサルが完了していなかったり、レイが終了した場合は、rayQueryProceedEXT を再度呼 び出して、アクセラレーション構造のトラバーサルを続行することが可能です。 Ray queries are initialized using rayQueryInitializeEXT which specifies an acceleration structure to traverse, and various properties of the ray being traced. Next, rayQueryProceedEXT is used to start the traversal. After an intersection candidate is found, the shader can examine properties of the potential intersection and of the ray itself using instructions which are accessible to shader during traversal and specify how the ray should be handled – either by generating intersection details, confirming a hit, or terminating the ray. If the traversal is not finished or the ray terminated, rayQueryProceedEXT can be called again to continue the acceleration structure traversal. 9. レイトレーシングアプリケーションは、数百または数千のシェーダーを使用して、シーン内 のさまざまなタイプの視覚効果を処理できます。 それらの多くのシェーダーをレイトレーシン グパイプラインにコンパイルすると、新しいシーンが読み込まれたとき、または新しいシーン エフェクトが必要になったときに、アプリケーションの処理が止まってしまうほど負荷がかか る可能性があります。こういったことは、シーンに突然新しいシェーダーが必要になったり、 シェーダーのセット全体の再コンパイルや再ロードのトリガーとなることが見つかると、非常 に悪化させることになります。このオーバーヘッドを回避するために、VK_KHR_pipeline_library 拡張機能を使用すると、SPIR-V シェーダーのライブラリをインクリメンタルにコンパイルして
  • 7. 既存のレイトレーシングパイプラインに入れることが可能です。これにより、全部を最初から 再コンパイルする必要がなくなります。 A ray tracing application can use 100s or even 1000s of shaders to process the many types of visual effects in a scene. Compiling that many shaders into a Ray Tracing Pipeline can be intensive enough to cause application stuttering when new scenes are loaded, or when new scene effects are needed. It can be particularly aggravating to discover that a scene suddenly needs a new shader, and that triggers the entire set of shaders to be recompiled and reloaded. To avoid that overhead, the VK_KHR_pipeline_library extension enables a library of SPIR-V shaders to be incrementally compiled into an existing ray tracing pipeline - saving the need to recompile everything from scratch. パイプラインライブラリはパイプラインで、この中には通常のステートとシェーダー、および API に直接バインドされることを意図していないけれども、後のパイプラインにリンクされる コードのライブラリとして使用されることを示す追加のフラグを含んでいます。パイプライン ライブラリは、複数のレイトレーシングパイプラインで使用することもでき、これにより複数 のパイプラインでシェーダーのコンパイル処理の再利用が可能になります。レイトレーシング パイプラインの作成には、ライブラリパイプラインと追加のレイトレーシングシェーダーの両 方が含まれる場合があります。最終的なリンクされたパイプラインを正常に作成するには、各 シェーダーからのコンパイル処理の状態がすべて一致しなければなりません。 A pipeline library is a pipeline which includes the normal state and shaders along with an additional flag to indicate that it is not intended to be bound directly to the API but is intended to be used as a library of code to be linked with a later pipeline. Pipeline libraries can also be used in multiple ray tracing pipelines, allowing reuse of shader compilation in multiple pipelines. Ray tracing pipeline creation may include both library pipelines as well as additional ray tracing shaders. All of the compilation state from each shader must match to successfully create the final linked pipeline. 10. パイプラインライブラリは、シーン内のシェーダーを動的に管理する場合に役立ちますが、 シェーダーをコンパイルするだけでなく、ジオメトリをアクセラレーション構造にロードする など、どんなレイトレーシングアプリケーションでもセットアップしなければならない重要な 処理が存在します。アプリケーションがシステム内の使用可能なすべてのプロセッサをセット アップ処理に使用できるようにするために、ホスト CPU がホストメモリにアクセラレーション 構造を構築して、後で GPU にダウンロードできるようにしました。これによりホスト CPU が他 の作業を実行している GPU と並行してセットアップを実行できるようになります。 Pipeline Libraries can be helpful when dynamically managing the shaders in a scene, but there is still significant setup processing for any ray tracing application – not just compiling shaders but also loading geometry into Acceleration Structures. To help applications use all the available processors in a system for setup processing, we have provided the ability for the host CPU to build Acceleration Structures in host memory for subsequent download to the GPU, enabling the host CPU to perform setup in parallel with the GPU performing other work.
  • 8. VK_KHR_deferred_host_operations 拡張機能は、Vulkan のドライバーが後で実行するために遅延 作業(defferd work)ハンドルをアプリケーションに返すメカニズムを提供します。これによ り、アプリケーションが作業の実行を制御し、作業を複数のコアとバックグラウンドスレッド に分散できるようになります。 たとえば、レイトレーシングアプリケーションでは、遅延ホス トオペレーション(defferd host operation)を使用して、ホスト上で複数の CPU コアを非同期的 に使用してアクセラレーション構造を構築することが可能です。 The VK_KHR_deferred_host_operations extension provides a mechanism where the Vulkan driver returns a deferred work handle to the application for later execution – enabling the application to control work execution and to distribute the work onto multiple cores and background threads. In a ray tracing application for example, deferred host operations can be used to asynchronously use multiple CPU cores to build Acceleration Structures on the host. 11. 以上で、現在利用可能な Vulkan レイトレーシング拡張機能の概要となります。AMD および NVIDIA GPU 用のプロダクション レイトレーシング ドライバーが現在出荷されており、Intel ド ライバーは今年後半に利用可能になる予定です。Vulkan Ray Tracing の詳細については、こちら にある数々のブログ投稿、チュートリアル、およびその他のリソースへのリンクをご覧くださ い。 So this was just a quick overview of the Vulkan Ray Tracing extensions that are now available. Production ray tracing drivers for AMD and NVIDIA GPUs are now shipping and Intel drivers should be available later this year. For more information about Vulkan Ray Tracing, here are links to a number of blog posts, tutorials, and other resources. ポータブルで、クロスベンダーで、クロスプラットフォームのレイトレーシングアクセラレー ションの時代へようこそ。皆さんがどんな形でこちらを利用されるのかを楽しみにしていま す! Welcome to the era of portable, cross-vendor, cross-platform ray tracing acceleration – we look forward to seeing how you will use it!