4个版本
使用旧Rust 2015
0.2.2 | 2019年10月29日 |
---|---|
0.2.1 | 2019年10月29日 |
0.2.0 | 2019年10月29日 |
0.1.0 | 2019年10月24日 |
#49 in #gpgpu
13KB
141 行
此crate旨在使在小型项目中使用vulkano
更加快速和简单。
示例
use geyser::Cryo;
// Instantiate vulkano
let cryo = Cryo::new();
// Create compute pipeline
let pipeline = compute_pipeline!(
inst,
src: "
#version 450
layout(set = 0, binding = 0) buffer Data {
uint data[];
} buf;
void main() {
uint idx = gl_GlobalInvocationID.x;
buf.data[idx] = idx * 12;
}
");
// Create buffer
let buf = cryo.buffer_from_data(vec![0; 69]).expect("Failed to create buffer");
// Create descriptor set
let set = descriptor_set!([buf], pipeline);
// Dispatch
cryo.dispatch([69, 1, 1], pipeline.clone(), set.clone());
// Display the results
buf.read().expect("Failed to read from buffer")
.iter().enumerate().for_each(|(i, x)| println!("Index: {} equals: {}", i, *x));
依赖项
~35MB
~764K SLoC