Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

llvm: begin the journey of independence from llvm #16430

Merged
merged 17 commits into from
Jul 20, 2023

Conversation

jacobly0
Copy link
Member

These changes don't accomplish anything concrete quite yet, but they do vastly reduce the amount of information flowing across the ABI boundary from LLVM to the Zig compiler.

src/main.zig Outdated Show resolved Hide resolved
src/main.zig Outdated Show resolved Hide resolved
@jacobly0 jacobly0 marked this pull request as ready for review July 20, 2023 06:45
@andrewrk
Copy link
Member

Nice work getting this to a mergeable point. Changes look great.

@andrewrk andrewrk merged commit 3f15010 into ziglang:master Jul 20, 2023
10 checks passed
@andrewrk
Copy link
Member

Perf data point:

Benchmark 1 (3 runs): before/bin/zig build-exe --stack 33554432 /home/andy/Downloads/zig/src/main.zig --cache-dir /home/andy/Downloads/zig/zig-cache --global-cache-dir /home/andy/.cache/zig --name zig --mod build_options::/home/andy/Downloads/zig/zig-cache/c/ecc8358ae8fa382c4a1d0b2cb9404f45/options.zig --deps build_options
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          57.3s  ± 1.73s     55.3s  … 58.5s           0 ( 0%)        0%
  peak_rss           3.47GB ±  277KB    3.47GB … 3.47GB          0 ( 0%)        0%
  cpu_cycles          230G  ± 1.27G      229G  …  232G           0 ( 0%)        0%
  instructions        333G  ± 67.3M      333G  …  333G           0 ( 0%)        0%
  cache_references   13.3G  ± 93.2M     13.3G  … 13.4G           0 ( 0%)        0%
  cache_misses       1.04G  ± 18.9M     1.02G  … 1.06G           0 ( 0%)        0%
  branch_misses      1.60G  ± 1.26M     1.60G  … 1.60G           0 ( 0%)        0%
Benchmark 2 (3 runs): after/bin/zig build-exe --stack 33554432 /home/andy/Downloads/zig/src/main.zig --cache-dir /home/andy/Downloads/zig/zig-cache --global-cache-dir /home/andy/.cache/zig --name zig --mod build_options::/home/andy/Downloads/zig/zig-cache/c/ecc8358ae8fa382c4a1d0b2cb9404f45/options.zig --deps build_options
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          57.5s  ± 21.8ms    57.5s  … 57.5s           0 ( 0%)          +  0.3% ±  4.8%
  peak_rss           3.81GB ± 30.8MB    3.79GB … 3.84GB          0 ( 0%)        💩+  9.6% ±  1.4%
  cpu_cycles          237G  ± 1.19G      236G  …  238G           0 ( 0%)        💩+  2.8% ±  1.2%
  instructions        342G  ± 1.85G      341G  …  344G           0 ( 0%)        💩+  2.9% ±  0.9%
  cache_references   13.6G  ± 65.4M     13.6G  … 13.7G           0 ( 0%)          +  2.3% ±  1.4%
  cache_misses       1.08G  ± 4.94M     1.08G  … 1.09G           0 ( 0%)        💩+  4.5% ±  3.0%
  branch_misses      1.63G  ± 11.4M     1.63G  … 1.65G           0 ( 0%)        💩+  2.2% ±  1.1%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants