flow-pacmap 0.1.2

PaCMAP dimensionality reduction (Wang et al. 2021) for large-n flow cytometry — faer PCA, optional HNSW and k-d tree KNN
Documentation
   Compiling proc-macro2 v1.0.107
   Compiling unicode-ident v1.0.24
   Compiling quote v1.0.47
   Compiling serde_core v1.0.229
   Compiling libm v0.2.16
   Compiling autocfg v1.5.1
   Compiling cfg-if v1.0.4
   Compiling libc v0.2.189
   Compiling zerocopy v0.8.55
   Compiling crossbeam-utils v0.8.22
   Compiling version_check v0.9.5
   Compiling once_cell v1.21.4
   Compiling serde v1.0.229
   Compiling cfg_aliases v0.2.2
   Compiling memchr v2.8.3
   Compiling paste v1.0.15
   Compiling log v0.4.33
   Compiling thiserror v2.0.19
   Compiling foldhash v0.2.0
   Compiling equivalent v1.0.2
   Compiling ident_case v1.0.1
   Compiling num-traits v0.2.19
   Compiling allocator-api2 v0.2.21
   Compiling parking_lot_core v0.9.12
   Compiling pin-project-lite v0.2.17
   Compiling zmij v1.0.23
   Compiling objc2 v0.6.4
   Compiling rand_core v0.6.4
   Compiling scopeguard v1.2.0
   Compiling serde_json v1.0.151
   Compiling lock_api v0.4.14
   Compiling rand v0.8.7
   Compiling objc2-encode v4.1.0
   Compiling unicode-segmentation v1.13.3
   Compiling unicode-xid v0.2.6
   Compiling itoa v1.0.18
   Compiling aho-corasick v1.1.4
   Compiling convert_case v0.10.0
   Compiling getrandom v0.4.3
   Compiling rand_core v0.10.1
   Compiling regex-syntax v0.8.11
   Compiling fnv v1.0.7
   Compiling strsim v0.11.1
   Compiling parking v2.2.1
   Compiling adler2 v2.0.1
   Compiling simd-adler32 v0.3.10
   Compiling portable-atomic v1.14.0
   Compiling object v0.37.3
   Compiling bitflags v2.13.1
   Compiling hashbrown v0.16.1
   Compiling miniz_oxide v0.8.9
   Compiling chacha20 v0.10.1
   Compiling syn v2.0.119
   Compiling syn v3.0.3
   Compiling regex-automata v0.4.16
   Compiling ahash v0.8.12
   Compiling naga v29.0.4
   Compiling unicode-width v0.2.0
   Compiling futures-core v0.3.33
   Compiling winnow v1.0.4
   Compiling ash v0.38.0+1.3.281
   Compiling bit-vec v0.9.1 (/Users/kfls271/Rust/flow-crates/third_party/bit-vec)
   Compiling option-ext v0.2.0
   Compiling objc2-core-foundation v0.3.2
   Compiling block2 v0.6.2
   Compiling hashbrown v0.17.1
   Compiling gimli v0.32.3
   Compiling bit-set v0.9.1
   Compiling dirs-sys v0.5.0
   Compiling toml_parser v1.1.2+spec-1.1.0
   Compiling codespan-reporting v0.13.1
   Compiling rand v0.10.2
   Compiling ordered-float v5.3.0
   Compiling indexmap v2.14.0
   Compiling darling_core v0.23.0
   Compiling darling_core v0.21.3
   Compiling regex v1.13.1
   Compiling objc2-foundation v0.3.2
   Compiling addr2line v0.25.1
   Compiling spirv v0.4.0+sdk-1.4.341.0
   Compiling toml_datetime v1.1.1+spec-1.1.0
   Compiling serde_derive v1.0.229
   Compiling thiserror-impl v2.0.19
   Compiling serde_spanned v1.1.1
   Compiling concurrent-queue v2.5.0
   Compiling bytemuck_derive v1.11.0
   Compiling zerocopy-derive v0.8.55
   Compiling derive_more-impl v2.1.1
   Compiling derive-new v0.7.0
   Compiling nom v8.0.0
   Compiling cubecl-common v0.10.0
   Compiling libloading v0.8.9
   Compiling arrayvec v0.7.8
   Compiling hexf-parse v0.2.1
   Compiling toml_writer v1.1.2+spec-1.1.0
   Compiling objc2-metal v0.3.2
   Compiling futures-io v0.3.33
   Compiling darling_macro v0.23.0
   Compiling darling_macro v0.21.3
   Compiling raw-window-handle v0.6.2
   Compiling fastrand v2.5.0
   Compiling rustc-demangle v0.1.28
   Compiling foldhash v0.1.5
   Compiling prettyplease v0.2.37
   Compiling litrs v1.0.0
   Compiling rustc-hash v1.1.0
   Compiling hashbrown v0.15.5
   Compiling bytemuck v1.25.2
   Compiling futures-lite v2.6.1
   Compiling backtrace v0.3.76
   Compiling tynm v0.2.0
   Compiling toml v1.1.3+spec-1.1.0
   Compiling document-features v0.2.12
   Compiling darling v0.21.3
   Compiling darling v0.23.0
   Compiling num-complex v0.4.6
   Compiling wgpu-types v29.0.4
   Compiling event-listener v5.4.1
   Compiling sanitize-filename v0.6.0
   Compiling dirs v6.0.0
   Compiling smallvec v1.15.2
   Compiling gpu-descriptor-types v0.2.0
   Compiling serde_bytes v0.11.19
   Compiling enumset_derive v0.15.0
   Compiling wgpu-hal v29.0.4
   Compiling presser v0.3.1
   Compiling derive_more v2.1.1
   Compiling bytes v1.12.1
   Compiling crossbeam-epoch v0.9.20
   Compiling spin v0.10.1
   Compiling objc2-quartz-core v0.3.2
   Compiling xxhash-rust v0.8.18
   Compiling oneshot v0.2.1
   Compiling half v2.7.1
   Compiling parking_lot v0.12.5
   Compiling embassy-futures v0.1.2
   Compiling float4 v0.2.0
   Compiling web-time v1.1.0
   Compiling raw-window-metal v1.1.0
   Compiling gpu-descriptor v0.3.2
   Compiling float8 v0.7.0
   Compiling enumset v1.1.14
   Compiling cubecl-macros-internal v0.10.0
   Compiling event-listener-strategy v0.5.4
   Compiling variadics_please v1.1.0
   Compiling cubecl-runtime v0.10.0
   Compiling float-ord v0.3.2
   Compiling renderdoc-sys v1.1.0
   Compiling crossbeam-deque v0.8.7
   Compiling cubecl-macros v0.10.0
   Compiling profiling v1.0.18
   Compiling async-channel v2.5.0
   Compiling cubecl-zspace v0.10.0
   Compiling wgpu-core v29.0.4
   Compiling inflections v1.1.1
   Compiling md5 v0.8.1
   Compiling wgpu v29.0.4
   Compiling shlex v2.0.1
   Compiling gpu-allocator v0.28.0
   Compiling rayon-core v1.13.0
   Compiling find-msvc-tools v0.1.9
   Compiling reborrow v0.5.5
   Compiling either v1.16.0
   Compiling cubecl-wgpu v0.10.0
   Compiling static_assertions v1.1.0
   Compiling heck v0.5.0
   Compiling cubecl v0.10.0
   Compiling thiserror v1.0.69
   Compiling dyn-stack-macros v0.1.3
   Compiling cc v1.3.0
   Compiling thiserror-impl v1.0.69
   Compiling byteorder v1.5.0
   Compiling raw-cpuid v11.6.0
   Compiling seq-macro v0.3.6
   Compiling enum-as-inner v0.6.1
   Compiling nano-gemm-codegen v0.1.0
   Compiling cubecl-ir v0.10.0
   Compiling pulp v0.21.5
   Compiling nano-gemm-codegen v0.2.1
   Compiling pulp v0.22.3
   Compiling wgpu-naga-bridge v29.0.4
   Compiling ucd-trie v0.1.7
   Compiling getrandom v0.3.4
   Compiling pulp-wasm-simd-flag v0.1.1
   Compiling equator-macro v0.4.2
   Compiling rand_distr v0.6.0
   Compiling dyn-stack v0.13.2
   Compiling nano-gemm-core v0.1.0
   Compiling pest v2.8.8
   Compiling ppv-lite86 v0.2.21
   Compiling rayon v1.12.0
   Compiling equator-macro v0.2.1
   Compiling num-integer v0.1.46
   Compiling utf8parse v0.2.2
   Compiling anstyle-parse v1.0.0
   Compiling num-bigint v0.4.8
   Compiling equator v0.4.2
   Compiling link-cplusplus v1.0.12
   Compiling nano-gemm-f64 v0.1.0
   Compiling sysctl v0.6.0
   Compiling pest_meta v2.8.8
   Compiling equator v0.2.2
   Compiling nano-gemm-c32 v0.1.0
   Compiling rand_core v0.9.5
   Compiling pest_generator v2.8.8
   Compiling nano-gemm-c64 v0.1.0
   Compiling nano-gemm-f32 v0.1.0
   Compiling crossbeam-channel v0.5.16
   Compiling crossbeam-queue v0.3.13
   Compiling scratch v1.0.9
   Compiling crc32fast v1.5.0
   Compiling colorchoice v1.0.5
   Compiling rand_chacha v0.9.0
   Compiling wgpu-core-deps-apple v29.0.4
   Compiling anstyle-query v1.1.5
   Compiling anstyle v1.0.14
   Compiling rustversion v1.0.23
   Compiling gemm-common v0.18.2
   Compiling pest_derive v2.8.8
   Compiling is_terminal_polyfill v1.70.2
   Compiling generativity v1.2.1
   Compiling rand v0.9.5
   Compiling gemm-common v0.19.0
   Compiling crossbeam v0.8.4
   Compiling anstream v1.0.0
   Compiling nano-gemm-core v0.2.1
   Compiling clap_lex v1.1.0
   Compiling cxxbridge-flags v1.0.198
   Compiling termcolor v1.4.1
   Compiling atomic-wait v1.1.0
   Compiling gemm-c64 v0.18.2
   Compiling gemm-c32 v0.18.2
   Compiling cxx v1.0.198
   Compiling spindle v0.2.6
   Compiling gemm-f64 v0.18.2
   Compiling clap_builder v4.6.2
   Compiling gemm-f32 v0.18.2
   Compiling rand_distr v0.5.1
   Compiling py_literal v0.4.0
   Compiling npyz v0.8.4
   Compiling qd v0.7.7
   Compiling numkong v7.7.1
   Compiling clap_derive v4.6.4
   Compiling faer-macros v0.22.1
   Compiling cubecl-core v0.10.0
   Compiling rmp v0.8.15
   Compiling tracing-core v0.1.36
   Compiling colored v3.1.1
   Compiling unty v0.0.4
   Compiling bincode v2.0.1
   Compiling faer-traits v0.23.2
   Compiling nano-gemm v0.1.3
   Compiling rmp-serde v1.3.1
   Compiling generator v0.8.9
   Compiling clap v4.6.4
   Compiling gemm v0.18.2
   Compiling cxx-build v1.0.198
   Compiling flate2 v1.1.9
   Compiling nano-gemm-c32 v0.2.1
   Compiling nano-gemm-f64 v0.2.1
   Compiling nano-gemm-c64 v0.2.1
   Compiling nano-gemm-f32 v0.2.1
   Compiling hashbrown v0.13.2
   Compiling burn-derive v0.21.0
   Compiling partition v0.1.2
   Compiling data-encoding v2.11.0
   Compiling uuid v1.24.0
   Compiling arbitrary-chunks v0.4.1
   Compiling lazy_static v1.5.0
   Compiling fixed v1.29.0
   Compiling cubecl-std v0.10.0
   Compiling sharded-slab v0.1.7
   Compiling rdst v0.20.14
   Compiling usearch v2.26.0
   Compiling text_placeholder v0.5.1
   Compiling faer v0.23.2
   Compiling tracing-log v0.2.0
   Compiling cxxbridge-macro v1.0.198
   Compiling wide v1.5.0
   Compiling tracing-attributes v0.1.31
   Compiling approx v0.5.1
   Compiling thread_local v1.1.10
   Compiling fixedbitset v0.5.7
   Compiling az v1.3.0
   Compiling thousands v0.2.0
   Compiling typenum v1.20.1
   Compiling rustc-hash v2.1.3
   Compiling nu-ansi-term v0.50.3
   Compiling gemm-f64 v0.19.0
   Compiling tracing-subscriber v0.3.23
   Compiling gemm-c64 v0.19.0
   Compiling tracing v0.1.44
   Compiling gemm-c32 v0.19.0
   Compiling gemm-f32 v0.19.0
   Compiling qd v0.8.0
   Compiling aligned-vec v0.6.4
   Compiling alloca v0.4.0
   Compiling array-init v2.1.0
   Compiling sorted-vec v0.8.11
   Compiling burn-std v0.21.0
   Compiling cubek-std v0.2.0
   Compiling cubek-quant v0.2.0
   Compiling cubek-fft v0.2.0
   Compiling cubek-random v0.2.0
   Compiling plotters-backend v0.3.7
   Compiling equator-macro v0.6.0
   Compiling ciborium-io v0.2.2
   Compiling divrem v1.0.0
   Compiling cmov v0.5.4
   Compiling burn-backend v0.21.0
   Compiling equator v0.6.0
   Compiling ciborium-ll v0.2.2
   Compiling plotters-svg v0.3.7
   Compiling nano-gemm v0.2.2
   Compiling gemm v0.19.0
   Compiling kiddo v5.3.2
   Compiling faer-traits v0.24.0
   Compiling itertools v0.13.0
   Compiling same-file v1.0.6
   Compiling cast v0.3.0
   Compiling ciborium v0.2.2
   Compiling walkdir v2.5.0
   Compiling plotters v0.3.7
   Compiling tinytemplate v1.2.1
   Compiling cubek-matmul v0.2.0
   Compiling cubek-reduce v0.2.0
   Compiling faer v0.24.4
   Compiling page_size v0.6.0
   Compiling anes v0.1.6
   Compiling criterion-plot v0.8.2
   Compiling oorandom v11.1.5
   Compiling oxicuda-manifold v0.5.1
   Compiling burn-tensor v0.21.0
   Compiling burn-ir v0.21.0
   Compiling criterion v0.8.2
   Compiling burn-core v0.21.0
   Compiling cubek-attention v0.2.0
   Compiling cubek-convolution v0.2.0
   Compiling burn-optim v0.21.0
   Compiling burn-nn v0.21.0
   Compiling cubek v0.2.0
   Compiling burn-cubecl v0.21.0
   Compiling ann-search-rs v0.4.4
   Compiling manifolds-rs v0.3.9
   Compiling burn-wgpu v0.21.0
   Compiling burn v0.21.0
   Compiling flow-knn v0.1.0 (/Users/kfls271/Rust/flow-crates/flow-knn)
   Compiling flow-pacmap v0.1.1 (/Users/kfls271/Rust/flow-crates/flow-pacmap)
    Finished `bench` profile [optimized] target(s) in 7m 57s
     Running benches/pacmap_optimize_gpu.rs (/var/folders/44/mj5sgh7n5h146_61ng7w39q00000gp/T/cursor-sandbox-cache/4684fce0055a65ccfde625614c8a1b45/cargo-target/release/deps/pacmap_optimize_gpu-e5de30282fbf1812)
Gnuplot not found, using plotters backend
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n10000_d10
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n10000_d10: Warming up for 1.0000 s

Warning: Unable to complete 10 samples in 30.0s. You may wish to increase target time to 34.9s.
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n10000_d10: Collecting 10 samples in estimated 34.866 s (10 iterations)
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n10000_d10: Analyzing
pacmap_optimize_cpu_vs_gpu/cpu/n10000_d10
                        time:   [1.3248 s 1.8266 s 2.3594 s]
                        thrpt:  [4.2383 Kelem/s 5.4748 Kelem/s 7.5481 Kelem/s]
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n10000_d10
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n10000_d10: Warming up for 1.0000 s
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n10000_d10: Collecting 10 samples in estimated 39.968 s (110 iterations)
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n10000_d10: Analyzing
pacmap_optimize_cpu_vs_gpu/gpu/n10000_d10
                        time:   [318.97 ms 443.70 ms 506.13 ms]
                        thrpt:  [19.758 Kelem/s 22.538 Kelem/s 31.351 Kelem/s]
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n50000_d10
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n50000_d10: Warming up for 1.0000 s
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n50000_d10: Collecting 10 samples in estimated 46.433 s (20 iterations)
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n50000_d10: Analyzing
pacmap_optimize_cpu_vs_gpu/cpu/n50000_d10
                        time:   [6.1222 s 9.4872 s 12.868 s]
                        thrpt:  [3.8856 Kelem/s 5.2703 Kelem/s 8.1670 Kelem/s]
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n50000_d10
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n50000_d10: Warming up for 1.0000 s
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n50000_d10: Collecting 10 samples in estimated 45.986 s (110 iterations)
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n50000_d10: Analyzing
pacmap_optimize_cpu_vs_gpu/gpu/n50000_d10
                        time:   [818.92 ms 1.0866 s 1.3773 s]
                        thrpt:  [36.302 Kelem/s 46.015 Kelem/s 61.056 Kelem/s]
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n100000_d15
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n100000_d15: Warming up for 1.0000 s

Warning: Unable to complete 10 samples in 30.0s. You may wish to increase target time to 37.1s.
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n100000_d15: Collecting 10 samples in estimated 37.053 s (10 iterations)
Benchmarking pacmap_optimize_cpu_vs_gpu/cpu/n100000_d15: Analyzing
pacmap_optimize_cpu_vs_gpu/cpu/n100000_d15
                        time:   [9.4525 s 14.894 s 20.414 s]
                        thrpt:  [4.8987 Kelem/s 6.7143 Kelem/s 10.579 Kelem/s]
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n100000_d15
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n100000_d15: Warming up for 1.0000 s
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n100000_d15: Collecting 10 samples in estimated 45.326 s (20 iterations)
Benchmarking pacmap_optimize_cpu_vs_gpu/gpu/n100000_d15: Analyzing
pacmap_optimize_cpu_vs_gpu/gpu/n100000_d15
                        time:   [1.3770 s 2.1071 s 2.8492 s]
                        thrpt:  [35.098 Kelem/s 47.459 Kelem/s 72.621 Kelem/s]

PACMAP_ZC_EXIT:0