Skip to content

Switch to docusaurus #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Oct 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions .github/workflows/deploy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Deploy to GitHub Pages

on:
push:
branches:
- main
# Review gh actions docs if you want to further define triggers, paths, etc
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#on

jobs:
build:
name: Build Docusaurus
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 18
cache: yarn

- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Build website
run: yarn build

- name: Upload Build Artifact
uses: actions/upload-pages-artifact@v3
with:
path: build

deploy:
name: Deploy to GitHub Pages
needs: build

# Grant GITHUB_TOKEN the permissions required to make a Pages deployment
permissions:
pages: write # to deploy to Pages
id-token: write # to verify the deployment originates from an appropriate source

# Deploy to the github-pages environment
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

runs-on: ubuntu-latest
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
31 changes: 0 additions & 31 deletions .github/workflows/main.yml

This file was deleted.

26 changes: 26 additions & 0 deletions .github/workflows/test-deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Test deployment

on:
pull_request:
branches:
- main
# Review gh actions docs if you want to further define triggers, paths, etc
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#on

jobs:
test-deploy:
name: Test deployment
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 18
cache: yarn

- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Test build website
run: yarn build
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,6 @@
public/
node_modules/
.DS_Store
build/
.docusaurus

31 changes: 27 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,30 @@

This is the website for the Rust GPU organization.

