add workspace handling, cleanups
diff --git a/enzyme/benchmarks/ReverseMode/adbench/gmm.h b/enzyme/benchmarks/ReverseMode/adbench/gmm.h index 35f4423..d994a6e 100644 --- a/enzyme/benchmarks/ReverseMode/adbench/gmm.h +++ b/enzyme/benchmarks/ReverseMode/adbench/gmm.h
@@ -268,7 +268,7 @@ struct GMMOutput result = { 0, std::vector<double>(Jcols) }; - if (0) { + if (1) { try { struct timeval start, end; gettimeofday(&start, NULL); @@ -350,7 +350,7 @@ test_suite["tools"].push_back(enzyme); } } - + { struct GMMInput input;
diff --git a/enzyme/benchmarks/ReverseMode/adbench/lstm.h b/enzyme/benchmarks/ReverseMode/adbench/lstm.h index 80452b4..0648b66 100644 --- a/enzyme/benchmarks/ReverseMode/adbench/lstm.h +++ b/enzyme/benchmarks/ReverseMode/adbench/lstm.h
@@ -245,7 +245,7 @@ std::vector<std::string> paths = { "lstm_l2_c1024.txt", "lstm_l4_c1024.txt", "lstm_l2_c4096.txt", "lstm_l4_c4096.txt" }; //std::vector<std::string> paths = { "lstm_l4_c4096.txt" }; - + std::ofstream jsonfile("results.json", std::ofstream::trunc); json test_results; @@ -289,7 +289,7 @@ } - if (0){ + if (1){ struct LSTMInput input = {}; @@ -385,7 +385,7 @@ enzyme["result"].push_back(result.gradient[i]); } test_suite["tools"].push_back(enzyme); - + printf("\n"); } } @@ -418,7 +418,7 @@ enzyme["result"].push_back(result.gradient[i]); } test_suite["tools"].push_back(enzyme); - + printf("\n"); }
diff --git a/enzyme/benchmarks/ReverseMode/ba/Cargo.toml b/enzyme/benchmarks/ReverseMode/ba/Cargo.toml index 4bc9c21..9f57737 100644 --- a/enzyme/benchmarks/ReverseMode/ba/Cargo.toml +++ b/enzyme/benchmarks/ReverseMode/ba/Cargo.toml
@@ -21,3 +21,5 @@ [dependencies] libm = { version = "0.2.8", optional = true } + +[workspace]
diff --git a/enzyme/benchmarks/ReverseMode/ba/Makefile.make b/enzyme/benchmarks/ReverseMode/ba/Makefile.make index cec8d4b..c6182c0 100644 --- a/enzyme/benchmarks/ReverseMode/ba/Makefile.make +++ b/enzyme/benchmarks/ReverseMode/ba/Makefile.make
@@ -1,4 +1,4 @@ -# RUN: cd %S && LD_LIBRARY_PATH="%bldpath:$LD_LIBRARY_PATH" PTR="%ptr" BENCH="%bench" BENCHLINK="%blink" LOAD="%loadEnzyme" LOADCLANG="%loadClangEnzyme" ENZYME="%enzyme" make -B ba-raw.ll results.json -f %s +# RUN: cd %S && LD_LIBRARY_PATH="%bldpath:$LD_LIBRARY_PATH" PTR="%ptr" BENCH="%bench" BENCHLINK="%blink" LOAD="%loadEnzyme" LOADCLANG="%loadClangEnzyme" ENZYME="%enzyme" make -B results.json -f %s .PHONY: clean
diff --git a/enzyme/benchmarks/ReverseMode/fft/Cargo.toml b/enzyme/benchmarks/ReverseMode/fft/Cargo.toml index cf8862d..630506d 100644 --- a/enzyme/benchmarks/ReverseMode/fft/Cargo.toml +++ b/enzyme/benchmarks/ReverseMode/fft/Cargo.toml
@@ -20,3 +20,5 @@ [profile.dev] lto = "fat" + +[workspace]
diff --git a/enzyme/benchmarks/ReverseMode/gmm/Cargo.toml b/enzyme/benchmarks/ReverseMode/gmm/Cargo.toml index 1ae0273..eaaf749 100644 --- a/enzyme/benchmarks/ReverseMode/gmm/Cargo.toml +++ b/enzyme/benchmarks/ReverseMode/gmm/Cargo.toml
@@ -24,3 +24,5 @@ [dependencies] libm = { version = "0.2.8", optional = true } + +[workspace]
diff --git a/enzyme/benchmarks/ReverseMode/gmm/src/safe.rs b/enzyme/benchmarks/ReverseMode/gmm/src/safe.rs index 9356b11..e365246 100644 --- a/enzyme/benchmarks/ReverseMode/gmm/src/safe.rs +++ b/enzyme/benchmarks/ReverseMode/gmm/src/safe.rs
@@ -19,9 +19,9 @@ #[no_mangle] pub extern "C" fn rust_dgmm_objective( - d: i32, - k: i32, - n: i32, + d: usize, + k: usize, + n: usize, alphas: *const f64, dalphas: *mut f64, means: *const f64, @@ -33,9 +33,6 @@ err: *mut f64, derr: *mut f64, ) { - let k = k as usize; - let n = n as usize; - let d = d as usize; let alphas = unsafe { std::slice::from_raw_parts(alphas, k) }; let means = unsafe { std::slice::from_raw_parts(means, k * d) }; let icf = unsafe { std::slice::from_raw_parts(icf, k * d * (d + 1) / 2) }; @@ -85,9 +82,9 @@ #[no_mangle] pub extern "C" fn rust_gmm_objective( - d: i32, - k: i32, - n: i32, + d: usize, + k: usize, + n: usize, alphas: *const f64, means: *const f64, icf: *const f64, @@ -95,9 +92,6 @@ wishart: *const Wishart, err: *mut f64, ) { - let k = k as usize; - let n = n as usize; - let d = d as usize; let alphas = unsafe { std::slice::from_raw_parts(alphas, k) }; let means = unsafe { std::slice::from_raw_parts(means, k * d) }; let icf = unsafe { std::slice::from_raw_parts(icf, k * d * (d + 1) / 2) };
diff --git a/enzyme/benchmarks/ReverseMode/lstm/Cargo.toml b/enzyme/benchmarks/ReverseMode/lstm/Cargo.toml index d28f845..0b5fd98 100644 --- a/enzyme/benchmarks/ReverseMode/lstm/Cargo.toml +++ b/enzyme/benchmarks/ReverseMode/lstm/Cargo.toml
@@ -20,3 +20,5 @@ [profile.dev] lto = "fat" + +[workspace]
diff --git a/enzyme/benchmarks/ReverseMode/lstm/Makefile.make b/enzyme/benchmarks/ReverseMode/lstm/Makefile.make index 71c6f5b..65a1e93 100644 --- a/enzyme/benchmarks/ReverseMode/lstm/Makefile.make +++ b/enzyme/benchmarks/ReverseMode/lstm/Makefile.make
@@ -1,4 +1,4 @@ -# RUN: cd %S && LD_LIBRARY_PATH="%bldpath:$LD_LIBRARY_PATH" PTR="%ptr" BENCH="%bench" BENCHLINK="%blink" LOAD="%loadEnzyme" LOADCLANG="%loadClangEnzyme" ENZYME="%enzyme" make -B lstm-raw.ll results.json -f %s +# RUN: cd %S && LD_LIBRARY_PATH="%bldpath:$LD_LIBRARY_PATH" PTR="%ptr" BENCH="%bench" BENCHLINK="%blink" LOAD="%loadEnzyme" LOADCLANG="%loadClangEnzyme" ENZYME="%enzyme" make -B results.json -f %s .PHONY: clean @@ -41,7 +41,6 @@ lstm.o: lstm-opt.ll $(dir)/benchmarks/ReverseMode/lstm/target/release/liblstm.a $(CLANG) -pthread -O3 $^ -o $@ $(BENCHLINK) -lm - #$(CLANG) -pthread -O3 -fno-math-errno $^ -o $@ $(BENCHLINK) -lm results.json: lstm.o numactl -C 1 ./$^
diff --git a/enzyme/benchmarks/ReverseMode/ode-real/Cargo.toml b/enzyme/benchmarks/ReverseMode/ode-real/Cargo.toml index b7386a4..96952f9 100644 --- a/enzyme/benchmarks/ReverseMode/ode-real/Cargo.toml +++ b/enzyme/benchmarks/ReverseMode/ode-real/Cargo.toml
@@ -20,3 +20,5 @@ [profile.dev] lto = "fat" + +[workspace]
diff --git a/enzyme/benchmarks/ReverseMode/ode-real/Makefile.make b/enzyme/benchmarks/ReverseMode/ode-real/Makefile.make index 582ba79..4f48409 100644 --- a/enzyme/benchmarks/ReverseMode/ode-real/Makefile.make +++ b/enzyme/benchmarks/ReverseMode/ode-real/Makefile.make
@@ -1,4 +1,4 @@ -# RUN: cd %S && LD_LIBRARY_PATH="%bldpath:$LD_LIBRARY_PATH" PTR="%ptr" BENCH="%bench" BENCHLINK="%blink" LOAD="%loadEnzyme" ENZYME="%enzyme" make -B ode-raw.ll ode-opt.ll results.json VERBOSE=1 -f %s +# RUN: cd %S && LD_LIBRARY_PATH="%bldpath:$LD_LIBRARY_PATH" PTR="%ptr" BENCH="%bench" BENCHLINK="%blink" LOAD="%loadEnzyme" ENZYME="%enzyme" make -B results.json VERBOSE=1 -f %s .PHONY: clean