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

[wip] more perf data collection for jemalloc + rustc #55217

Closed

Conversation

alexcrichton
Copy link
Member

Filling in details on #36963 ...

@rust-highfive
Copy link
Collaborator

r? @cramertj

(rust_highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Oct 20, 2018
@alexcrichton
Copy link
Member Author

@bors: try

@alexcrichton
Copy link
Member Author

r? @alexcrichton

@bors
Copy link
Contributor

bors commented Oct 20, 2018

⌛ Trying commit 70437bd with merge 6073f1b...

bors added a commit that referenced this pull request Oct 20, 2018
[wip] more perf data collection for jemalloc + rustc

Filling in details on #36963 ...
@rust-highfive
Copy link
Collaborator

The job mingw-check of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:07:23] configure: build.locked-deps    := True
[00:07:23] configure: llvm.ccache          := sccache
[00:07:23] configure: build.openssl-static := True
[00:07:23] configure: dist.missing-tools   := True
[00:07:23] configure: build.configure-args := ['--enable-sccache', '--disable-manage-submodu ...
[00:07:23] configure: writing `config.toml` in current directory
[00:07:23] configure: 
[00:07:23] configure: run `python /checkout/x.py --help`
[00:07:23] configure: 
---
[00:09:26] --- stdout
[00:09:26] OPT_LEVEL = Some("2")
[00:09:26] TARGET = Some("i686-pc-windows-gnu")
[00:09:26] HOST = Some("x86_64-unknown-linux-gnu")
[00:09:26] CC_i686-pc-windows-gnu = Some("sccache i686-w64-mingw32-gcc")
[00:09:26] CFLAGS_i686-pc-windows-gnu = Some("-ffunction-sections -fdata-sections -m32 -fno-omit-frame-pointer")
[00:09:26] DEBUG = Some("false")
[00:09:26] running: "sh" "/cargo/registry/src/jackfan.us.kg-1ecc6299db9ec823/jemalloc-sys-0.1.4/jemalloc/configure" "--with-jemalloc-prefix=_rjem_" "--host=i686-pc-w64-mingw32" "--build=x86_64-unknown-linux-gnu" "--prefix=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/i686-pc-windows-gnu/release/build/jemalloc-sys-dbcfc730584ebc05/out"
[00:09:26] checking for xsltproc... false
[00:09:26] checking for i686-pc-w64-mingw32-gcc... i686-w64-mingw32-gcc
[00:09:26] checking for C compiler default output file name... a.exe
[00:09:26] checking for suffix of executables... .exe
[00:09:26] checking whether we are cross compiling... yes
[00:09:26] checking for suffix of object files... o
[00:09:26] checking for suffix of object files... o
[00:09:26] checking whether we are using the GNU C compiler... yes
[00:09:26] checking whether i686-w64-mingw32-gcc accepts -g... yes
[00:09:26] checking for i686-w64-mingw32-gcc option to accept ISO C89... none needed
[00:09:26] checking whether compiler is cray... no
[00:09:26] checking whether compiler supports -std=gnu11... yes
[00:09:26] checking whether compiler supports -Wall... yes
[00:09:26] checking whether compiler supports -Werror=declaration-after-statement... yes
[00:09:26] checking whether compiler supports -Wshorten-64-to-32... no
[00:09:26] checking whether compiler supports -Wsign-compare... yes
[00:09:26] checking whether compiler supports -g3... yes
[00:09:26] checking how to run the C preprocessor... i686-w64-mingw32-gcc -E
[00:09:26] checking for grep that handles long lines and -e... /bin/grep
[00:09:26] checking for egrep... /bin/grep -E
---
[00:09:26] checking for strings.h... yes
[00:09:26] checking for inttypes.h... yes
[00:09:26] checking for stdint.h... yes
[00:09:26] checking for unistd.h... yes
[00:09:26] checking whether byte ordering is bigendian... no
[00:09:26] checking size of void *... 4
[00:09:26] checking size of int... 4
[00:09:26] checking size of long... 4
[00:09:26] checking size of long long... 8
[00:09:26] checking size of intmax_t... 8
[00:09:26] checking host system type... 
[00:09:26] --- stderr
[00:09:26] --- stderr
[00:09:26] Invalid configuration `i686-pc-w64-mingw32': machine `i686-pc-w64' not recognized
[00:09:26] configure: error: /bin/bash /cargo/registry/src/jackfan.us.kg-1ecc6299db9ec823/jemalloc-sys-0.1.4/jemalloc/build-aux/config.sub i686-pc-w64-mingw32 failed
[00:09:26] thread 'main' panicked at 'command did not execute successfully: "sh" "/cargo/registry/src/jackfan.us.kg-1ecc6299db9ec823/jemalloc-sys-0.1.4/jemalloc/configure" "--with-jemalloc-prefix=_rjem_" "--host=i686-pc-w64-mingw32" "--build=x86_64-unknown-linux-gnu" "--prefix=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/i686-pc-windows-gnu/release/build/jemalloc-sys-dbcfc730584ebc05/out"
[00:09:26] expected success, got: exit code: 1', /cargo/registry/src/jackfan.us.kg-1ecc6299db9ec823/jemalloc-sys-0.1.4/build.rs:105:9
[00:09:26] 
[00:09:26] warning: build failed, waiting for other jobs to finish...
[00:09:27] error: build failed
[00:09:27] error: build failed
[00:09:27] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "check" "--target" "i686-pc-windows-gnu" "-j" "4" "--release" "--locked" "--color" "always" "--features" " jemalloc" "--manifest-path" "/checkout/src/rustc/Cargo.toml" "--message-format" "json"
[00:09:27] expected success, got: exit code: 101
[00:09:27] thread 'main' panicked at 'cargo must succeed', bootstrap/compile.rs:1115:9
[00:09:27] travis_fold:end:stage0-rustc

[00:09:27] travis_time:end:stage0-rustc:start=1540005358889866859,finish=1540005379684106728,duration=20794239869

---
travis_time:end:11800f50:start=1540005380369558572,finish=1540005380374163932,duration=4605360
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:09df4640
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb --batch -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:018050d2
travis_time:start:018050d2
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:096bd2bc
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@bors
Copy link
Contributor

bors commented Oct 20, 2018

☀️ Test successful - status-travis
State: approved= try=True

@@ -30,6 +30,8 @@

#![recursion_limit="256"]

extern crate jemalloc_sys;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be in libsyntax instead, so that rustc plugins don't use the system allocator?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In theory it should be ok here, but let's let the data find out!

@alexcrichton
Copy link
Member Author

@rust-timer build 6073f1b

@rust-timer
Copy link
Collaborator

Success: Queued 6073f1b with parent 42dde96, comparison URL.

@rust-timer
Copy link
Collaborator

Finished benchmarking try commit 6073f1b

@bjorn3
Copy link
Member

bjorn3 commented Oct 20, 2018

Four benchmarks -10%
One +9%
Most +1-2%

@alexcrichton alexcrichton force-pushed the alloc-system-and-jemalloc branch from 70437bd to 76afdbc Compare October 20, 2018 19:56
@alexcrichton
Copy link
Member Author

@bors: try

Oh I think I measured the wrong thing, that's the exact same as the previous profile

@bors
Copy link
Contributor

bors commented Oct 20, 2018

⌛ Trying commit 76afdbc with merge 10c95ccfa7a7adc12f4e608621ca29f9b98eed29...

@bors
Copy link
Contributor

bors commented Oct 20, 2018

☀️ Test successful - status-travis
State: approved= try=True

@alexcrichton
Copy link
Member Author

@rust-timer build 10c95ccfa7a7adc12f4e608621ca29f9b98eed29

@rust-timer
Copy link
Collaborator

Success: Queued 10c95ccfa7a7adc12f4e608621ca29f9b98eed29 with parent 22cc2ae, comparison URL.

@rust-timer
Copy link
Collaborator

Finished benchmarking try commit 10c95ccfa7a7adc12f4e608621ca29f9b98eed29

@alexcrichton
Copy link
Member Author

Now that's what I wanted to see. Gonna close this and will post a more official version soon.

@alexcrichton alexcrichton deleted the alloc-system-and-jemalloc branch October 21, 2018 01:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review Status: Awaiting review from the assignee but also interested parties.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants