Search
Sunday, 19th of January 2020, 5:33:29 UTC
6:13:24
beach
Good morning everyone!
14:39:09
drmeister
Martin: I'm getting a 2.5-3.7x speed improvement with the new parallel compiler. But there are problems.
14:39:48
drmeister
I'm using the LLVM ORCV2 in a way that the ORCV2 designers didn't intend and it doesn't work on linux at the moment.
16:36:22
cracauer
I still don't know why Linux cboehm is so much slower.
16:37:21
cracauer
I check exception handling. Throwing an exception is 150 x slower than not throwing it.
16:37:57
cracauer
But it isn't different on OSX, Linux and FreeBSD.
16:38:23
cracauer
Although, there is a difference here in that OSX and FreeBSD have llvm as the default compiler, Linux has gcc.
16:38:41
cracauer
Is it possible that build_cboehm uses a lot of C++ compiled with gcc?
16:38:55
drmeister
So FreeBSD compiles faster than Linux?
16:39:08
cracauer
(not that throwing exceptions in gcc is flower than in clang, but this is a real difference)
16:39:53
cracauer
Yes, FreeBSD and OSX, for build_cboehm, are about the same time, and Linux is 3x.
16:40:09
cracauer
Can also be seen on buildbot versus your mac.
16:40:48
cracauer
(the end of a buildbot log has the individiual step times)
16:42:06
drmeister
https://www.irccloud.com/pastebin/0jz8HVuC/
16:43:01
drmeister
These are the ones to focus on first:
16:43:02
drmeister
https://www.irccloud.com/pastebin/X9ogHna7/
16:44:06
cracauer
Yes. And the third one is so huge in Linux.
16:44:19
drmeister
Ok, I see. 16min26sec for aboehm, 3min28sec for bboehm and 1hour 41min 19sec for cboehm.
16:44:36
drmeister
What are the times for macOS or FreeBSD?
16:44:36
cracauer
yes, and that is 33 minutes on FreeBSD
16:44:57
cracauer
for mac you probably have better times than me.
16:55:16
cracauer
I think you are around 30 minutes as well.
17:17:49
drmeister
I'm just talking with Lang Hames on llvm
17:20:27
drmeister
cracauer: Are you able to get a clasp up on macOS and linux at the same time and time some code?
17:20:41
drmeister
We are looking to time non-local exits.
17:21:29
drmeister
(defun nonloc () (tagbody (funcall (lambda () (go done))) done))
17:21:56
drmeister
time increasing numbers of those until it starts taking significant time.
17:28:57
cracauer
Most of my boxes are currently building the fixed tree. Will be an hour or so.
17:30:13
drmeister
Do this within bclasp: ./iclasp-boehm -t b
17:32:09
drmeister
What we are looking at is bclasp running cclasp and compiling cclasp - so the runtime is bclasp and it relies on non-local exits a lot more than cclasp does I believe.
17:32:59
drmeister
We might be able to track down what non-local exits are causing the problem and rearrange the code to avoid them.
Sunday, 19th of January 2020, 17:33:29 UTC