Skip to content

Commit 1150c6f

Browse files
committed
improved diff with branch main
1 parent 1806f5a commit 1150c6f

24 files changed

Lines changed: 273 additions & 308 deletions

File tree

candle-core/Cargo.toml

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -33,21 +33,15 @@ safetensors = { workspace = true }
3333
thiserror = { workspace = true }
3434
yoke = { workspace = true }
3535
zip = { workspace = true }
36-
tracing = {workspace = true, optional = true, features = ["release_max_level_off"]}
3736

3837
#Wgpu Dependencies:
39-
wgpu = { workspace = true, optional = true}
40-
flume = { workspace = true, optional = true}
38+
#wgpu = { workspace = true, optional = true }
4139
bytemuck = { workspace = true, optional = true }
40+
tracing = {workspace = true, optional = true, features = ["release_max_level_off"]}
41+
4242
pollster = { workspace = true, optional = true }
43-
log = {workspace = true, optional = true}
44-
serde_json = { workspace = true, optional = true }
4543
candle-wgpu-kernels = { workspace = true, optional = true }
4644
wgpu-compute-layer = { workspace = true, optional = true }
47-
rustc-hash = {workspace = true, optional = true}
48-
#for wgpu_debug || wgpu_debug_serialize
49-
serde = { workspace = true, optional = true }
50-
5145

5246
[target.'cfg(all(not(target_arch = "wasm32"), not(target_os = "ios")))'.dependencies]
5347
candle-ug = { workspace = true, optional = true }
@@ -71,9 +65,23 @@ metal = [
7165
"candle-ug?/metal",
7266
]
7367
ug = ["dep:candle-ug"]
74-
wgpu = ["dep:wgpu", "dep:pollster", "dep:bytemuck", "dep:flume", "dep:candle-wgpu-kernels", "dep:log", "dep:tracing", "dep:rustc-hash", "dep:wgpu-compute-layer"]
75-
wgpu_debug = ["wgpu", "dep:serde", "dep:serde_json", "candle-wgpu-kernels/wgpu_debug_serialize", "wgpu-compute-layer/wgpu_debug"]
76-
wgpu_debug_serialize = ["wgpu", "dep:serde", "dep:serde_json", "candle-wgpu-kernels/wgpu_debug_serialize", "wgpu-compute-layer/wgpu_debug_serialize"]
68+
wgpu = [
69+
"dep:bytemuck",
70+
"dep:tracing",
71+
"dep:pollster",
72+
"dep:candle-wgpu-kernels",
73+
"dep:wgpu-compute-layer",
74+
]
75+
wgpu_debug = [
76+
"wgpu",
77+
"candle-wgpu-kernels/wgpu_debug_serialize",
78+
"wgpu-compute-layer/wgpu_debug",
79+
]
80+
wgpu_debug_serialize = [
81+
"wgpu",
82+
"candle-wgpu-kernels/wgpu_debug_serialize",
83+
"wgpu-compute-layer/wgpu_debug_serialize",
84+
]
7785

7886
[[bench]]
7987
name = "bench_main"

