Skip to content

Commit 29d224c

Browse files
committed
Remove "simd" from tiling_2d_simd
1 parent 872163a commit 29d224c

File tree

16 files changed

+20
-25
lines changed

16 files changed

+20
-25
lines changed

blog/2024-11-21-optimizing-matrix-mul/code/Cargo.lock

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

blog/2024-11-21-optimizing-matrix-mul/code/Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ members = [
99
"crates/gpu/workgroup_2d",
1010
"crates/gpu/tiling_1d",
1111
"crates/gpu/tiling_1d_loop",
12-
"crates/gpu/tiling_2d_simd",
12+
"crates/gpu/tiling_2d",
1313
#
1414
# ---- The rust code that runs both on the GPU and the CPU. ----
1515
# It "knows" what platform it is being compiled for and can conditionally change
@@ -31,7 +31,8 @@ members = [
3131
"crates/cpu/compiled_for_gpu/workgroup_256",
3232
"crates/cpu/compiled_for_gpu/workgroup_2d",
3333
"crates/cpu/compiled_for_gpu/tiling_1d",
34-
"crates/cpu/compiled_for_gpu/tiling_2d_simd",
34+
"crates/cpu/compiled_for_gpu/tiling_1d_loop",
35+
"crates/cpu/compiled_for_gpu/tiling_2d",
3536
"crates/cpu/compiled_for_gpu/isomorphic",
3637
# 3) A binary that runs on the CPU. It configures the `matmul` library on the CPU
3738
# and then tells it to run the matrix multiplication.

blog/2024-11-21-optimizing-matrix-mul/code/benches/gpu_bench.rs

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ fn bench_all_variants(c: &mut Criterion) {
3838
let multiplier_workgroup_2d = matmul::workgroup_2d::wgpu();
3939
let multiplier_tiling_1d = matmul::tiling_1d::wgpu();
4040
let multiplier_tiling_1d_loop = matmul::tiling_1d_loop::wgpu();
41-
let multiplier_tiling_2d_simd = matmul::tiling_2d_simd::wgpu();
41+
let multiplier_tiling_2d = matmul::tiling_2d::wgpu();
4242
let multiplier_isomorphic_gpu = matmul::isomorphic::wgpu();
4343

4444
for &(m, k, n) in SIZES {
@@ -126,17 +126,11 @@ fn bench_all_variants(c: &mut Criterion) {
126126
);
127127

128128
group.bench_with_input(
129-
BenchmarkId::new("tiling_2d_simd:wgpu", format!("{}x{}x{}", m, k, n)),
129+
BenchmarkId::new("tiling_2d:wgpu", format!("{}x{}x{}", m, k, n)),
130130
&(m, k, n),
131131
|bench, &(m, k, n)| {
132132
bench.iter(|| {
133-
black_box(multiplier_tiling_2d_simd.multiply(
134-
black_box(&a),
135-
black_box(&b),
136-
m,
137-
k,
138-
n,
139-
))
133+
black_box(multiplier_tiling_2d.multiply(black_box(&a), black_box(&b), m, k, n))
140134
});
141135
},
142136
);

blog/2024-11-21-optimizing-matrix-mul/code/bin/blog/src/bin.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ fn main() {
3232
run_tests(matmul::workgroup_2d::wgpu(), &sizes);
3333
run_tests(matmul::tiling_1d::wgpu(), &sizes);
3434
run_tests(matmul::tiling_1d_loop::wgpu(), &sizes);
35-
run_tests(matmul::tiling_2d_simd::wgpu(), &sizes);
35+
run_tests(matmul::tiling_2d::wgpu(), &sizes);
3636

3737
run_tests(matmul::isomorphic::wgpu(), &sizes);
3838
run_tests(matmul::isomorphic::cpu::single_threaded(), &sizes);

blog/2024-11-21-optimizing-matrix-mul/code/crates/cpu/compiled_for_gpu/isomorphic/build.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::fs;
44
use std::path::{Path, PathBuf};
55

66
fn main() -> Result<(), Box<dyn std::error::Error>> {
7-
let gpu_crate_path = Path::new("../../../gpu/tiling_2d_simd");
7+
let gpu_crate_path = Path::new("../../../gpu/tiling_2d");
88

99
// Compile the shader crate with SpirvBuilder.
1010
let result = SpirvBuilder::new(gpu_crate_path, "spirv-unknown-vulkan1.2")
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[package]
2-
name = "compiled_tiling_2d_simd"
2+
name = "compiled_tiling_2d"
33
version = "0.1.0"
44
edition = "2021"
55

blog/2024-11-21-optimizing-matrix-mul/code/crates/cpu/compiled_for_gpu/tiling_2d_simd/build.rs renamed to blog/2024-11-21-optimizing-matrix-mul/code/crates/cpu/compiled_for_gpu/tiling_2d/build.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::fs;
44
use std::path::{Path, PathBuf};
55

66
fn main() -> Result<(), Box<dyn std::error::Error>> {
7-
let gpu_crate_path = Path::new("../../../gpu/tiling_2d_simd");
7+
let gpu_crate_path = Path::new("../../../gpu/tiling_2d");
88

99
// Compile the shader crate with SpirvBuilder.
1010
let result = SpirvBuilder::new(gpu_crate_path, "spirv-unknown-vulkan1.2")

blog/2024-11-21-optimizing-matrix-mul/code/crates/cpu/matmul/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ compiled_workgroup_256 = { path = "../compiled_for_gpu/workgroup_256" }
2222
compiled_workgroup_2d = { path = "../compiled_for_gpu/workgroup_2d" }
2323
compiled_tiling_1d = { path = "../compiled_for_gpu/tiling_1d" }
2424
compiled_tiling_1d_loop = { path = "../compiled_for_gpu/tiling_1d_loop" }
25-
compiled_tiling_2d_simd = { path = "../compiled_for_gpu/tiling_2d_simd" }
25+
compiled_tiling_2d = { path = "../compiled_for_gpu/tiling_2d" }
2626
compiled_isomorphic = { path = "../compiled_for_gpu/isomorphic" }
2727
# The CPU side of the isomophic implementation.
2828
isomorphic = { path = "../../shared/isomorphic" }

blog/2024-11-21-optimizing-matrix-mul/code/crates/cpu/matmul/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ pub mod tiling_1d_loop {
8686
}
8787
}
8888

89-
pub mod tiling_2d_simd {
89+
pub mod tiling_2d {
9090
use super::*;
9191
use crate::backends::wgpu::MatrixMultiplier;
9292

blog/2024-11-21-optimizing-matrix-mul/code/crates/cpu/matmul/src/variants.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,13 +158,13 @@ pub struct Tiling2dSimd;
158158

159159
impl Display for Tiling2dSimd {
160160
fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
161-
write!(f, "tiling_2d_simd")
161+
write!(f, "tiling_2d")
162162
}
163163
}
164164

165165
impl Gpu for Tiling2dSimd {
166166
fn compiled_shader(&self) -> &[u8] {
167-
compiled_tiling_2d_simd::SHADER_BINARY
167+
compiled_tiling_2d::SHADER_BINARY
168168
}
169169
}
170170

blog/2024-11-21-optimizing-matrix-mul/code/crates/gpu/tiling_2d_simd/Cargo.toml renamed to blog/2024-11-21-optimizing-matrix-mul/code/crates/gpu/tiling_2d/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[package]
2-
name = "tiling_2d_simd"
2+
name = "tiling_2d"
33
version = "0.1.0"
44
edition = "2021"
55

blog/2024-11-21-optimizing-matrix-mul/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ We can take this a step further and calculate 2D results per thread! Instead of
291291
calculating 4 elements per single row, we can calculate 4 elements for 4 rows (e.g. a 2D
292292
tile).
293293

294-
import { RustTiling2dSimd } from './snippets/tiling_2d_simd.tsx';
294+
import { RustTiling2d } from './snippets/tiling_2d.tsx';
295295

296296
<RustTiling2dSimd />
297297

blog/2024-11-21-optimizing-matrix-mul/snippets/tiling_2d_simd.tsx renamed to blog/2024-11-21-optimizing-matrix-mul/snippets/tiling_2d.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React from "react";
22
import Snippet from "@site/src/components/Snippet";
3-
import RustKernelSource from "!!raw-loader!../code/crates/gpu/tiling_2d_simd/src/lib.rs";
3+
import RustKernelSource from "!!raw-loader!../code/crates/gpu/tiling_2d/src/lib.rs";
44

55
export const RustTiling2dSimd: React.FC = () => (
66
<Snippet language="rust" className="text-xs" title="2D tiling kernel with Rust GPU">

0 commit comments

Comments
 (0)