Skip to content

Instantly share code, notes, and snippets.

# terminal window 1
dogbert@dogbert-VirtualBox:~/repos/rakudo$ ASAN_OPTIONS="detect_leaks=0" MVM_SPESH_NODELAY=1 make t/09-moar/01-profilers.t
+++ Checking for moar NQP version
'/usr/bin/perl' -I'/home/dogbert/repos/rakudo/tools/lib' -I'/home/dogbert/repos/rakudo/3rdparty/nqp-configure/lib' t/harness5 --moar --fudge --keep-exit-code --verbosity=1 t/09-moar/01-profilers.t
ok 1 - can launch with profiling requested
ok 2 - profiler html output file exists on disk
ok 3 - profiler html output file isn't tiny
<hung !!>
@dogbert17
dogbert17 / start.raku
Created September 3, 2021 13:58
Cut down version of t/spec/S17-promise/start.t
use Test;
# https://github.com/Raku/old-issue-tracker/issues/4237
{
my @p = map { start { my @a = [ rand xx 1_000 ]; @a } }, ^10;
for @p.kv -> $i, $_ {
ok .result, "Got result from Promise populating/returning an array ($i)";
is .result.elems, 1000, "Correct number of results in array ($i)";
}
}
@dogbert17
dogbert17 / euler-10.raku
Created August 27, 2021 13:21
Old program which is quite slow on new-disp
# Find the sum of all the primes below two million.
# real 0m22.322s
# user 0m22.272s
# sys 0m0.044s
# This is Rakudo version 2016.08.1-112-gbdd4691 built on MoarVM version 2016.08-32-ge52414d
use v6.c;
my int $max = 2_000_000;
# find all primes up to $max using The Sieve of Erathostenes
my int @a = (0..$max);
Direct leak of 1248 byte(s) in 26 object(s) allocated from:
#0 0x7ffbd772dffe in __interceptor_realloc (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x10dffe)
#1 0x7ffbd671db49 in MVM_recalloc src/core/alloc.h:29
#2 0x7ffbd671db49 in translate_dispatch_program src/spesh/disp.c:783
#3 0x7ffbd671db49 in rewrite_monomorphic src/spesh/disp.c:817
#4 0x7ffbd671db49 in MVM_spesh_disp_optimize src/spesh/disp.c:906
#5 0x7ffbd66e18df in optimize_bb_switch src/spesh/optimize.c:2198
#6 0x7ffbd66e70f2 in optimize_bb src/spesh/optimize.c:2260
#7 0x7ffbd66e7446 in optimize_bb src/spesh/optimize.c:2264
#8 0x7ffbd66e7446 in MVM_spesh_optimize src/spesh/optimize.c:2643
dogbert@dogbert-VirtualBox:~/repos/rakudo$ gdb install/bin/moar core.moar.1000.f4e1afea0509471c9f4e9e8a321dd81a.1909739.1627896250000000000000
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
dogbert@dogbert-VirtualBox:~/repos/rakudo$ gdb install/bin/moar core.moar.1000.f4e1afea0509471c9f4e9e8a321dd81a.1815842.1627821486000000000000
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
dogbert@dogbert-VirtualBox:~/repos/rakudo$ MVM_SPESH_NODELAY=1 MVM_SPESH_BLOCKING=1 ./rakudo-valgrind-m -Ilib t/02-rakudo/07-implementation-detail-6.e.t
================================================================================================
This is Rakudo running in valgrind, a tool for debugging and profiling programs.
Running a program in valgrind usually takes *a lot* more time than running it directly,
so please be patient.
Valgrind options can be added with MVM_VALGRIND_OPTS environment variable.
This Rakudo version is 2021.06.108.g.123046.c.75 built on MoarVM version 2021.06.384.g.40.f.08.dcf.0,
running on linuxmint (20.Ulyana) / linux
------------------------------------------------------------------------------------------------
dogbert@dogbert-VirtualBox:~/repos/rakudo$ gdb install/bin/moar core.moar.1000.f4e1afea0509471c9f4e9e8a321dd81a.1641486.1627731959000000000000
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
dogbert@dogbert-VirtualBox:~/repos/rakudo$ gdb install/bin/moar core.moar.1000.f4e1afea0509471c9f4e9e8a321dd81a.1018600.1627308985000000000000
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
@dogbert17
dogbert17 / gist:3cc911045a857bf78093822612b50a24
Last active July 20, 2021 15:55
Buffer overflow new-disp
dogbert@dogbert-VirtualBox:~/repos/rakudo$ ASAN_OPTIONS="detect_leaks=0" ./rakudo-gdb-m -Ilib t/spec/S32-hash/map.t
================================================================================================
This is Rakudo running in the debugger, which often allows the user to generate useful back-
traces to debug or report issues in Rakudo, the MoarVM backend or the currently running code.
This Rakudo version is 2021.06.87.geceeb.5083 built on MoarVM version 2021.06.281.g.1.db.0.f.3.bb.9,
running on linuxmint (20.Ulyana) / linux
Type `bt full` to generate a backtrace if applicable, type `q` to quit or `help` for help.
------------------------------------------------------------------------------------------------