00:44 vendethiel joined 01:30 vendethiel joined 02:26 vendethiel joined 03:15 vendethiel joined 03:26 colomon joined 03:39 vendethiel joined 04:03 vendethiel joined 04:27 vendethiel joined 05:18 vendethiel joined 05:50 vendethiel joined 06:23 vendethiel joined 06:49 vendethiel joined 06:59 domidumont joined 07:04 domidumont joined 07:28 FROGGS joined 07:42 vendethiel joined 07:54 zakharyas joined 08:08 vendethiel joined 08:11 Ven joined 08:23 Hotkeys left 08:34 vendethiel joined 08:39 zakharyas joined 09:00 vendethiel joined 09:11 leont joined 09:34 zakharyas joined 09:36 brrt joined
brrt hmm.. anybody got a good idea for presentation software? 09:42
i tried to use libreoffice present.. and was dissapointed
jnthn powerpoint? :D 09:44
brrt hmmmm.... yeah 09:45
i suppose
jnthn It can be used to do great evil :)
brrt that would mean i have to login a university computer over citrix, such a drag :-P
although i did look at beamer and was not terribly happy
jnthn But can also be used fairly well :)
brrt yeah, i suppose 09:46
do you use powerpoint ususally?
jnthn Yeah :)
brrt do you use comic sans? i know it is heresy, but i actually find comic sans to be more readable than otherfonts
jnthn No :P 09:47
Do you? :)
I heard it should only be used for really important things, like announcing discovery of sub-atomic particles and stuff.
brrt i thought about it but last time i decided against it due to not wanting to start a flamewar
or at any cause distraction 09:48
i think so too :-)
*case
09:49 vendethiel joined
arnsholt brrt: I'm a beamer user meself 10:08
But LaTeX is more a question of problems I prefer over problems with Office, rather than objectively better 10:09
brrt i think most of the themes are really too cluttered? 10:10
but ymmv
jnthn My Perl 6 intro course from SPW was done with Bemaer, fwiw 10:11
As was the Rakudo and NQP Internals course
Though in both cases markdown was used and translated by pandoc
brrt ah
what is pandoc?
jnthn A program that translates between different document formats
In this case, markdown => latex 10:12
brrt aha....
well.. ain't that something
i have my slide outlines already in markdown as it happens :-)
jnthn Anyway, the Rakudo/NQP internals course has the build scripts we use
(in the repo) 10:13
arnsholt Oh, themes can be fixed though =)
brrt cool. thanks :-)
well, the thing is, i don't care :-) 10:14
or rather
arnsholt Yeah, fixing them can be a bit of a hassle
brrt fixing beamer themes or presentation software in general is very far down in the list of my life priorities :-)
arnsholt Yeah, definitely 10:15
I've got a decent theme you can use, but it's super sparse, mind 10:16
brrt well, i kind of like sparse :-) 10:18
arnsholt This is an example: heim.ifi.uio.no/~arnskj/inf1820/v16..._intro.pdf 10:19
Text in Norwegian, though =)
brrt doesn't look too bad, although perhaps still a bit ornamentish for my preferences 10:21
arnsholt Then there's always the default beamer theme 10:22
It's just text, IIRC 10:23
brrt fwiw, i recall changing the dynasm protocol to https because git:// was not supported as $thesis-institute
(dynasm git url protocol) 10:24
i am not of a mind to change that to support some lowest-common-denominator
more to the point, all submodules use https:// as their checkout protocol 10:25
if rakudobrew and others want to support other git protocols, i suggest that they edit the .gitmodules file before running Configure.pl
10:28 virtualsue joined
jnthn Editing the gitconfig after git submodules init is run may be more robust 10:28
brrt hmmm 10:32
maybe
i think it is rather fringe, really
if you're not allowed to connect to https due to company policy... well...
jnthn: thanks, i'm so going to reuse those tools :-) 10:34
jnthn :-) 10:38
10:43 vendethiel joined
timotimo brrt: you know, libreoffice present has something pretty darn cool that i haven't seen in other programs yet ... at least not FOSS ones 11:03
which is a presenter tool for smart phones that connects via bluetooth and gives you a preview of the next slide or your notes on your smartphone and also a handy "laser pointer" tool for your fingertip
on the other hand, presenting slides with "impressive" (yes, terrible name to search for) is very neat
jnthn ooh :)
timotimo and there's always that javascript thingie that people tend to use nowadays 11:05
11:05 vendethiel joined
timotimo reveal.js maybe? 11:05
lab.hakim.se/reveal-js/#/ - that's the one i was thinking about
looks like it's very suited for the "few as-big-as-possible words on screen" type of presentation. which yours probably isn't :) 11:06
arnsholt: your presentation talks about "Faget"s? o_O
jnthn Faget about it... 11:07
11:09 virtualsue joined
arnsholt timotimo: course-DET.N.SG =) 11:36
timotimo the what now?
11:37 Ven joined
brrt timotimo: i didnt know about that 11:39
how does that work
timotimo which exactly? reveal.js?
brrt the libreoffice present bit 11:40
timotimo oh
brrt also reveal.js
but it requires a web browser i presume?
timotimo i've only used the presenter thingie once before and that was like 2 years ago
yes, a browser
brrt hmmm 11:41
i'm all for the minimum-work-possible fwiw
:-)
timotimo you know how thinkpads still come with VGA ports? 11:42
how is it, then, that lenovo smartphones don't?
just something to think about
arnsholt timotimo: "the course" a single word, inflected for definite singular 11:43
timotimo oh
that's what "faget" means?
jnthn Yeah, Scandinavian languages seem to inflect the definite article (while leaving the indefintie one in the "normal" place :)) 11:44
brrt lol
(the VGA ports bit)
timotimo wouldn't that be cool, though? :P 11:48
the whole "use your phone as a workstation if need be" idea was kinda cool, but nothing really did it well yet, as far as i can tell 11:49
there's tablets with covers that double as keyboards. those seem to do okay
but phones? no, not yet
brrt hmmm 11:50
my guess is that bluetooth is to energy-consuming / low-bandwidth to serve for display purposes 11:51
timotimo yeah, you'd rather use wifi-direct for that
which is what miracast and WiDi are
brrt and that displayed-workspace is the limiting factor for phone-as-workspace
timotimo and of course there's microusb-to-hdmi adapters 11:52
brrt anyway, when you do that, you're going to run into the 2000mAh limit quite fast
timotimo ideally with a few extra ports for extra peripherals beyond mouse and keyboard
right. but if you're already setting your phone up as the center of a display + a mouse and keyboard, you're kind of likely to have a wall socket nearby
i hope :) 11:53
brrt i dunno if usb-c uses considerably less energy than bluetooth. moreover it will end with a): people having to carry another dongle to connect all of them, b): your phone's battery will have to power the whole thing
well, if we're going that way, why not just a chromecast-sized stick that you plug into a monitor / tv-with-hdmi
i'd carry that 11:54
for my regular office-ish tasks
timotimo hehehe
well, hmdi + USB usually
usb for power 11:55
i don't think HDMI has power at all?
beyond what's in there by accident/neccessity
brrt aye... rather a missed opportunity imho 11:58
timotimo usb-3c supposedly can do display-y stuff just fine 11:59
i wouldn't mind being able to connect everything and their dog with usb-3c in the future
jnthn lols at the result of googling "usb dog" 12:00
timotimo oh, the little humping dog? :D 12:01
jnthn yes :) 12:02
12:05 zakharyas joined
FROGGS *g* 12:12
12:16 vendethiel joined
timotimo thet weet i sent out about lenovo smartphones with vga ports is seeing some approval from my internet friends on twitter %) 12:36
13:05 vendethiel joined 13:41 Ven joined 13:51 vendethiel joined 14:27 flaviusb joined 14:49 vendethiel joined 15:29 vendethiel joined 16:39 vendethiel joined 16:42 domidumont joined 17:33 vendethiel joined 18:09 Ven joined, Hotkeys joined 18:49 vendethiel joined 18:55 FROGGS joined 19:04 zakharyas joined
timotimo so, just debugspam in MVM_malloc gives a surprising amount of allocations of 8 bytes for the fixedsizealloc 20:03
jnthn o.O 20:04
timotimo that's the result of sizeof(void *) * al->size_classes[bin].num_pages
i'm just logging backtraces for all mallocs smaller than 32bytes 20:05
jnthn Aha 20:06
timotimo and line before that is num_pages = 1 20:08
so, no surprise there
jnthn It should only be one per size class though?
timotimo aye, but i see surprisingly many of those. i don't have a scientific base fo rthat feeling, though 20:12
the most annoying thing, of course, is that gdb forces me to use a pager for output 20:21
i must be able to redirect this to a file for analysis or so
geekosaur can't you run valgrind/memcheck in a verbose mode? 20:22
hm, guess that makes it harder to do the "smaller than 32 bytes" part 20:23
maybe "script" is your friend
20:24 dalek joined
timotimo i just breakpointed MVM_malloc with gdb 20:34
a very big amount comes - unsurprisingly - from decoding latin1 strings 20:48
deserialize_repr_data for p6opaque often makes extremely small allocs, not quite surprisingly 20:53
deserialize_object also does a metric shit-ton of allocations of 24 bytes 21:00
jnthn Which one?
If you have a decent report on where they come from I'd be interested :)
timotimo i'm hoping gdb is actually outputting this to a file, as i told it to 21:07
then i'd be able to post-process somehow
the pager is seriously atrocious 21:10
AARRRGGGHHH 21:16
1) i forgot to "set logging on"
2) i still get the pager's prompts to "press return to continue"
and i have to return through the whole f'ing output
(none of which i get to see) 21:17
but at least the pager prompts don't end up in the file (hopefully) 21:18
No: GDB doesn't call into external program to display the output, it simply pauses the output every screenfull (and you can make it not pause by set height 0).
<3
of course it refused to actually write the file 21:39
it seems like
21:47 Ven joined
timotimo this time i seem to have made it work 22:04
t.h8.lv/all_small_mallocs.txt.gz
if you want to have a look
it's only "bt 3", though. dunno if that sometimes causes problems 22:05
i have no good idea how to analyze this 22:09
i could just sum up 32 - $size or something
1068663 22:24
81672 22:25
that's 1) the sum of 32 - $foo for all size lines
and 2) the number of allocations counted
64M is the amount of maxrss this thing occupies 22:26
there's apparently only 1 megabyte of wastage from these mallocs alone
however, there's also 16 bytes for every allocation, i think
m: (1068663 + 81672 * 16) / (64996 * 1024) 22:28
camelia rakudo-moar 86a90b: OUTPUTĀ«WARNINGS for /tmp/yDouXgJByP:ā¤Useless use of "/" in expression "(1068663 + 81672 * 16) / (64996 * 1024)" in sink context (line 1)ā¤Ā»
timotimo m: say (1068663 + 81672 * 16) / (64996 * 1024)
camelia rakudo-moar 86a90b: OUTPUTĀ«0.035690523ā¤Ā»
timotimo 3.5% even when adding the 16 byte big headers that i seem to recall from somewhere
probably extremely sloppily measured, too. 22:29
the analysis script is faster than 1 megabyte per second 22:31
so that's something
now for a little histogram of all mallocs 22:35
hoelzro sloppy makes for a good start =)
timotimo 47742 alloc: 24 22:36
15229 alloc: 288
12515 alloc: 48
10339 alloc: 104
9334 alloc: 8
8276 alloc: 16
8043 alloc: 56
5977 alloc: 72
5250 alloc: 32
3759 alloc: 100
3674 alloc: 2
hoelzro that 47k of 24s - that's the deserialize code, I take it?
timotimo i think so, yes 22:37
hoelzro it would be cool if you could group them by REPR
timotimo now i'd love to know how much ram in total is nommed by NFAs having the list + the nfa object itself in the serialized blob
hoelzro is this the kind of thing that integrating valgrind can tell you? 22:38
timotimo i don't think so
hoelzro it would be great if we had this tooling enabled with certain build flags, so we don't have to build it over and over again
timotimo i can't identify those perfectly
like, these arrays don't say "i belong to an NFA", except that they get deserialized temporally close by a NFA object 22:39
hoelzro ahhh
timotimo also, this is only malloc, not free. 22:40
i don't track that at all in my measurements yet
hoelzro if you had a backtrace of where every malloc was called, could you use that to determine whether it's an NFA array?
timotimo no 22:41
the backtrace is currently C-level
hoelzro ahhhh
I...C what you mean
timotimo i'm not sure a moarvm-bytecode-level stacktrace would be better, actually
hoelzro </sunglasses> 22:42
timotimo hah
do you want to take this idea and run with it?
is the day just starting on your end of the globe?
hoelzro my work day is ending =) 22:43
timotimo oh
even better! :)
hoelzro sadly, I have a lot of coursera work to catch up on tonight =/
timotimo my sleep-day is coming up
ah, okay
hoelzro heh, really? I feel like you often go to sleep around the time I do =P
timotimo sometimes. but not always
hoelzro timotimo: you wanna push your stuff up to a branch, in case I get bored with coursera? =P 22:44
timotimo i don't have "stuff" yet ;)
this last bit was literally
full-speed
hoelzro I told myself I would work on fixing rakudo-j, or on my RT canary script
timotimo er
fprintf(stderr, "alloc: %d\n", size);
in src/core/alloc.h
and then 2> all_mallocs_ever.txt and then cat | sort | uniq -c | sort -n 22:45
hoelzro nice
timotimo the other thing was starting it in gdb, and then:
break MVM_malloc if (size < 32)
commands
print size
bt 3
c
end
set height 0
set logging (lots of stuff)
AND GO!
perl6 -ne 'state $foo; state $bar; next unless $_.starts-with("\$"); $foo += $_.split(" ")[2]; $bar++; END { say $foo; say $bar }' all_small_mallocs.txt 22:46
that works against the .txt i put up on my web host, see above
hoelzro ah ha
so how does that gdb bit differ from your fprintf in alloc.h?
oh man, I just thought of a great title for a blog post about this 22:47
Alloc in Wonderland
geekosaur Wanderland...
("not all those who wander are lost --- unless they leak") 22:48
hoelzro hahah 22:49
timotimo oh lord %) 22:52
you got a nice idea for how to go on? 22:59
i mean, of course you could use my "nfatostatelist" branch of moarvm and make nqp happy about it? :) 23:00
hoelzro heh 23:01
I could probably figure it out
timotimo cool!
hoelzro we'll see if I get a round tuit tonight
timotimo the difficult part is when exactly to throw out @!states
and when to restore it
so that it doesn't end up in the serialized blob
hoelzro ah ha 23:02
timotimo you'll definitely be getting conflicts in moarvm, because it adds another op, but those are easy to fix, as most conflicting files are generated from the oplist anyway with tools/generate_ops
hoelzro mhmm 23:03
timotimo there's potentially already a branch in nqp, too, that'd add the op to the compiler and maybe even add it to NFA.nqp
hoelzro potentially? =S
timotimo no clue if i found it sufficiently progressed to have pushed it 23:04
i spent the majority of time on nfatostatelist, then ran against nqp and immediately stopped
i tend to do that kind of crap ;(
hoelzro if I get around to MVM work tonight, it will more like be your alloc log stuff, since that's easier to figure out =)
timotimo damn 23:05
23:06 vendethiel joined 23:16 pyrimidine joined
timotimo well, in any case, do make sure to report :) 23:20
hoelzro will do! 23:32
23:49 vendethiel joined