Stream: t-compiler/wg-polonius

Topic: meeting 2019.05.28


nikomatsakis (May 28 2019 at 19:00, on Zulip):

Should we discuss today, @WG-polonius ?

lokalmatador (May 28 2019 at 19:01, on Zulip):

hm, maybe briefly regarding fact generation

lokalmatador (May 28 2019 at 19:01, on Zulip):

and hi!

nikomatsakis (May 28 2019 at 19:01, on Zulip):

Hi :)

nikomatsakis (May 28 2019 at 19:01, on Zulip):

What about fact generation in particular?

lokalmatador (May 28 2019 at 19:02, on Zulip):

so what I did for now is adding those profiling directives and this seems to work

nikomatsakis (May 28 2019 at 19:02, on Zulip):

Yeah, great!

lokalmatador (May 28 2019 at 19:02, on Zulip):

grep finds my output in the files

lokalmatador (May 28 2019 at 19:02, on Zulip):

buuuut, measureme - or more precisely - the within contained summarize tool seems to have an issue reading the generated profile events

Albin Stjerna (May 28 2019 at 19:03, on Zulip):

Hi!

lokalmatador (May 28 2019 at 19:03, on Zulip):

but I already contacted @Wesley Wiser and filed an issue

nikomatsakis (May 28 2019 at 19:03, on Zulip):

yep

lokalmatador (May 28 2019 at 19:04, on Zulip):

so yeah, that's it for now...but coming back to polonius fact generation: is it just the NLL stuff or is there more going on?

lokalmatador (May 28 2019 at 19:04, on Zulip):

that needs to be considered?

nikomatsakis (May 28 2019 at 19:04, on Zulip):

i.e., if we wanted a "more complete profile"?

Albin Stjerna (May 28 2019 at 19:05, on Zulip):

Ah, you mean splitting the fact generation as a separate step of the profile?

nikomatsakis (May 28 2019 at 19:05, on Zulip):

I don't think it would be very easy to "isolate out" the polonius fact generation from other bits of NLL

nikomatsakis (May 28 2019 at 19:05, on Zulip):

or rather, the NLL has a kind of "warm up" phase where it computes various constraints

lokalmatador (May 28 2019 at 19:05, on Zulip):

yeah, if there's anything on the list, why not take care of it immediately

nikomatsakis (May 28 2019 at 19:05, on Zulip):

that code generates polonius facts but also generates the constraints in other forms that the existing NLL solver uses

Albin Stjerna (May 28 2019 at 19:05, on Zulip):

I agree, they seem to be very closely tied together

nikomatsakis (May 28 2019 at 19:05, on Zulip):

still, it is probably a good idea to measure that "overall fact generation" time

nikomatsakis (May 28 2019 at 19:06, on Zulip):

but I'd prefer to separate it

Albin Stjerna (May 28 2019 at 19:06, on Zulip):

Can/should I do anything while working on those parts to make that easier?

lokalmatador (May 28 2019 at 19:06, on Zulip):

ok, then I'll see what I can do...

nikomatsakis (May 28 2019 at 19:06, on Zulip):

still, I wouldn't call it max importance

nikomatsakis (May 28 2019 at 19:06, on Zulip):

I guess it depends on how blocked you are by the measureme bugs :)

Albin Stjerna (May 28 2019 at 19:07, on Zulip):

I guess the thing I'd love to have for my thesis later is some sort of comparison of solve time between Polonius and NLL

nikomatsakis (May 28 2019 at 19:07, on Zulip):

I think it'd be more interesting to take the "pure polonius" number -- I suspect that the "fact generation" time will be (largely) proportional -- and try to break it down per function, per test

nikomatsakis (May 28 2019 at 19:07, on Zulip):

as well as maybe trying to correlate it with the size of the input fact vectors

lokalmatador (May 28 2019 at 19:07, on Zulip):

I guess the thing I'd love to have for my thesis later is some sort of comparison of solve time between Polonius and NLL

that I plan to address, i.e., generate profiling data for both, polonius and NLL

lokalmatador (May 28 2019 at 19:09, on Zulip):

I think it'd be more interesting to take the "pure polonius" number -- I suspect that the "fact generation" time will be (largely) proportional -- and try to break it down per function, per test

added to my todo list

nikomatsakis (May 28 2019 at 19:09, on Zulip):

Basically our meta goal was to find more interesting benchmarks -- and I think the code we're most interested in measuring is that polonius execution code

Albin Stjerna (May 28 2019 at 19:09, on Zulip):

I guess we find out if it's interesting or not once we have measured it

nikomatsakis (May 28 2019 at 19:09, on Zulip):

once we get that setup, we can tinker with things like whether or not to include the fact generation time

nikomatsakis (May 28 2019 at 19:10, on Zulip):

that said, yes, I think maybe the "most complete" thing to do would be to measure someting like

then we can infer (e.g.) the "non-polonius" part by subtracting from the total

nikomatsakis (May 28 2019 at 19:11, on Zulip):

So @Albin Stjerna -- sounded like the next steps for you would be to try and land some of the liveness work, and to plan out the initialization analysis

nikomatsakis (May 28 2019 at 19:11, on Zulip):

I guess I should check out our dropbox paper

Albin Stjerna (May 28 2019 at 19:12, on Zulip):

So Albin Stjerna -- sounded like the next steps for you would be to try and land some of the liveness work, and to plan out the initialization analysis

Yep, that's the next step I think

Albin Stjerna (May 28 2019 at 19:13, on Zulip):

I guess we should start with Polonius, and then rustc

nikomatsakis (May 28 2019 at 19:13, on Zulip):

Yeah

Albin Stjerna (May 28 2019 at 19:13, on Zulip):

But I think liveness works, it just doesn't work exactly like region_live_at from rustc yet

nikomatsakis (May 28 2019 at 19:13, on Zulip):

(I guess @lqd is not here today, right?)

Albin Stjerna (May 28 2019 at 19:13, on Zulip):

They were travelling I think?

nikomatsakis (May 28 2019 at 19:14, on Zulip):

But I think liveness works, it just doesn't work exactly like region_live_at from rustc yet

And we believe this is because we are not yet taking the initialization into account, right?

Albin Stjerna (May 28 2019 at 19:14, on Zulip):

Are?

Albin Stjerna (May 28 2019 at 19:14, on Zulip):

(How singular is singular they?)

lqd (May 28 2019 at 19:15, on Zulip):

(Indeed I am traveling :beach: :)

nikomatsakis (May 28 2019 at 19:15, on Zulip):

(How singular is singular they?)

it's not :)

nikomatsakis (May 28 2019 at 19:17, on Zulip):

Anyway, so @Albin Stjerna perhaps we can schedule a time to chat about the initialization stuff? I'm thinking maybe sometime tomorrow or Thu? I'm not sure what your schedule is like

Albin Stjerna (May 28 2019 at 19:18, on Zulip):

Anyway, so Albin Stjerna perhaps we can schedule a time to chat about the initialization stuff? I'm thinking maybe sometime tomorrow or Thu? I'm not sure what your schedule is like

That sounds great, yes! I'd prefer Thursday, but tomorrow works as well

nikomatsakis (May 28 2019 at 19:19, on Zulip):

Are you available at 12:00 or 13:00 (UTC-04:00)? (18:00, 19:00 CET)

Albin Stjerna (May 28 2019 at 19:19, on Zulip):

I already put my calendar in EST heh

nikomatsakis (May 28 2019 at 19:20, on Zulip):

lol

Albin Stjerna (May 28 2019 at 19:20, on Zulip):

Almost getting used to this

nikomatsakis (May 28 2019 at 19:20, on Zulip):

I still want the Zulip feature to put dates/times in local time zone

Albin Stjerna (May 28 2019 at 19:21, on Zulip):

(I have a literal recurring event for Melbourne bedtime at this point)

Albin Stjerna (May 28 2019 at 19:21, on Zulip):

OK, so yes!

Albin Stjerna (May 28 2019 at 19:22, on Zulip):

@nikomatsakis I would prefer 12 to 13 (EST), but both work!

Albin Stjerna (May 28 2019 at 19:22, on Zulip):

Both Wednesday and Thursday

nikomatsakis (May 28 2019 at 19:23, on Zulip):

OK.

nikomatsakis (May 28 2019 at 19:23, on Zulip):

Created a calendar event

nikomatsakis (May 28 2019 at 19:23, on Zulip):

I'll theoretically do some preparation :) but maybe we'll just discuss it on the fly

nikomatsakis (May 28 2019 at 19:23, on Zulip):

Anyway, if you can send me some links to PRs that need to be merged, would be great

nikomatsakis (May 28 2019 at 19:23, on Zulip):

:)

Albin Stjerna (May 28 2019 at 19:23, on Zulip):

I'll do some preparation as well

Albin Stjerna (May 28 2019 at 19:24, on Zulip):

Sure! Do I version-bump Polonius as well?

nikomatsakis (May 28 2019 at 19:27, on Zulip):

yeah

Albin Stjerna (May 28 2019 at 19:31, on Zulip):

Ok! I'll tell you when I'm ready!

Albin Stjerna (May 28 2019 at 19:45, on Zulip):

@nikomatsakis Ok, I think I've version-bumped everything in polonius#105, if it passes its checks it should be ready for merge

Albin Stjerna (May 28 2019 at 19:46, on Zulip):

I'll do rustc tomorrow

lqd (Jun 03 2019 at 17:36, on Zulip):

posted this meeting's minutes here

lqd (Jun 03 2019 at 17:43, on Zulip):

(as I only experienced the meeting reading it after the fact, I tried to be more precise this time (but should do so all the time) and I hope I didn't make mistakes)

lqd (Jun 03 2019 at 19:06, on Zulip):

(mistakes other than my spelling of "segue" as "segway" of course :upside_down:)

Albin Stjerna (Jun 03 2019 at 20:51, on Zulip):

@lqd Thank you, I'll have a look at them!

Albin Stjerna (Jun 04 2019 at 14:24, on Zulip):

@lqd Looks good!

lqd (Jun 04 2019 at 14:24, on Zulip):

thanks for looking

Last update: Nov 15 2019 at 20:05UTC