Disclaimer: I have no professional education in Compulational Fluid Dynamics, these are various notes on what I found/learned when trying to learn a bit on the topic. Some of the notes lack sources as I wrote them up later often just remembering some StackExchange answer. Some things I might have misinterpreted.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
H264, 25fps: | |
."C:\Users\andre\ffmpeg.exe" -i %d.png -c:v libx264 -pix_fmt yuv420p output.mp4 | |
H264, 60fps: | |
."C:\Users\andre\ffmpeg.exe" -framerate 60 -i screenshot%d.png -r 60 -c:v libx264 -pix_fmt yuv420p output.mp4 | |
H265 (windows can't play it!) | |
."C:\Users\andre\ffmpeg.exe" -i %d.png -c:v libx265 -pix_fmt yuv420p output.mp4 | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@group(0) @binding(0) | |
var<storage, read> numbers_input: array<u32>; | |
@group(0) @binding(1) | |
var<storage, read_write> numbers_output: array<u32>; | |
var<workgroup> shared_atomic: array<atomic<u32>, 64>; | |
var<workgroup> shared_workgroup_memory: array<u32, 64>; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en-US"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1"> | |
<title>Compiling & linking a large shader</title> | |
<script src="main.js" type="module"></script> | |
<script id="vertexShader" type="x-shader/x-vertex">#version 300 es |
TL;DR:
- Compile times are 13-16% shorter if you have several backends (always on Windows), slight but consistent improvements if you use only a single one (default on Mac)
- Runtime performance of compute passes gets worse by 10-30% (with a 40% worse outlier for a lot of dispatches in a single pass)
- Runtime performance of render passes sometimes 17-34% better and sometimes 10% worse 🤷
- Stuck doc-gen issue is fixed!
wgpu-info
Windows binary size goes down, Mac binary sizes goes up unless you add more backends