candle-core/benches/benchmarks/matmul_quantized.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,6 @@ fn test_matmul(
8484
use candle_core::wgpu::wgpu_functions::matmul::sgemm::GenericDynamicMatmulShaderSettings;
8585

8686
let mut run_bench = |func_name : String|{
87-
tracing::info!("TEST: {func_name}");
8887
if multiple_sizes {
8988
group.bench_with_input(
9089
BenchmarkId::new(func_name.clone(), size),

candle-core/benches/benchmarks/matmul_wgpu.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,14 +86,12 @@ fn test_matmul(
8686
if tpa { "_tranposedA" } else { "" },
8787
if tpb { "_tranposedB" } else { "" }
8888
));
89-
tracing::info!("TEST: {func_name}");
9089
if multiple_sizes {
9190
group.bench_with_input(
9291
BenchmarkId::new(func_name.clone(), size),
9392
&size,
9493
|b, _| {
9594
b.iter_custom(|iters| {
96-
tracing::info!("TEST_CUSTOM_ITER: {func_name}");
9795
let start = Instant::now();
9896
for _ in 0..iters {
9997
run(black_box(&lhs), black_box(&rhs));

candle-core/src/wgpu_backend/device.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ pub struct WgpuDevice {
2626
impl WgpuDevice {
2727
#[instrument]
2828
pub(crate) async fn create(
29-
index: usize,
29+
_index: usize,
3030
configuration: crate::WgpuDeviceConfig,
3131
) -> crate::Result<Self> {
3232
let device = wgpu_compute_layer::WgpuDevice::create_async(configuration.into()).await?;

candle-core/tests/convert_tests.rs

Lines changed: 0 additions & 46 deletions
This file was deleted.

candle-core/tests/layout_tests.rs

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -156,38 +156,3 @@ fn strided_blocks() -> Result<()> {
156156
};
157157
Ok(())
158158
}
159-
160-
fn layout(device: &Device) -> Result<()> {
161-
let rs: usize = 14;
162-
163-
let a: usize = 12;
164-
let b: usize = 13;
165-
166-
let data1 = Tensor::ones((1, b, a, rs), candle_core::DType::U32, &Device::Cpu)?;
167-
let data1 = data1.reshape((1, b, a, rs))?;
168-
let data2 = data1.to_device(device)?;
169-
170-
let index1 = data1.i((.., .., 3..6, ..4))?;
171-
let index2 = data2.i((.., .., 3..6, ..4))?;
172-
173-
let result1 = index1.reshape((b, 3, 4))?;
174-
let result2 = index2.reshape((b, 3, 4))?;
175-
176-
assert_eq!(result1.to_vec3::<u32>()?, result2.to_vec3::<u32>()?);
177-
178-
let copy1 = index1.copy()?;
179-
let copy2 = index2.copy()?;
180-
181-
let result1 = copy1.reshape((b, 3, 4))?;
182-
let result2 = copy2.reshape((b, 3, 4))?;
183-
184-
assert_eq!(result1.to_vec3::<u32>()?, result2.to_vec3::<u32>()?);
185-
186-
let result1 = index1.sum_all()?.to_vec0::<u32>()?;
187-
let result2 = index2.sum_all()?.to_vec0::<u32>()?;
188-
189-
assert_eq!(result1, result2);
190-
191-
Ok(())
192-
}
193-
test_device!(layout, layout_cpu, layout_gpu, layout_metal, layout_wgpu);

candle-core/tests/pool_tests.rs

Lines changed: 11 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -56,18 +56,26 @@ fn avg_pool2d_pytorch(dev: &Device) -> Result<()> {
5656
dev,
5757
)?
5858
.reshape((1, 2, 4, 4))?;
59+
let pool = t.avg_pool2d(2)?.squeeze(0)?;
60+
5961
if !dev.is_wgpu() {
60-
//-0.16055 rounds to -0.1605 for wgpu
61-
let pool = t.avg_pool2d(2)?.squeeze(0)?;
6262
assert_eq!(
6363
test_utils::to_vec3_round(&pool, 4)?,
6464
[
6565
[[-1.1926, -0.0395], [0.2688, 0.1871]],
6666
[[0.1835, -0.1606], [0.6249, 0.3217]]
6767
]
6868
);
69+
} else {
70+
//-0.16055 rounds to -0.1605 for wgpu
71+
assert_eq!(
72+
test_utils::to_vec3_round(&pool, 4)?,
73+
[
74+
[[-1.1926, -0.0395], [0.2688, 0.1871]],
75+
[[0.1835, -0.1605], [0.6249, 0.3217]]
76+
]
77+
);
6978
}
70-
7179
let pool = t.avg_pool2d(3)?.squeeze(0)?;
7280
assert_eq!(
7381
test_utils::to_vec3_round(&pool, 4)?,
@@ -105,14 +113,6 @@ fn upsample_nearest2d(dev: &Device) -> Result<()> {
105113
Ok(())
106114
}
107115

108-
fn upsample_nearest1d(dev: &Device) -> Result<()> {
109-
let t = Tensor::arange(0f32, 3f32, dev)?.reshape((1, 1, 3))?;
110-
let upsampled = t.upsample_nearest1d(6)?.i(0)?.i(0)?;
111-
assert_eq!(t.i(0)?.i(0)?.to_vec1::<f32>()?, [0.0, 1.0, 2.0]);
112-
assert_eq!(upsampled.to_vec1::<f32>()?, [0.0, 0.0, 1.0, 1.0, 2.0, 2.0],);
113-
Ok(())
114-
}
115-
116116
test_device!(
117117
avg_pool2d,
118118
avg_pool2d_cpu,
@@ -134,15 +134,6 @@ test_device!(
134134
max_pool2d_metal,
135135
max_pool2d_wgpu
136136
);
137-
138-
test_device!(
139-
upsample_nearest1d,
140-
upsample_nearest1d_cpu,
141-
upsample_nearest1d_gpu,
142-
upsample_nearest1d_metal,
143-
upsample_nearest1d_wgpu
144-
);
145-
146137
test_device!(
147138
upsample_nearest2d,
148139
upsample_nearest2d_cpu,

candle-examples/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ bindgen_cuda = { version = "0.1.5", optional = true }
6464
hf-hub = { workspace = true, features = ["tokio"] }
6565

6666
[features]
67+
default = []
6768
accelerate = [
6869
"dep:accelerate-src",
6970
"candle/accelerate",
@@ -96,7 +97,6 @@ wgpu_debug = ["wgpu", "candle/wgpu_debug"]
9697
depth_anything_v2 = ["palette", "enterpolation"]
9798
tekken = ["tekken-rs"]
9899
buildtime-download = []
99-
default = []
100100

101101
[[example]]
102102
name = "llama_multiprocess"

candle-examples/examples/clip/main.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ extern crate intel_mkl_src;
44
#[cfg(feature = "accelerate")]
55
extern crate accelerate_src;
66

7-
use std::time::Instant;
8-
97
use anyhow::Error as E;
108
use clap::Parser;
119

@@ -82,7 +80,6 @@ pub fn main() -> anyhow::Result<()> {
8280
let tokenizer = get_tokenizer(args.tokenizer)?;
8381
let config = clip::ClipConfig::vit_base_patch32();
8482
let device = candle_examples::device(args.cpu)?;
85-
let start = Instant::now();
8683
let vec_imgs = match args.images {
8784
Some(imgs) => imgs,
8885
None => vec![
@@ -114,7 +111,6 @@ pub fn main() -> anyhow::Result<()> {
114111
println!("Probability: {:.4}% Text: {} ", p, vec_seq[i]);
115112
}
116113
}
117-
println!("Total Duration: {:?}", Instant::now().duration_since(start));
118114
Ok(())
119115
}
120116

candle-examples/examples/llama2-c/main.rs

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -369,17 +369,6 @@ fn run_inference(args: &InferenceCmd, common_args: &Args) -> Result<()> {
369369
print!("{rest}");
370370
}
371371
let dt = start_gen.elapsed();
372-
373-
#[cfg(feature = "wgpu_debug")]
374-
{
375-
device
376-
.as_wgpu_device()
377-
.unwrap().inner_device()
378-
.log_debuginfo_to_file("", "llama2c", "after_fix_shaders")?;
379-
// Example:
380-
// log_debuginfo_to_file("", "llama2c", "5.0")?;
381-
}
382-
383372
println!(
384373
"\n{} tokens generated ({:.2} token/s)\n",
385374
tokens.len(),

0 commit comments

Comments
 (0)