## Building
1. Install [zola](https://www.getzola.org/)
2. `git submodule update --init --recursive`
3. `zola build`
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.

### Installation

```
$ yarn
```

### Local Development

```
$ yarn start
```

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

### Build

```
$ yarn build
```

This command generates static content into the `build` directory and can be served using any static contents hosting service.

### Deployment

Auto deployed to GitHub pages via GitHub Actions.
3 changes: 3 additions & 0 deletions babel.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
module.exports = {
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
};
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
+++
title = "Rust GPU Transitions to Community Ownership"
authors = ["LegNeato", "eddyb"]
+++
---
title: "Rust GPU Transitions to Community Ownership"
authors: ["LegNeato", "eddyb"]
slug: transition-announcement
tags: ["announcement"]
---

We are excited to announce that as of today the <a
href="https://rust-gpu.github.io">Rust GPU</a> project will be transitioning from
Expand All @@ -11,6 +13,8 @@ beginning of a broader strategy aimed at revitalizing, unifying, and standardizi
programming in Rust. We are eager to share more details in the near future but in the
meantime if you are a maintainer of a GPU-related Rust project, please reach out!

<!-- truncate -->

## What is Rust GPU?

<a href="https://rust-gpu.github.io">Rust GPU</a> makes it possible to write and run GPU
Expand All @@ -29,35 +33,20 @@ and possibly integrated with Rust GPU.

To put Rust GPU in context, here's an overview of the current landscape:

- [rust-gpu](https://github.com/EmbarkStudios/rust-gpu): Compiles unmodified Rust code to
[SPIR-V](https://www.khronos.org/spir/) (Vulkan) so that it can run on the GPU.
- [rust-cuda](https://github.com/Rust-GPU/Rust-CUDA): Compiles unmodified Rust code to
[NVVM](https://docs.nvidia.com/cuda/nvvm-ir-spec/index.html) (CUDA) so that it can run
on the GPU. _Currently unmaintained but stay tuned!_
- [nvptx backend in
rustc](https://doc.rust-lang.org/rustc/platform-support/nvptx64-nvidia-cuda.html):
Compiles unmodified Rust code to
[PTX](https://docs.nvidia.com/cuda/parallel-thread-execution/index.html) (CUDA) so
that it can run on the GPU.
- [CubeCL](https://github.com/tracel-ai/cubecl): Compute language extension for Rust.
Enables annotated Rust code to run on the GPU.
- [krnl](https://github.com/charles-r-earp/krnl): Safe, portable, high performance
compute (GPGPU) kernels. Enables annotated Rust code to run on the GPU (via Rust GPU).
- [cudarc](https://github.com/coreylowman/cudarc): Minimal and safe api over the CUDA
toolkit. Enables calling CUDA from Rust running on the CPU.
- [wgpu](https://wgpu.rs/): A safe and portable graphics library for Rust based on the
WebGPU API. Enables communicating with the GPU from Rust running on the CPU.
- [naga](https://github.com/gfx-rs/wgpu/tree/trunk/naga): A source code translator
written in Rust that converts between various GPU-specific shader languages
([WGSL](https://www.w3.org/TR/WGSL/),
[GLSL](https://en.wikipedia.org/wiki/OpenGL_Shading_Language),
[HLSL](https://en.wikipedia.org/wiki/High-Level_Shader_Language), and
[MSL](https://developer.apple.com/metal/)). These shaders ultimately run on the GPU.
- [ZLUDA](https://github.com/vosen/ZLUDA): A drop-in replacement for CUDA written in
Rust. Enables using tools and libraries targeted at CUDA on non-NVIDIA hardware.
- [Asahi Linux GPU
drivers](https://asahilinux.org/2022/12/gpu-drivers-now-in-asahi-linux/): GPU drivers
partially written in Rust to add Linux support for Apple GPUs.
- **[rust-gpu](https://github.com/EmbarkStudios/rust-gpu)**: Compiles unmodified Rust
code to [SPIR-V](https://www.khronos.org/spir/) (Vulkan) so that it can run on the
GPU.
- **[rust-cuda](https://github.com/Rust-GPU/Rust-CUDA)**: Compiles unmodified Rust code
to [NVVM](https://docs.nvidia.com/cuda/nvvm-ir-spec/index.html) (CUDA) so that it can
run on the GPU. _Currently unmaintained but stay tuned!_
- **[nvptx backend in rustc](https://doc.rust-lang.org/rustc/platform-support/nvptx64-nvidia-cuda.html)**: Compiles unmodified Rust code to [PTX](https://docs.nvidia.com/cuda/parallel-thread-execution/index.html) (CUDA) so that it can run on the GPU.
- **[CubeCL](https://github.com/tracel-ai/cubecl)**: Compute language extension for Rust. Enables annotated Rust code to run on the GPU.
- **[krnl](https://github.com/charles-r-earp/krnl)**: Safe, portable, high performance compute (GPGPU) kernels. Enables annotated Rust code to run on the GPU (via Rust GPU).
- **[cudarc](https://github.com/coreylowman/cudarc)**: Minimal and safe api over the CUDA toolkit. Enables calling CUDA from Rust running on the CPU.
- **[wgpu](https://wgpu.rs/)**: A safe and portable graphics library for Rust based on the WebGPU API. Enables communicating with the GPU from Rust running on the CPU.
- **[naga](https://github.com/gfx-rs/wgpu/tree/trunk/naga)**: A source code translator written in Rust that converts between various GPU-specific shader languages ([WGSL](https://www.w3.org/TR/WGSL/)**, **[GLSL](https://en.wikipedia.org/wiki/OpenGL_Shading_Language), [HLSL](https://en.wikipedia.org/wiki/High-Level_Shader_Language), and [MSL](https://developer.apple.com/metal/)). These shaders ultimately run on the GPU.
- **[ZLUDA](https://github.com/vosen/ZLUDA)**: A drop-in replacement for CUDA written in Rust. Enables using tools and libraries targeted at CUDA on non-NVIDIA hardware.
- **[Asahi Linux GPU drivers](https://asahilinux.org/2022/12/gpu-drivers-now-in-asahi-linux/)**: GPU drivers partially written in Rust to add Linux support for Apple GPUs.

## Why Rust for GPU Programming?

Expand Down Expand Up @@ -200,8 +189,3 @@ Thank you for your continued support and contributions. Stay tuned for more upda
don't hesitate to reach out if you have any questions or want to get involved.

Happy coding!

_LegNeato ([GitHub](https://github.com/LegNeato),
[Twitter](https://twitter.com/legneato)) and eddyb ([GitHub](https://github.com/eddyb))_

**Rust GPU Maintainers**
19 changes: 19 additions & 0 deletions blog/authors.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
LegNeato:
name: Christian Legnitto
title: Rust GPU maintainer
url: https://github.com/LegNeato
image_url:
## Image URL managed by the fetchAuthorImages plugin. Changes may be overwritten.
/img/authors/LegNeato.png
socials:
x: LegNeato
github: LegNeato

eddyb:
name: EddyB
title: Rust GPU maintainer
image_url:
## Image URL managed by the fetchAuthorImages plugin. Changes may be overwritten.
/img/authors/eddyb.png
socials:
github: eddyb
14 changes: 14 additions & 0 deletions blog/tags.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
release:
label: release
permalink: /releases
description: New releases

announcement:
label: announcement
permalink: /announcements
description: Announcements

demo:
label: demo
permalink: /demos
description: Demos
31 changes: 0 additions & 31 deletions config.toml

This file was deleted.

68 changes: 0 additions & 68 deletions content/_index.md

This file was deleted.

Loading