ジュリア言語プロジェクト

このページには、Google Season of Docs で承認されたテクニカル ライティング プロジェクトの詳細が掲載されています。

プロジェクトの概要

オープンソース組織:
Julia 言語
テクニカル ライター:
Ellipse0934
プロジェクト名:
JuliaGPU スタックのドキュメント
プロジェクトの長さ:
標準期間(3 か月)

プロジェクトの説明

このプロジェクトの主な目的は、デベロッパーが Julia で GPU プログラミングを始める際に役立つチュートリアルとサンプルを豊富に含むドキュメントを開発することです。残念ながら、GPU プログラミングに関するリソースは多くありません。また、比較的複雑なトピックであるため、学習者にとって難しいものになります。GPU を効果的に使用するには、ユーザーは GPU の使用方法だけでなく、GPU の仕組みも理解する必要があります。

このプロジェクトは 3 つの部分に分割できます(時間に比例していません)。

 Tutorials: Detailed guides for the beginner to help them get started, profile and debug their code.
 Examples: Write simple extensions to various Julia packages such as Images.jl, SciML.jl,etc.
 API Documentation: Restructure and write documentation to make it intuitive for the user to browse 
 through the documentation.

このプロジェクトは CUDA.jl に重点を置いていますが、Julia の GPU スタックは大部分がプラットフォームに依存しないため、AMD の ROCm スタックが完成し、Intel GPU が登場した後も、このプロジェクトのチュートリアルとサンプルを移植するために多くの労力は必要ありません。

チュートリアルとサンプルは、juliagpu.org ウェブサイトの専用セクションに掲載することを提案しています。チュートリアルのセクションでは、次のようなトピックについて説明します。

 Introduction (small rework)
 Mandelbrot : A program to generate an image of the mandelbrot set
 Prefix Scan: Computing the parallel prefix scan on the GPU
 How does a GPU work ? (language agnostic, discusses the architecture)
 Array Programming: Using high level array programming abstractions for GPU programming (Broadcast abstractions, custom array types,.etc)
 Profiling GPU applications (using Nsight and other tools)