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

Release v1 #337

Closed
asinghvi17 opened this issue Feb 15, 2020 · 17 comments
Closed

Release v1 #337

asinghvi17 opened this issue Feb 15, 2020 · 17 comments

Comments

@asinghvi17
Copy link
Contributor

@KristofferC @SimonDanisch is there a release schedule for the new version of PackageCompiler?

@KristofferC
Copy link
Member

I thought it could hang on master for a while to get people a chance to properly test it out. I don't see a reason not to release it though. No really known bugs (that is caused by PackageCompiler itself and are not upstream bugs) so I feel it is in a pretty decent shape.

@DilumAluthge
Copy link
Member

DilumAluthge commented Feb 16, 2020

It would be great to get a release out soon.

That being said, it would be ideal to fix #317 before making a release.

@DilumAluthge
Copy link
Member

@KristofferC Now that you’ve fixed #317, let’s make a release?

@KristofferC
Copy link
Member

KristofferC commented Feb 17, 2020

Yeah, I should write something short about the API being changed and how to use the old version if needed. I should also write a release post for discourse probably

@KristofferC
Copy link
Member

Let's release then?

@hhaensel
Copy link

hhaensel commented Feb 21, 2020

I followed the instructions of the Plots example and successfully compiled a dll on windows. However, when I use this dll in Atom/Juno all plots take approx. 2 seconds to display, while they display immediately with the default system image. (@time always gives <0.1s, so the problem is linked to atom. From a normal REPL, plotting is fast as usal).
I think that Gtk.jl is not involved in this delay. At least I don't receive compiler warnings. Any idea, why this is happening?
Otherwise: the new version is a great achievement, congratulations!

EDIT:
Windows 10, 64-bit
Atom 1.44.0

@KristofferC
Copy link
Member

You, mean that every plot is delayed in Juno? I tried it myself on a Mac and could not observe this happening.

@pfitzseb
Copy link
Member

pfitzseb commented Feb 21, 2020

HTML plots (e.g. with the plotly or plotlyjs backends) were pretty slow in Juno <0.12.1 (runtime, not compilation time). You could try with a different backend (e.g. GR) and/or upgrade Juno.

Edit: Oh, and the runtime overhead was in the display method, which isn't benchmarked by @time.

@DilumAluthge
Copy link
Member

Is this slowness still present if you use the REPL (instead of Atom/Juno)?

@hhaensel
Copy link

Thank you for answering so fast!
From the standalone REPL all is fine. Slowness only occurs if I use the newly compiled sysimage from the REPL within Atom/Juno or by executing a line in a file. If I start julia without --sysimage parameter from Atom/Juno all is fine as well.
I might be able to check on a different Windows PC tonight.

@DilumAluthge
Copy link
Member

DilumAluthge commented Feb 21, 2020

Perhaps it’s because Juno loads some of its own Julia packages that are invalidating some of the code in your sysimage.

If that is the case, then once Juno switches to vendoring all of their dependencies, then (if I understand correctly) the problem should be solved.

Either way, can you open a separate issue on this repo to track this problem? I don’t think this problem is blocking the release of 1.0.

@KristofferC
Copy link
Member

Perhaps it’s because Juno loads some of its own Julia packages that are invalidating some of the code in your sysimage.

This does lead to some slowdown for the first call but it shouldn't affect future calls.

@hhaensel
Copy link

Reproducible on a second Windows 10 machine.
It is slow every! call.
Note that the timing results are very normal in both cases!
for sys.dll:

julia> @time plot(rand(5),rand(5))
  0.001199 seconds (2.02 k allocations: 137.789 KiB)

for plots.dll

julia> @time plot(rand(5),rand(5))
  0.001240 seconds (2.11 k allocations: 140.695 KiB)

It is just a 2 seconds delay between execution and display.

@hhaensel
Copy link

I also wouldn't judge this bocking. If I don't find a clue, I will open another issue. Thanks for your comments anyhow!

@KristofferC
Copy link
Member

You could profile

p = plot(rand(5), rand(5)); @profile display(p)

@hhaensel
Copy link

Well, this did not change the behaviour and I must admit that I'm not that kind of an expert to understand how I could use this for further debugging :-(
What I did find out, though, is that calling

p = plot(rand(5), rand(5)); display(p)

displays the plot immediately but takes the 2 seconds to respond at the terminal. Similar, if I do

p = plot(rand(5), rand(5)); display(p);

nothing is displayed (as expected) but it takes 2 seconds until the terminal prompt is back.

@KristofferC
Copy link
Member

Released

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

No branches or pull requests

5 participants