# Very slow time to first plot, 2022

**URL:** <https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968>\
**Category:** General Usage\
**Tags:** ttfp\
**Created:** [October 19, 2022, 2:57pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968 "2022-10-19T14:57:07Z")\
**Posts on this page:** 13\
**Page:** 4

<div class="post-metadata">

**Author:** ![rongcuid](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rongcuid/32/42911_2.png) [@rongcuid](https://discourse.julialang.org/u/rongcuid)\
**Post date:** [October 21, 2022, 2:55pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/61 "2022-10-21T14:55:44Z")

</div>

Is it possible to see which sysimage is loaded in an active REPL session? I am unsure if VSCode is really loading that image which took 15 minutes to build…

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [October 21, 2022, 3:04pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/62 "2022-10-21T15:04:18Z")

</div>

You could follow the example from the docs here:

[https://julialang.github.io/PackageCompiler.jl/dev/sysimages.html](https://julialang.github.io/PackageCompiler.jl/dev/sysimages.html)

```julia
❯ julia -q -JExampleSysimage.so

julia> Base.loaded_modules
Dict{Base.PkgId,Module} with 34 entries:
...
  Example [7876af07-990d-54b4-ab0e-23690620f79a] => Example
...

```

(where in the example the `Example` package was included in the sysimage)

---

<div class="post-metadata">

**Author:** ![dlakelan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dlakelan/32/8491_2.png) [@dlakelan](https://discourse.julialang.org/u/dlakelan)\
**Post date:** [October 21, 2022, 3:10pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/63 "2022-10-21T15:10:06Z")

</div>

You do need to go into the vs code plug-in settings and check the checkbox that tells it to look for the sys image and load it there’s a discussion of this in the docs somewhere

---

<div class="post-metadata">

**Author:** ![rongcuid](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rongcuid/32/42911_2.png) [@rongcuid](https://discourse.julialang.org/u/rongcuid)\
**Post date:** [October 21, 2022, 3:11pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/64 "2022-10-21T15:11:30Z")

</div>

Ah that makes sense

---

<div class="post-metadata">

**Author:** ![RaulDurand](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rauldurand/32/2044_2.png) [@RaulDurand](https://discourse.julialang.org/u/RaulDurand)\
**Post date:** [May 6, 2023, 5:29pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/65 "2023-05-06T17:29:40Z")

</div>

According to the NEWS file in Julia 1.9, loading times are going to improve a lot:

> - Time to first execution (TTFX, sometimes called time to first plot) is greatly reduced. Package precompilation now saves native code into a “pkgimage”, meaning that code generated during the precompilation process will not require compilation after package load. Use of pkgimages can be disabled via `--pkgimages=no` ([#44527](https://github.com/JuliaLang/julia/issues/44527)) ([#47184](https://github.com/JuliaLang/julia/issues/47184)).  
> [https://github.com/JuliaLang/julia/blob/v1.9.0-rc3/NEWS.md](https://github.com/JuliaLang/julia/blob/v1.9.0-rc3/NEWS.md)

Is Makie going to benefit from it?  
Does anyone know when Julia 1.9 will be released?

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [May 6, 2023, 5:44pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/66 "2023-05-06T17:44:36Z")

</div>

> [@RaulDurand](#):
>
> Is Makie going to benefit from it?

Yes.

> [@RaulDurand](#):
>
> Does anyone know when Julia 1.9 will be released?

No.

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [May 6, 2023, 5:48pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/67 "2023-05-06T17:48:49Z")

</div>

> [@RaulDurand](#):
>
> Does anyone know when Julia 1.9 will be released?

You can start using now, though (I think many people already did). In particular, if you install Julia with `juliaup`, it is very easy to keep the latest release candidate of 1.9 and any other julia version you are using installed simultaneously.

---

<div class="post-metadata">

**Author:** ![isaacsas](https://avatars.discourse-cdn.com/v4/letter/i/f6c823/32.png) [@isaacsas](https://discourse.julialang.org/u/isaacsas)\
**Post date:** [May 6, 2023, 8:10pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/68 "2023-05-06T20:10:28Z")

</div>

I’ve been using all the 1.9 rcs. I’ve seen nothing in my normal day to day use that makes the latest 1.9rcs feel less robust than a normal release, and have already switched to using them full time.

---

<div class="post-metadata">

**Author:** ![TheLateKronos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/thelatekronos/32/12824_2.png) [@TheLateKronos](https://discourse.julialang.org/u/TheLateKronos)\
**Post date:** [May 6, 2023, 11:24pm UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/69 "2023-05-06T23:24:29Z")

</div>

> [@lmiq](#):
>
> I think many people already did

I can confirm that for the first time, I am using the release candidates in daily usage to get the improved TTFX.

---

<div class="post-metadata">

**Author:** ![RaulDurand](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rauldurand/32/2044_2.png) [@RaulDurand](https://discourse.julialang.org/u/RaulDurand)\
**Post date:** [May 8, 2023, 12:55am UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/70 "2023-05-08T00:55:35Z")

</div>

I installed 1.9 rc3 but still got slow TTFP: Around 6 seconds to load CairoMakie and around 5 seconds for the first plot.  
Anyway, I noticed a big improvement in the package loading time which was more than 20 seconds.

---

<div class="post-metadata">

**Author:** ![TheLateKronos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/thelatekronos/32/12824_2.png) [@TheLateKronos](https://discourse.julialang.org/u/TheLateKronos)\
**Post date:** [May 8, 2023, 7:39am UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/71 "2023-05-08T07:39:22Z")

</div>

> [@RaulDurand](#):
>
> still got slow TTFP: Around 6 seconds to load CairoMakie and around 5 seconds for the first plot.

I know that these times are long compared to many other programming languages, so it is honestly fair to call it slow. It is hower a quite MASSIVE improvement of previous timings for Makie in particular, so it feels fast to me. Funny how relative “fast” is…

---

<div class="post-metadata">

**Author:** ![mcreel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mcreel/32/30088_2.png) [@mcreel](https://discourse.julialang.org/u/mcreel)\
**Post date:** [May 8, 2023, 9:25am UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/72 "2023-05-08T09:25:58Z")

</div>

The TTFX issue is pretty well discussed. When X=“simple interactive activity, like plotting some data”, Julia will probably never be as fast as some alternatives. When X=“meaningful, moderately complex numerical computations”, Julia is already competitive with best of the best.

Regarding 1.9, I bet it’s out “real soon now”.

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [May 8, 2023, 10:08am UTC](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968/73 "2023-05-08T10:08:17Z")

</div>

> [@mcreel](#):
>
> Regarding 1.9, I bet it’s out “real soon now

You might be right 😉

> **[Release v1.9.0 · JuliaLang/julia](https://github.com/JuliaLang/julia/releases/tag/v1.9.0)**
>
> This is Julia version 1.9.0, the ninth minor release in the 1.x series of releases.
> Release notes: https://github.com/JuliaLang/julia/tree/v1.9.0/NEWS.md

[Previous page](https://discourse.julialang.org/t/very-slow-time-to-first-plot-2022/88968.md?page=3)
