mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-15 14:18:04 +08:00
Shaders: rust-gpu integration to compile shader nodes to WGSL (#3097)
* shaders: shader compilation setup * nix: use rustc_codegen_spirv.so from nix * shaders: codegen for per_pixel_adjust shader nodes * shaders: disable nodes needing bool * shaders: `#[repr(u32)]` some enums * shaders: add lint ignores from rust-gpu * shaders: fix node-macro tests * gcore-shaders: toml cleanup * shader-nodes feature: put rust-gpu to wgsl compile behind feature gate * shaders: fix use TokenStream2 * shaders: allow providing shader externally * Update iai runner in workflow --------- Co-authored-by: Timon Schelling <me@timon.zip> Co-authored-by: Dennis Kobert <dennis@kobert.dev>
This commit is contained in:
@@ -2,8 +2,9 @@ mod benchmark_util;
|
||||
|
||||
use benchmark_util::setup_network;
|
||||
use graphene_std::application_io::RenderConfig;
|
||||
use iai_callgrind::{black_box, library_benchmark, library_benchmark_group, main};
|
||||
use iai_callgrind::{library_benchmark, library_benchmark_group, main};
|
||||
use interpreted_executor::dynamic_executor::DynamicExecutor;
|
||||
use std::hint::black_box;
|
||||
|
||||
fn setup_run_cached(name: &str) -> DynamicExecutor {
|
||||
let (executor, _) = setup_network(name);
|
||||
|
||||
@@ -2,8 +2,9 @@ mod benchmark_util;
|
||||
|
||||
use benchmark_util::setup_network;
|
||||
use graphene_std::application_io;
|
||||
use iai_callgrind::{black_box, library_benchmark, library_benchmark_group, main};
|
||||
use iai_callgrind::{library_benchmark, library_benchmark_group, main};
|
||||
use interpreted_executor::dynamic_executor::DynamicExecutor;
|
||||
use std::hint::black_box;
|
||||
|
||||
fn setup_run_once(name: &str) -> DynamicExecutor {
|
||||
let (executor, _) = setup_network(name);
|
||||
|
||||
@@ -2,8 +2,9 @@ mod benchmark_util;
|
||||
|
||||
use benchmark_util::setup_network;
|
||||
use graph_craft::proto::ProtoNetwork;
|
||||
use iai_callgrind::{black_box, library_benchmark, library_benchmark_group, main};
|
||||
use iai_callgrind::{library_benchmark, library_benchmark_group, main};
|
||||
use interpreted_executor::dynamic_executor::DynamicExecutor;
|
||||
use std::hint::black_box;
|
||||
|
||||
fn setup_update_executor(name: &str) -> (DynamicExecutor, ProtoNetwork) {
|
||||
let (_, proto_network) = setup_network(name);
|
||||
|
||||
Reference in New Issue
Block a user