mirror of
https://github.com/allaunthefox/Research-Stack.git
synced 2026-08-20 12:37:29 +00:00
style(compile-bridge): format GPU verifier
This commit is contained in:
parent
1feba7cdb6
commit
98532f537b
1 changed files with 64 additions and 79 deletions
|
|
@ -20,13 +20,11 @@ pub fn probe_gpu() -> anyhow::Result<GpuInfo> {
|
|||
let instance = wgpu::Instance::default();
|
||||
|
||||
// Synchronous adapter probe via pollster
|
||||
let adapter = pollster::block_on(instance.request_adapter(
|
||||
&wgpu::RequestAdapterOptions {
|
||||
let adapter = pollster::block_on(instance.request_adapter(&wgpu::RequestAdapterOptions {
|
||||
power_preference: wgpu::PowerPreference::HighPerformance,
|
||||
compatible_surface: None,
|
||||
force_fallback_adapter: false,
|
||||
},
|
||||
))
|
||||
}))
|
||||
.ok_or_else(|| anyhow::anyhow!("No GPU adapter found"))?;
|
||||
|
||||
let name = adapter.get_info().name.to_string();
|
||||
|
|
@ -43,13 +41,11 @@ pub fn verify_theorems_on_gpu(
|
|||
) -> anyhow::Result<Vec<TheoremReceipt>> {
|
||||
let instance = wgpu::Instance::default();
|
||||
|
||||
let adapter = pollster::block_on(instance.request_adapter(
|
||||
&wgpu::RequestAdapterOptions {
|
||||
let adapter = pollster::block_on(instance.request_adapter(&wgpu::RequestAdapterOptions {
|
||||
power_preference: wgpu::PowerPreference::HighPerformance,
|
||||
compatible_surface: None,
|
||||
force_fallback_adapter: false,
|
||||
},
|
||||
))
|
||||
}))
|
||||
.ok_or_else(|| anyhow::anyhow!("No GPU adapter found"))?;
|
||||
|
||||
let mut limits = wgpu::Limits::default();
|
||||
|
|
@ -154,14 +150,13 @@ pub fn verify_theorems_on_gpu(
|
|||
// ── Shader module ─────────────────────────────────────────────────
|
||||
let shader = device.create_shader_module(wgpu::ShaderModuleDescriptor {
|
||||
label: Some("Compile Bridge Shader"),
|
||||
source: wgpu::ShaderSource::Wgsl(Cow::Borrowed(
|
||||
include_str!("shaders/compile_bridge.wgsl"),
|
||||
)),
|
||||
source: wgpu::ShaderSource::Wgsl(Cow::Borrowed(include_str!(
|
||||
"shaders/compile_bridge.wgsl"
|
||||
))),
|
||||
});
|
||||
|
||||
// ── Bind group layout ─────────────────────────────────────────────
|
||||
let bind_group_layout =
|
||||
device.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor {
|
||||
let bind_group_layout = device.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor {
|
||||
label: None,
|
||||
entries: &[
|
||||
// binding 0: test vectors (read)
|
||||
|
|
@ -235,9 +230,8 @@ pub fn verify_theorems_on_gpu(
|
|||
});
|
||||
|
||||
// ── Dispatch ──────────────────────────────────────────────────────
|
||||
let mut encoder = device.create_command_encoder(&wgpu::CommandEncoderDescriptor {
|
||||
label: None,
|
||||
});
|
||||
let mut encoder =
|
||||
device.create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None });
|
||||
|
||||
{
|
||||
let mut compute_pass = encoder.begin_compute_pass(&wgpu::ComputePassDescriptor {
|
||||
|
|
@ -253,13 +247,7 @@ pub fn verify_theorems_on_gpu(
|
|||
}
|
||||
|
||||
// Copy results to staging
|
||||
encoder.copy_buffer_to_buffer(
|
||||
&results_buffer,
|
||||
0,
|
||||
&staging_buffer,
|
||||
0,
|
||||
staging_size,
|
||||
);
|
||||
encoder.copy_buffer_to_buffer(&results_buffer, 0, &staging_buffer, 0, staging_size);
|
||||
|
||||
queue.submit(Some(encoder.finish()));
|
||||
|
||||
|
|
@ -306,10 +294,7 @@ pub fn verify_theorems_on_gpu(
|
|||
if passed {
|
||||
eprintln!(" ✓ {} passed ({} vectors)", name, total);
|
||||
} else {
|
||||
eprintln!(
|
||||
" ✗ {} FAILED ({}/{} vectors failed)",
|
||||
name, failed, total
|
||||
);
|
||||
eprintln!(" ✗ {} FAILED ({}/{} vectors failed)", name, failed, total);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue